From 9efb7f5a16d487200b86c33bf216f6ee2ebb6f47 Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Fri, 29 Jan 2021 21:19:24 +0000
Subject: [PATCH] Update various dependencies

---
 go.mod                                        |   10 +-
 go.sum                                        |  102 +-
 .../RoaringBitmap/roaring/.travis.yml         |    7 +-
 .../RoaringBitmap/roaring/CONTRIBUTORS        |    4 +-
 .../RoaringBitmap/roaring/README.md           |  156 +-
 .../RoaringBitmap/roaring/arraycontainer.go   |   73 +-
 .../RoaringBitmap/roaring/bitmapcontainer.go  |   53 +
 .../RoaringBitmap/roaring/fastaggregation.go  |  117 +
 .../github.com/RoaringBitmap/roaring/go.mod   |    4 +-
 .../github.com/RoaringBitmap/roaring/go.sum   |   25 +
 .../RoaringBitmap/roaring/manyiterator.go     |   14 +
 .../RoaringBitmap/roaring/roaring.go          |   36 +-
 .../RoaringBitmap/roaring/roaringarray.go     |   15 +-
 .../RoaringBitmap/roaring/runcontainer.go     |   41 +
 .../roaring/serialization_generic.go          |    2 +-
 .../roaring/serialization_littleendian.go     |    2 +-
 .../RoaringBitmap/roaring/setutil.go          |   60 -
 .../RoaringBitmap/roaring/setutil_arm64.go    |    6 +
 .../RoaringBitmap/roaring/setutil_arm64.s     |  132 +
 .../RoaringBitmap/roaring/setutil_generic.go  |   63 +
 .../github.com/RoaringBitmap/roaring/util.go  |    5 +-
 .../glycerine/go-unsnap-stream/README.md      |    6 +-
 .../golang/protobuf/proto/buffer.go           |  324 +
 .../github.com/golang/protobuf/proto/clone.go |  253 -
 .../golang/protobuf/proto/decode.go           |  427 --
 .../golang/protobuf/proto/defaults.go         |   63 +
 .../golang/protobuf/proto/deprecated.go       |  126 +-
 .../golang/protobuf/proto/discard.go          |  356 +-
 .../golang/protobuf/proto/encode.go           |  203 -
 .../github.com/golang/protobuf/proto/equal.go |  301 -
 .../golang/protobuf/proto/extensions.go       |  771 +--
 .../github.com/golang/protobuf/proto/lib.go   |  965 ---
 .../golang/protobuf/proto/message_set.go      |  181 -
 .../golang/protobuf/proto/pointer_reflect.go  |  360 --
 .../golang/protobuf/proto/pointer_unsafe.go   |  313 -
 .../golang/protobuf/proto/properties.go       |  648 +-
 .../github.com/golang/protobuf/proto/proto.go |  167 +
 .../golang/protobuf/proto/registry.go         |  323 +
 .../golang/protobuf/proto/table_marshal.go    | 2776 --------
 .../golang/protobuf/proto/table_merge.go      |  654 --
 .../golang/protobuf/proto/table_unmarshal.go  | 2053 ------
 .../github.com/golang/protobuf/proto/text.go  |  843 ---
 .../golang/protobuf/proto/text_decode.go      |  801 +++
 .../golang/protobuf/proto/text_encode.go      |  560 ++
 .../golang/protobuf/proto/text_parser.go      |  880 ---
 .../github.com/golang/protobuf/proto/wire.go  |   78 +
 .../golang/protobuf/proto/wrappers.go         |   34 +
 vendor/github.com/philhofer/fwd/reader.go     |   92 +-
 vendor/github.com/philhofer/fwd/writer.go     |   24 +-
 vendor/github.com/tinylib/msgp/msgp/errors.go |    3 +
 vendor/github.com/tinylib/msgp/msgp/json.go   |   66 +-
 vendor/github.com/tinylib/msgp/msgp/read.go   |    5 +
 vendor/github.com/tinylib/msgp/msgp/unsafe.go |   17 +-
 vendor/github.com/tinylib/msgp/msgp/write.go  |   24 +-
 vendor/golang.org/x/net/html/const.go         |    3 +-
 vendor/golang.org/x/net/html/foreign.go       |  120 +-
 vendor/golang.org/x/net/html/node.go          |    5 +
 vendor/golang.org/x/net/html/parse.go         |  389 +-
 vendor/golang.org/x/net/html/render.go        |   34 +-
 vendor/golang.org/x/net/html/token.go         |    9 +-
 .../sys/internal/unsafeheader/unsafeheader.go |   30 +
 vendor/golang.org/x/sys/unix/README.md        |   15 +-
 vendor/golang.org/x/sys/unix/asm_aix_ppc64.s  |    2 +-
 vendor/golang.org/x/sys/unix/asm_darwin_386.s |    2 +-
 .../golang.org/x/sys/unix/asm_darwin_amd64.s  |    2 +-
 vendor/golang.org/x/sys/unix/asm_darwin_arm.s |    2 +-
 .../golang.org/x/sys/unix/asm_darwin_arm64.s  |    2 +-
 .../x/sys/unix/asm_dragonfly_amd64.s          |    2 +-
 .../golang.org/x/sys/unix/asm_freebsd_386.s   |    2 +-
 .../golang.org/x/sys/unix/asm_freebsd_amd64.s |    2 +-
 .../golang.org/x/sys/unix/asm_freebsd_arm.s   |    2 +-
 .../golang.org/x/sys/unix/asm_freebsd_arm64.s |    2 +-
 vendor/golang.org/x/sys/unix/asm_linux_386.s  |    2 +-
 .../golang.org/x/sys/unix/asm_linux_amd64.s   |    2 +-
 vendor/golang.org/x/sys/unix/asm_linux_arm.s  |    2 +-
 .../golang.org/x/sys/unix/asm_linux_arm64.s   |    2 +-
 .../golang.org/x/sys/unix/asm_linux_mips64x.s |    2 +-
 .../golang.org/x/sys/unix/asm_linux_mipsx.s   |    2 +-
 .../golang.org/x/sys/unix/asm_linux_ppc64x.s  |    2 +-
 .../golang.org/x/sys/unix/asm_linux_riscv64.s |    2 +-
 .../golang.org/x/sys/unix/asm_linux_s390x.s   |    2 +-
 vendor/golang.org/x/sys/unix/asm_netbsd_386.s |    2 +-
 .../golang.org/x/sys/unix/asm_netbsd_amd64.s  |    2 +-
 vendor/golang.org/x/sys/unix/asm_netbsd_arm.s |    2 +-
 .../golang.org/x/sys/unix/asm_netbsd_arm64.s  |    2 +-
 .../golang.org/x/sys/unix/asm_openbsd_386.s   |    2 +-
 .../golang.org/x/sys/unix/asm_openbsd_amd64.s |    2 +-
 .../golang.org/x/sys/unix/asm_openbsd_arm.s   |    2 +-
 .../golang.org/x/sys/unix/asm_openbsd_arm64.s |    2 +-
 .../x/sys/unix/asm_openbsd_mips64.s           |   29 +
 .../golang.org/x/sys/unix/asm_solaris_amd64.s |    2 +-
 vendor/golang.org/x/sys/unix/endian_big.go    |    2 +-
 vendor/golang.org/x/sys/unix/endian_little.go |    2 +-
 .../x/sys/unix/errors_freebsd_386.go          |    6 +
 .../x/sys/unix/errors_freebsd_amd64.go        |    6 +
 .../x/sys/unix/errors_freebsd_arm64.go        |   17 +
 vendor/golang.org/x/sys/unix/fcntl_darwin.go  |    6 +
 .../x/sys/unix/fcntl_linux_32bit.go           |    4 +-
 vendor/golang.org/x/sys/unix/gccgo.go         |    2 -
 vendor/golang.org/x/sys/unix/gccgo_c.c        |    6 +
 vendor/golang.org/x/sys/unix/ioctl.go         |    9 +
 vendor/golang.org/x/sys/unix/mkall.sh         |   28 +-
 vendor/golang.org/x/sys/unix/mkerrors.sh      |   44 +-
 vendor/golang.org/x/sys/unix/ptrace_darwin.go |   11 +
 vendor/golang.org/x/sys/unix/ptrace_ios.go    |   11 +
 .../x/sys/unix/sockcmsg_unix_other.go         |    6 +-
 vendor/golang.org/x/sys/unix/syscall.go       |   43 +-
 vendor/golang.org/x/sys/unix/syscall_aix.go   |   16 +
 vendor/golang.org/x/sys/unix/syscall_bsd.go   |   36 +-
 .../x/sys/unix/syscall_darwin.1_12.go         |    4 +-
 .../x/sys/unix/syscall_darwin.1_13.go         |   22 +-
 .../golang.org/x/sys/unix/syscall_darwin.go   |  149 +-
 .../x/sys/unix/syscall_darwin_386.go          |   22 +-
 .../x/sys/unix/syscall_darwin_amd64.1_11.go   |    9 -
 .../x/sys/unix/syscall_darwin_amd64.go        |   22 +-
 .../x/sys/unix/syscall_darwin_arm.go          |   21 +-
 .../x/sys/unix/syscall_darwin_arm64.1_11.go   |   11 -
 .../x/sys/unix/syscall_darwin_arm64.go        |   24 +-
 .../x/sys/unix/syscall_dragonfly.go           |   32 +-
 .../golang.org/x/sys/unix/syscall_freebsd.go  |   23 +-
 .../x/sys/unix/syscall_freebsd_386.go         |    4 +
 .../x/sys/unix/syscall_freebsd_amd64.go       |    4 +
 .../golang.org/x/sys/unix/syscall_illumos.go  |   77 +
 vendor/golang.org/x/sys/unix/syscall_linux.go |  343 +-
 .../x/sys/unix/syscall_linux_386.go           |    5 +-
 .../x/sys/unix/syscall_linux_amd64.go         |    2 +-
 .../x/sys/unix/syscall_linux_amd64_gc.go      |    2 +-
 .../x/sys/unix/syscall_linux_arm.go           |    7 +-
 .../x/sys/unix/syscall_linux_arm64.go         |   28 +-
 .../golang.org/x/sys/unix/syscall_linux_gc.go |    2 +-
 .../x/sys/unix/syscall_linux_gc_386.go        |    2 +-
 .../x/sys/unix/syscall_linux_gc_arm.go        |   13 +
 .../x/sys/unix/syscall_linux_mips64x.go       |    6 +-
 .../x/sys/unix/syscall_linux_mipsx.go         |    2 +-
 .../x/sys/unix/syscall_linux_ppc64x.go        |    2 +-
 .../x/sys/unix/syscall_linux_riscv64.go       |    8 +-
 .../x/sys/unix/syscall_linux_s390x.go         |    2 +-
 .../x/sys/unix/syscall_linux_sparc64.go       |    2 +-
 .../golang.org/x/sys/unix/syscall_netbsd.go   |   19 +-
 .../golang.org/x/sys/unix/syscall_openbsd.go  |   19 +-
 .../x/sys/unix/syscall_openbsd_mips64.go      |   35 +
 .../golang.org/x/sys/unix/syscall_solaris.go  |   20 +-
 vendor/golang.org/x/sys/unix/syscall_unix.go  |   19 +-
 .../golang.org/x/sys/unix/syscall_unix_gc.go  |    2 +-
 .../x/sys/unix/syscall_unix_gc_ppc64x.go      |    2 +-
 vendor/golang.org/x/sys/unix/timestruct.go    |   26 +-
 .../x/sys/unix/zerrors_darwin_386.go          |    4 +
 .../x/sys/unix/zerrors_darwin_amd64.go        |    4 +
 .../x/sys/unix/zerrors_darwin_arm.go          |    4 +
 .../x/sys/unix/zerrors_darwin_arm64.go        |    4 +
 .../x/sys/unix/zerrors_dragonfly_amd64.go     |  138 +-
 .../x/sys/unix/zerrors_freebsd_386.go         |  166 +-
 .../x/sys/unix/zerrors_freebsd_amd64.go       |  164 +-
 .../x/sys/unix/zerrors_freebsd_arm.go         |   22 +
 .../x/sys/unix/zerrors_freebsd_arm64.go       |  165 +-
 vendor/golang.org/x/sys/unix/zerrors_linux.go | 2786 ++++++++
 .../x/sys/unix/zerrors_linux_386.go           | 3354 ++--------
 .../x/sys/unix/zerrors_linux_amd64.go         | 3354 ++--------
 .../x/sys/unix/zerrors_linux_arm.go           | 3366 ++--------
 .../x/sys/unix/zerrors_linux_arm64.go         | 3343 ++--------
 .../x/sys/unix/zerrors_linux_mips.go          | 3358 ++--------
 .../x/sys/unix/zerrors_linux_mips64.go        | 3358 ++--------
 .../x/sys/unix/zerrors_linux_mips64le.go      | 3358 ++--------
 .../x/sys/unix/zerrors_linux_mipsle.go        | 3358 ++--------
 .../x/sys/unix/zerrors_linux_ppc64.go         | 3478 ++--------
 .../x/sys/unix/zerrors_linux_ppc64le.go       | 3478 ++--------
 .../x/sys/unix/zerrors_linux_riscv64.go       | 3328 ++--------
 .../x/sys/unix/zerrors_linux_s390x.go         | 3474 ++--------
 .../x/sys/unix/zerrors_linux_sparc64.go       | 3456 ++--------
 .../x/sys/unix/zerrors_netbsd_386.go          |    6 +
 .../x/sys/unix/zerrors_netbsd_amd64.go        |    6 +
 .../x/sys/unix/zerrors_netbsd_arm.go          |    6 +
 .../x/sys/unix/zerrors_netbsd_arm64.go        |    6 +
 .../x/sys/unix/zerrors_openbsd_386.go         |    7 +
 .../x/sys/unix/zerrors_openbsd_amd64.go       |    7 +
 .../x/sys/unix/zerrors_openbsd_arm.go         |    7 +
 .../x/sys/unix/zerrors_openbsd_arm64.go       |    7 +
 .../x/sys/unix/zerrors_openbsd_mips64.go      | 1862 ++++++
 .../x/sys/unix/zerrors_solaris_amd64.go       |   22 +-
 .../x/sys/unix/zsyscall_aix_ppc64_gc.go       |    2 +-
 .../x/sys/unix/zsyscall_darwin_386.1_11.go    | 1811 ------
 .../x/sys/unix/zsyscall_darwin_386.1_13.go    |    2 -
 .../x/sys/unix/zsyscall_darwin_386.go         |  305 +-
 .../x/sys/unix/zsyscall_darwin_386.s          |   18 +-
 .../x/sys/unix/zsyscall_darwin_amd64.1_13.go  |    2 -
 .../x/sys/unix/zsyscall_darwin_amd64.go       |  305 +-
 .../x/sys/unix/zsyscall_darwin_amd64.s        |   18 +-
 .../x/sys/unix/zsyscall_darwin_arm.1_11.go    | 1784 ------
 .../x/sys/unix/zsyscall_darwin_arm.1_13.go    |    2 -
 .../x/sys/unix/zsyscall_darwin_arm.go         |  276 +-
 .../x/sys/unix/zsyscall_darwin_arm.s          |   14 +-
 .../x/sys/unix/zsyscall_darwin_arm64.1_13.go  |    2 -
 .../x/sys/unix/zsyscall_darwin_arm64.go       |  290 +-
 .../x/sys/unix/zsyscall_darwin_arm64.s        |   16 +-
 .../x/sys/unix/zsyscall_dragonfly_amd64.go    |   42 +-
 .../x/sys/unix/zsyscall_freebsd_386.go        |   52 +-
 .../x/sys/unix/zsyscall_freebsd_amd64.go      |   32 +-
 .../x/sys/unix/zsyscall_freebsd_arm64.go      |   34 +-
 .../x/sys/unix/zsyscall_illumos_amd64.go      |  101 +
 ...darwin_amd64.1_11.go => zsyscall_linux.go} | 1382 ++--
 .../x/sys/unix/zsyscall_linux_386.go          | 1831 +-----
 .../x/sys/unix/zsyscall_linux_amd64.go        | 1831 +-----
 .../x/sys/unix/zsyscall_linux_arm.go          | 1831 +-----
 .../x/sys/unix/zsyscall_linux_arm64.go        | 1833 +-----
 .../x/sys/unix/zsyscall_linux_mips.go         | 1831 +-----
 .../x/sys/unix/zsyscall_linux_mips64.go       | 1831 +-----
 .../x/sys/unix/zsyscall_linux_mips64le.go     | 1831 +-----
 .../x/sys/unix/zsyscall_linux_mipsle.go       | 1831 +-----
 .../x/sys/unix/zsyscall_linux_ppc64.go        | 1831 +-----
 .../x/sys/unix/zsyscall_linux_ppc64le.go      | 1831 +-----
 .../x/sys/unix/zsyscall_linux_riscv64.go      | 1829 +-----
 .../x/sys/unix/zsyscall_linux_s390x.go        | 1831 +-----
 .../x/sys/unix/zsyscall_linux_sparc64.go      | 1831 +-----
 ...m64.1_11.go => zsyscall_openbsd_mips64.go} |  514 +-
 .../x/sys/unix/zsyscall_solaris_amd64.go      |   13 +
 .../x/sys/unix/zsysctl_openbsd_386.go         |    3 +-
 .../x/sys/unix/zsysctl_openbsd_amd64.go       |    1 +
 .../x/sys/unix/zsysctl_openbsd_arm.go         |    1 +
 .../x/sys/unix/zsysctl_openbsd_mips64.go      |  279 +
 .../x/sys/unix/zsysnum_darwin_386.go          |    1 +
 .../x/sys/unix/zsysnum_darwin_amd64.go        |    1 +
 .../x/sys/unix/zsysnum_darwin_arm.go          |    1 +
 .../x/sys/unix/zsysnum_darwin_arm64.go        |    1 +
 .../x/sys/unix/zsysnum_dragonfly_amd64.go     |  255 +-
 .../x/sys/unix/zsysnum_linux_386.go           |    5 +
 .../x/sys/unix/zsysnum_linux_amd64.go         |    5 +
 .../x/sys/unix/zsysnum_linux_arm.go           |    5 +
 .../x/sys/unix/zsysnum_linux_arm64.go         |    5 +
 .../x/sys/unix/zsysnum_linux_mips.go          |    5 +
 .../x/sys/unix/zsysnum_linux_mips64.go        |    5 +
 .../x/sys/unix/zsysnum_linux_mips64le.go      |    5 +
 .../x/sys/unix/zsysnum_linux_mipsle.go        |    5 +
 .../x/sys/unix/zsysnum_linux_ppc64.go         |    5 +
 .../x/sys/unix/zsysnum_linux_ppc64le.go       |    5 +
 .../x/sys/unix/zsysnum_linux_riscv64.go       |    5 +
 .../x/sys/unix/zsysnum_linux_s390x.go         |    5 +
 .../x/sys/unix/zsysnum_linux_sparc64.go       |    5 +
 .../x/sys/unix/zsysnum_openbsd_mips64.go      |  220 +
 .../golang.org/x/sys/unix/ztypes_aix_ppc.go   |    1 +
 .../golang.org/x/sys/unix/ztypes_aix_ppc64.go |    1 +
 .../x/sys/unix/ztypes_darwin_386.go           |   33 +-
 .../x/sys/unix/ztypes_darwin_amd64.go         |   44 +-
 .../x/sys/unix/ztypes_darwin_arm.go           |   40 +-
 .../x/sys/unix/ztypes_darwin_arm64.go         |   44 +-
 .../x/sys/unix/ztypes_dragonfly_amd64.go      |   47 +-
 .../x/sys/unix/ztypes_freebsd_386.go          |   40 +-
 .../x/sys/unix/ztypes_freebsd_amd64.go        |   25 +-
 .../x/sys/unix/ztypes_freebsd_arm.go          |   13 +-
 .../x/sys/unix/ztypes_freebsd_arm64.go        |   55 +-
 vendor/golang.org/x/sys/unix/ztypes_linux.go  | 3682 +++++++++++
 .../golang.org/x/sys/unix/ztypes_linux_386.go | 2245 +------
 .../x/sys/unix/ztypes_linux_amd64.go          | 2248 +------
 .../golang.org/x/sys/unix/ztypes_linux_arm.go | 2248 +------
 .../x/sys/unix/ztypes_linux_arm64.go          | 2248 +------
 .../x/sys/unix/ztypes_linux_mips.go           | 2248 +------
 .../x/sys/unix/ztypes_linux_mips64.go         | 2248 +------
 .../x/sys/unix/ztypes_linux_mips64le.go       | 2248 +------
 .../x/sys/unix/ztypes_linux_mipsle.go         | 2248 +------
 .../x/sys/unix/ztypes_linux_ppc64.go          | 2248 +------
 .../x/sys/unix/ztypes_linux_ppc64le.go        | 2248 +------
 .../x/sys/unix/ztypes_linux_riscv64.go        | 2248 +------
 .../x/sys/unix/ztypes_linux_s390x.go          | 2248 +------
 .../x/sys/unix/ztypes_linux_sparc64.go        | 2248 +------
 .../x/sys/unix/ztypes_netbsd_386.go           |    1 +
 .../x/sys/unix/ztypes_netbsd_amd64.go         |    1 +
 .../x/sys/unix/ztypes_netbsd_arm.go           |    1 +
 .../x/sys/unix/ztypes_netbsd_arm64.go         |    1 +
 .../x/sys/unix/ztypes_openbsd_386.go          |    1 +
 .../x/sys/unix/ztypes_openbsd_amd64.go        |    1 +
 .../x/sys/unix/ztypes_openbsd_arm.go          |    1 +
 .../x/sys/unix/ztypes_openbsd_arm64.go        |    1 +
 .../x/sys/unix/ztypes_openbsd_mips64.go       |  566 ++
 .../x/sys/unix/ztypes_solaris_amd64.go        |   32 +-
 .../golang.org/x/sys/windows/dll_windows.go   |   32 +-
 .../golang.org/x/sys/windows/env_windows.go   |   11 +-
 .../x/sys/windows/memory_windows.go           |   25 +-
 .../x/sys/windows/security_windows.go         |   34 +-
 vendor/golang.org/x/sys/windows/service.go    |    8 +
 .../x/sys/windows/setupapierrors_windows.go   |  100 +
 vendor/golang.org/x/sys/windows/syscall.go    |   46 +-
 .../x/sys/windows/syscall_windows.go          |  109 +-
 .../golang.org/x/sys/windows/types_windows.go |  371 +-
 .../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/zsyscall_windows.go         | 4583 ++++++--------
 .../x/text/encoding/unicode/unicode.go        |   94 +-
 .../golang.org/x/text/transform/transform.go  |    6 +-
 vendor/google.golang.org/protobuf/AUTHORS     |    3 +
 .../google.golang.org/protobuf/CONTRIBUTORS   |    3 +
 vendor/google.golang.org/protobuf/LICENSE     |   27 +
 vendor/google.golang.org/protobuf/PATENTS     |   22 +
 .../protobuf/encoding/prototext/decode.go     |  791 +++
 .../protobuf/encoding/prototext/doc.go}       |    8 +-
 .../protobuf/encoding/prototext/encode.go     |  433 ++
 .../protobuf/encoding/protowire/wire.go       |  538 ++
 .../protobuf/internal/descfmt/stringer.go     |  316 +
 .../protobuf/internal/descopts/options.go     |   29 +
 .../protobuf/internal/detrand/rand.go         |   61 +
 .../internal/encoding/defval/default.go       |  213 +
 .../encoding/messageset/messageset.go         |  258 +
 .../protobuf/internal/encoding/tag/tag.go     |  207 +
 .../protobuf/internal/encoding/text/decode.go |  665 ++
 .../internal/encoding/text/decode_number.go   |  190 +
 .../internal/encoding/text/decode_string.go   |  161 +
 .../internal/encoding/text/decode_token.go    |  373 ++
 .../protobuf/internal/encoding/text/doc.go    |   29 +
 .../protobuf/internal/encoding/text/encode.go |  267 +
 .../protobuf/internal/errors/errors.go        |   89 +
 .../protobuf/internal/errors/is_go112.go      |   39 +
 .../protobuf/internal/errors/is_go113.go      |   12 +
 .../protobuf/internal/fieldsort/fieldsort.go  |   40 +
 .../protobuf/internal/filedesc/build.go       |  155 +
 .../protobuf/internal/filedesc/desc.go        |  614 ++
 .../protobuf/internal/filedesc/desc_init.go   |  471 ++
 .../protobuf/internal/filedesc/desc_lazy.go   |  704 ++
 .../protobuf/internal/filedesc/desc_list.go   |  282 +
 .../internal/filedesc/desc_list_gen.go        |  345 +
 .../protobuf/internal/filedesc/placeholder.go |  107 +
 .../protobuf/internal/filetype/build.go       |  297 +
 .../protobuf/internal/flags/flags.go          |   24 +
 .../internal/flags/proto_legacy_disable.go    |    9 +
 .../internal/flags/proto_legacy_enable.go     |    9 +
 .../protobuf/internal/genid/any_gen.go        |   34 +
 .../protobuf/internal/genid/api_gen.go        |  106 +
 .../protobuf/internal/genid/descriptor_gen.go |  829 +++
 .../protobuf/internal/genid/doc.go            |   11 +
 .../protobuf/internal/genid/duration_gen.go   |   34 +
 .../protobuf/internal/genid/empty_gen.go      |   19 +
 .../protobuf/internal/genid/field_mask_gen.go |   31 +
 .../protobuf/internal/genid/goname.go         |   25 +
 .../protobuf/internal/genid/map_entry.go      |   16 +
 .../internal/genid/source_context_gen.go      |   31 +
 .../protobuf/internal/genid/struct_gen.go     |  116 +
 .../protobuf/internal/genid/timestamp_gen.go  |   34 +
 .../protobuf/internal/genid/type_gen.go       |  184 +
 .../protobuf/internal/genid/wrappers.go       |   13 +
 .../protobuf/internal/genid/wrappers_gen.go   |  175 +
 .../protobuf/internal/impl/api_export.go      |  177 +
 .../protobuf/internal/impl/checkinit.go       |  141 +
 .../protobuf/internal/impl/codec_extension.go |  223 +
 .../protobuf/internal/impl/codec_field.go     |  828 +++
 .../protobuf/internal/impl/codec_gen.go       | 5637 +++++++++++++++++
 .../protobuf/internal/impl/codec_map.go       |  389 ++
 .../protobuf/internal/impl/codec_map_go111.go |   37 +
 .../internal/impl/codec_map_go112.go}         |   10 +-
 .../protobuf/internal/impl/codec_message.go   |  159 +
 .../internal/impl/codec_messageset.go         |  120 +
 .../protobuf/internal/impl/codec_reflect.go   |  209 +
 .../protobuf/internal/impl/codec_tables.go    |  557 ++
 .../protobuf/internal/impl/codec_unsafe.go    |   17 +
 .../protobuf/internal/impl/convert.go         |  467 ++
 .../protobuf/internal/impl/convert_list.go    |  141 +
 .../protobuf/internal/impl/convert_map.go     |  121 +
 .../protobuf/internal/impl/decode.go          |  274 +
 .../protobuf/internal/impl/encode.go          |  199 +
 .../protobuf/internal/impl/enum.go            |   21 +
 .../protobuf/internal/impl/extension.go       |  156 +
 .../protobuf/internal/impl/legacy_enum.go     |  219 +
 .../protobuf/internal/impl/legacy_export.go   |   92 +
 .../internal/impl/legacy_extension.go         |  175 +
 .../protobuf/internal/impl/legacy_file.go     |   81 +
 .../protobuf/internal/impl/legacy_message.go  |  502 ++
 .../protobuf/internal/impl/merge.go           |  176 +
 .../protobuf/internal/impl/merge_gen.go       |  209 +
 .../protobuf/internal/impl/message.go         |  215 +
 .../protobuf/internal/impl/message_reflect.go |  364 ++
 .../internal/impl/message_reflect_field.go    |  466 ++
 .../internal/impl/message_reflect_gen.go      |  249 +
 .../protobuf/internal/impl/pointer_reflect.go |  177 +
 .../protobuf/internal/impl/pointer_unsafe.go  |  173 +
 .../protobuf/internal/impl/validate.go        |  576 ++
 .../protobuf/internal/impl/weak.go            |   74 +
 .../protobuf/internal/mapsort/mapsort.go      |   43 +
 .../protobuf/internal/pragma/pragma.go        |   29 +
 .../protobuf/internal/set/ints.go             |   58 +
 .../protobuf/internal/strs/strings.go         |  196 +
 .../protobuf/internal/strs/strings_pure.go    |   27 +
 .../protobuf/internal/strs/strings_unsafe.go  |   94 +
 .../protobuf/internal/version/version.go      |   79 +
 .../protobuf/proto/checkinit.go               |   71 +
 .../protobuf/proto/decode.go                  |  274 +
 .../protobuf/proto/decode_gen.go              |  603 ++
 .../google.golang.org/protobuf/proto/doc.go   |   94 +
 .../protobuf/proto/encode.go                  |  346 +
 .../protobuf/proto/encode_gen.go              |   97 +
 .../google.golang.org/protobuf/proto/equal.go |  154 +
 .../protobuf/proto/extension.go               |   92 +
 .../google.golang.org/protobuf/proto/merge.go |  139 +
 .../protobuf/proto/messageset.go              |   88 +
 .../google.golang.org/protobuf/proto/proto.go |   34 +
 .../protobuf/proto/proto_methods.go           |   19 +
 .../protobuf/proto/proto_reflect.go           |   19 +
 .../google.golang.org/protobuf/proto/reset.go |   43 +
 .../google.golang.org/protobuf/proto/size.go  |   97 +
 .../protobuf/proto/size_gen.go                |   55 +
 .../protobuf/proto/wrappers.go                |   29 +
 .../protobuf/reflect/protoreflect/methods.go  |   77 +
 .../protobuf/reflect/protoreflect/proto.go    |  504 ++
 .../protobuf/reflect/protoreflect/source.go   |   52 +
 .../protobuf/reflect/protoreflect/type.go     |  631 ++
 .../protobuf/reflect/protoreflect/value.go    |  285 +
 .../reflect/protoreflect/value_pure.go        |   59 +
 .../reflect/protoreflect/value_union.go       |  411 ++
 .../reflect/protoreflect/value_unsafe.go      |   98 +
 .../reflect/protoregistry/registry.go         |  800 +++
 .../protobuf/runtime/protoiface/legacy.go     |   15 +
 .../protobuf/runtime/protoiface/methods.go    |  167 +
 .../protobuf/runtime/protoimpl/impl.go        |   44 +
 .../protobuf/runtime/protoimpl/version.go     |   56 +
 vendor/modules.txt                            |   50 +-
 411 files changed, 56025 insertions(+), 111058 deletions(-)
 create mode 100644 vendor/github.com/RoaringBitmap/roaring/setutil_arm64.go
 create mode 100644 vendor/github.com/RoaringBitmap/roaring/setutil_arm64.s
 create mode 100644 vendor/github.com/RoaringBitmap/roaring/setutil_generic.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/buffer.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/clone.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/decode.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/defaults.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/encode.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/equal.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/lib.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/message_set.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/pointer_reflect.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/pointer_unsafe.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/proto.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/registry.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/table_marshal.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/table_merge.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/table_unmarshal.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/text.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/text_decode.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/text_encode.go
 delete mode 100644 vendor/github.com/golang/protobuf/proto/text_parser.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/wire.go
 create mode 100644 vendor/github.com/golang/protobuf/proto/wrappers.go
 create mode 100644 vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go
 create mode 100644 vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
 create mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_arm64.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/syscall_darwin_amd64.1_11.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_illumos.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_openbsd_mips64.go
 create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux.go
 create mode 100644 vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.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_arm.1_11.go
 create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
 rename vendor/golang.org/x/sys/unix/{zsyscall_darwin_amd64.1_11.go => zsyscall_linux.go} (54%)
 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/zsysctl_openbsd_mips64.go
 create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go
 create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux.go
 create mode 100644 vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go
 create mode 100644 vendor/golang.org/x/sys/windows/setupapierrors_windows.go
 create mode 100644 vendor/google.golang.org/protobuf/AUTHORS
 create mode 100644 vendor/google.golang.org/protobuf/CONTRIBUTORS
 create mode 100644 vendor/google.golang.org/protobuf/LICENSE
 create mode 100644 vendor/google.golang.org/protobuf/PATENTS
 create mode 100644 vendor/google.golang.org/protobuf/encoding/prototext/decode.go
 rename vendor/{golang.org/x/sys/unix/syscall_darwin_386.1_11.go => google.golang.org/protobuf/encoding/prototext/doc.go} (52%)
 create mode 100644 vendor/google.golang.org/protobuf/encoding/prototext/encode.go
 create mode 100644 vendor/google.golang.org/protobuf/encoding/protowire/wire.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/descfmt/stringer.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/descopts/options.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/detrand/rand.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/defval/default.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/decode.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/doc.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/encoding/text/encode.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/errors/errors.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/errors/is_go112.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/errors/is_go113.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/fieldsort/fieldsort.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/build.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/desc.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/filetype/build.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/flags/flags.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/any_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/api_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/doc.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/duration_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/empty_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/goname.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/map_entry.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/struct_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/type_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/wrappers.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/api_export.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/checkinit.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_extension.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_field.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_map.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
 rename vendor/{golang.org/x/sys/unix/syscall_darwin_arm.1_11.go => google.golang.org/protobuf/internal/impl/codec_map_go112.go} (54%)
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_message.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_tables.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/convert.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/convert_list.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/convert_map.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/decode.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/encode.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/enum.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/extension.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/legacy_export.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/legacy_file.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/merge.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/merge_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/message.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/message_reflect.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/validate.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/impl/weak.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/mapsort/mapsort.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/pragma/pragma.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/set/ints.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/strs/strings.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/strs/strings_pure.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go
 create mode 100644 vendor/google.golang.org/protobuf/internal/version/version.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/checkinit.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/decode.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/decode_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/doc.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/encode.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/encode_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/equal.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/extension.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/merge.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/messageset.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/proto.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/proto_methods.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/proto_reflect.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/reset.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/size.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/size_gen.go
 create mode 100644 vendor/google.golang.org/protobuf/proto/wrappers.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/source.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/type.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/value.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go
 create mode 100644 vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go
 create mode 100644 vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go
 create mode 100644 vendor/google.golang.org/protobuf/runtime/protoiface/methods.go
 create mode 100644 vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go
 create mode 100644 vendor/google.golang.org/protobuf/runtime/protoimpl/version.go

diff --git a/go.mod b/go.mod
index 167461d..5b0726e 100644
--- a/go.mod
+++ b/go.mod
@@ -3,16 +3,18 @@ module git.autistici.org/ale/liber
 go 1.14
 
 require (
+	github.com/RoaringBitmap/roaring v0.5.5 // indirect
 	github.com/blevesearch/bleve v1.0.14
-	github.com/glycerine/go-unsnap-stream v0.0.0-20190730064659-98d31706395a // indirect
+	github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a // indirect
+	github.com/golang/protobuf v1.4.3 // indirect
 	github.com/golang/snappy v0.0.2 // indirect
 	github.com/google/subcommands v1.2.0
 	github.com/gorilla/mux v1.6.3-0.20181030152528-3d80bc801bb0
 	github.com/meskio/epubgo v0.0.0-20160213181628-90dd5d78197f
 	github.com/nfnt/resize v0.0.0-20160724205520-891127d8d1b5
 	github.com/syndtr/goleveldb v1.0.1-0.20190625010220-02440ea7a285
-	github.com/tinylib/msgp v1.1.1-0.20190628005314-efe20429c9b7 // indirect
+	github.com/tinylib/msgp v1.1.5 // indirect
 	github.com/willf/bitset v1.1.11 // indirect
-	golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3 // indirect
-	golang.org/x/text v0.3.2 // indirect
+	golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c // indirect
+	google.golang.org/protobuf v1.25.0 // indirect
 )
diff --git a/go.sum b/go.sum
index c4b2d8a..2b642a1 100644
--- a/go.sum
+++ b/go.sum
@@ -1,6 +1,9 @@
+cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
 github.com/RoaringBitmap/roaring v0.4.23 h1:gpyfd12QohbqhFO4NVDUdoPOCXsyahYRQhINmlHxKeo=
 github.com/RoaringBitmap/roaring v0.4.23/go.mod h1:D0gp8kJQgE1A4LQ5wFLggQEyvDi06Mq5mKs52e1TwOo=
+github.com/RoaringBitmap/roaring v0.5.5 h1:naNqvO1mNnghk2UvcsqnzHDBn9DRbCIRy94GmDTRVTQ=
+github.com/RoaringBitmap/roaring v0.5.5/go.mod h1:puNo5VdzwbaIQxSiDIwfXl4Hnc+fbovcX4IW/dSTtUk=
 github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
 github.com/blevesearch/bleve v1.0.14 h1:Q8r+fHTt35jtGXJUM0ULwM3Tzg+MRfyai4ZkWDy2xO4=
 github.com/blevesearch/bleve v1.0.14/go.mod h1:e/LJTr+E7EaoVdkQZTfoz7dt4KoDNvDbLb8MSKuNTLQ=
@@ -25,6 +28,8 @@ github.com/blevesearch/zap/v14 v14.0.5 h1:NdcT+81Nvmp2zL+NhwSvGSLh7xNgGL8QRVZ67n
 github.com/blevesearch/zap/v14 v14.0.5/go.mod h1:bWe8S7tRrSBTIaZ6cLRbgNH4TUDaC9LZSpRGs85AsGY=
 github.com/blevesearch/zap/v15 v15.0.3 h1:Ylj8Oe+mo0P25tr9iLPp33lN6d4qcztGjaIsP51UxaY=
 github.com/blevesearch/zap/v15 v15.0.3/go.mod h1:iuwQrImsh1WjWJ0Ue2kBqY83a0rFtJTqfa9fp1rbVVU=
+github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
+github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
 github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
 github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk=
 github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
@@ -43,6 +48,8 @@ github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8
 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
+github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
 github.com/facebookgo/ensure v0.0.0-20200202191622-63f1cf65ac4c h1:8ISkoahWXwZR41ois5lSJBSVw4D0OV19Ht/JSTzvSv0=
 github.com/facebookgo/ensure v0.0.0-20200202191622-63f1cf65ac4c/go.mod h1:Yg+htXGokKKdzcwhuNDwVvN+uBxDGXJ7G/VN1d8fa64=
 github.com/facebookgo/stack v0.0.0-20160209184415-751773369052 h1:JWuenKqqX8nojtoVVWjGfOF9635RETekkoH6Cc9SX0A=
@@ -52,18 +59,34 @@ github.com/facebookgo/subset v0.0.0-20200203212716-c811ad88dec4/go.mod h1:5tD+ne
 github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
 github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
 github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
-github.com/glycerine/go-unsnap-stream v0.0.0-20190730064659-98d31706395a h1:1sJQJxzmuFKpHKuY3oVglGCgzd4BwIN5nT+1JLy+pCk=
-github.com/glycerine/go-unsnap-stream v0.0.0-20190730064659-98d31706395a/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
+github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a h1:FQqoVvjbiUioBBFUL5up+h+GdCa/AnJsL/1bIs/veSI=
+github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
 github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31 h1:gclg6gY70GLy3PbkQ1AERPfmLMMagS60DKF78eWwLn8=
 github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=
+github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
+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.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=
+github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
+github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
+github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
+github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=
+github.com/golang/protobuf v1.4.3 h1:JjCZWpVbqXDqFVmTfYWEVTMIYrL/NPdPSCHPJ0T/raM=
+github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
 github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4=
 github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/golang/snappy v0.0.2 h1:aeE13tS0IiQgFjYdoL8qN3K1N2bXXtI6Vi51/y7BpMw=
 github.com/golang/snappy v0.0.2/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
+github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
+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/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/google/go-cmp v0.5.0 h1:/QaMHBdZ26BB3SSst0Iwl10Epc+xhTquomWX0oZEB6w=
+github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
 github.com/google/subcommands v1.2.0 h1:vWQspBTo2nEqTUFita5/KeEWlUL8kQObDFbub/EN9oE=
 github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
 github.com/gopherjs/gopherjs v0.0.0-20190910122728-9d188e94fb99 h1:twflg0XRTjwKpxb/jFExr4HGq6on2dEOmnL6FV+fgPw=
@@ -98,8 +121,11 @@ github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1Cpa
 github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
 github.com/philhofer/fwd v1.0.0 h1:UbZqGr5Y38ApvM/V/jEljVxwocdweyH+vmYvRPBnbqQ=
 github.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU=
+github.com/philhofer/fwd v1.1.1 h1:GdGcTjf5RNAxwS4QLsiMzJYj5KEvPJD3Abr261yRQXQ=
+github.com/philhofer/fwd v1.1.1/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU=
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
 github.com/rcrowley/go-metrics v0.0.0-20190826022208-cac0b30c2563/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
 github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 h1:OdAsTTz6OkFY5QxjkYwrChwuRruF69c169dPK26NUlk=
 github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
@@ -124,32 +150,94 @@ github.com/tebeka/snowball v0.4.2/go.mod h1:4IfL14h1lvwZcp1sfXuuc7/7yCsvVffTWxWx
 github.com/tecbot/gorocksdb v0.0.0-20191217155057-f0fad39f321c h1:g+WoO5jjkqGAzHWCjJB1zZfXPIAaDpzXIEJ0eS6B5Ok=
 github.com/tecbot/gorocksdb v0.0.0-20191217155057-f0fad39f321c/go.mod h1:ahpPrc7HpcfEWDQRZEmnXMzHY03mLDYMCxeDzy46i+8=
 github.com/tinylib/msgp v1.1.0/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=
-github.com/tinylib/msgp v1.1.1-0.20190628005314-efe20429c9b7 h1:qyQwImUXz42k4TVPV3Dosv4AjNTgScAYAwJrtEkbpvg=
-github.com/tinylib/msgp v1.1.1-0.20190628005314-efe20429c9b7/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=
+github.com/tinylib/msgp v1.1.5 h1:2gXmtWueD2HefZHQe1QOy9HVzmFrLOVvsXwXBQ0ayy0=
+github.com/tinylib/msgp v1.1.5/go.mod h1:eQsjooMTnV42mHu917E26IogZ2930nFyBQdofk10Udg=
+github.com/ttacon/chalk v0.0.0-20160626202418-22c06c80ed31/go.mod h1:onvgF043R+lC5RZ8IT9rBXDaEDnpnw/Cl+HFiw+v/7Q=
 github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0=
 github.com/willf/bitset v1.1.10/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=
 github.com/willf/bitset v1.1.11 h1:N7Z7E9UvjW+sGsEl7k/SJrvY2reP1A07MrGuCjIOjRE=
 github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI=
 github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=
+github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 go.etcd.io/bbolt v1.3.5 h1:XAzx9gjCb0Rxj7EoqcClPD1d5ZBxZJk0jbuoPHenBt0=
 go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ=
 golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
+golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
+golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
+golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
+golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
+golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
+golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
+golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
+golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
+golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
+golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
+golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
+golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
+golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3 h1:0GoQqolDA55aaLxZyTzK/Y2ePZzZTUrRacwib7cNsYQ=
 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
+golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
+golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
+golang.org/x/net v0.0.0-20201021035429-f5854403a974 h1:IX6qOQeG5uLjB/hjjwjedwfjND0hgjPMMyO1RoIXQNI=
+golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
+golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20181221143128-b4a75ba826a6/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5 h1:LfCXLvNmTYH9kEmVgqbnsWfruoXZIrh4YBgqVHtDvw0=
 golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c h1:VwygUrnw9jn88c4u8GD3rZQbqrP/tgas88tPUbBxQrk=
+golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 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.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
+golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
+golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
+golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
+golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
+golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
+golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
+golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
+golang.org/x/tools v0.0.0-20200928182047-19e03678916f/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU=
+golang.org/x/tools v0.0.0-20201022035929-9cf592e881e9/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
+golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
+golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
+google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
+google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
+google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
+google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
+google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
+google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
+google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
+google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
+google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
+google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
+google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
+google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
+google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
+google.golang.org/protobuf v1.23.0 h1:4MY060fB1DLGMB/7MBTLnwQUY6+F09GEiz6SsrNqyzM=
+google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
+google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
+google.golang.org/protobuf v1.25.0 h1:Ejskq+SyPohKW+1uil0JJMtmHCgJPJ/qWTxr8qp+R4c=
+google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
@@ -160,3 +248,5 @@ gopkg.in/yaml.v2 v2.2.1 h1:mUhvW9EsL+naU5Q3cakzfE91YhliOondGd6ZrsDBHQE=
 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=
+honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
+honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
diff --git a/vendor/github.com/RoaringBitmap/roaring/.travis.yml b/vendor/github.com/RoaringBitmap/roaring/.travis.yml
index c178043..12266d7 100644
--- a/vendor/github.com/RoaringBitmap/roaring/.travis.yml
+++ b/vendor/github.com/RoaringBitmap/roaring/.travis.yml
@@ -8,13 +8,8 @@ install:
 notifications:
   email: false
 go:
-- "1.7.x"
-- "1.8.x"
-- "1.9.x"
-- "1.10.x"
-- "1.11.x"
-- "1.12.x"
 - "1.13.x"
+- "1.14.x"
 - tip
 
 # whitelist
diff --git a/vendor/github.com/RoaringBitmap/roaring/CONTRIBUTORS b/vendor/github.com/RoaringBitmap/roaring/CONTRIBUTORS
index b1e3a37..1a8da9c 100644
--- a/vendor/github.com/RoaringBitmap/roaring/CONTRIBUTORS
+++ b/vendor/github.com/RoaringBitmap/roaring/CONTRIBUTORS
@@ -13,4 +13,6 @@ Forud Ghafouri (@fzerorubigd),
 Joe Nall (@joenall),
 (@fredim),
 Edd Robinson (@e-dard),
-Alexander Petrov (@alldroll)
+Alexander Petrov (@alldroll),
+Guy Molinari (@guymolinari),
+Ling Jin (@JinLingChristopher)
diff --git a/vendor/github.com/RoaringBitmap/roaring/README.md b/vendor/github.com/RoaringBitmap/roaring/README.md
index 94fdf05..00d2351 100644
--- a/vendor/github.com/RoaringBitmap/roaring/README.md
+++ b/vendor/github.com/RoaringBitmap/roaring/README.md
@@ -1,5 +1,8 @@
-roaring [![Build Status](https://travis-ci.org/RoaringBitmap/roaring.png)](https://travis-ci.org/RoaringBitmap/roaring) [![Coverage Status](https://coveralls.io/repos/github/RoaringBitmap/roaring/badge.svg?branch=master)](https://coveralls.io/github/RoaringBitmap/roaring?branch=master) [![GoDoc](https://godoc.org/github.com/RoaringBitmap/roaring?status.svg)](https://godoc.org/github.com/RoaringBitmap/roaring) [![Go Report Card](https://goreportcard.com/badge/RoaringBitmap/roaring)](https://goreportcard.com/report/github.com/RoaringBitmap/roaring)
+roaring [![Build Status](https://travis-ci.org/RoaringBitmap/roaring.png)](https://travis-ci.org/RoaringBitmap/roaring) [![GoDoc](https://godoc.org/github.com/RoaringBitmap/roaring?status.svg)](https://godoc.org/github.com/RoaringBitmap/roaring) [![GoDoc](https://godoc.org/github.com/RoaringBitmap/roaring/roaring64?status.svg)](https://godoc.org/github.com/RoaringBitmap/roaring/roaring64) [![Go Report Card](https://goreportcard.com/badge/RoaringBitmap/roaring)](https://goreportcard.com/report/github.com/RoaringBitmap/roaring)
 [![Build Status](https://cloud.drone.io/api/badges/RoaringBitmap/roaring/status.svg)](https://cloud.drone.io/RoaringBitmap/roaring)
+![Go-CI](https://github.com/RoaringBitmap/roaring/workflows/Go-CI/badge.svg)
+![Go-ARM-CI](https://github.com/RoaringBitmap/roaring/workflows/Go-ARM-CI/badge.svg)
+![Go-Windows-CI](https://github.com/RoaringBitmap/roaring/workflows/Go-Windows-CI/badge.svg)
 =============
 
 This is a go version of the Roaring bitmap data structure. 
@@ -7,7 +10,7 @@ This is a go version of the Roaring bitmap data structure.
 
 
 Roaring bitmaps are used by several major systems such as [Apache Lucene][lucene] and derivative systems such as [Solr][solr] and
-[Elasticsearch][elasticsearch], [Apache Druid (Incubating)][druid], [LinkedIn Pinot][pinot], [Netflix Atlas][atlas],  [Apache Spark][spark], [OpenSearchServer][opensearchserver], [Cloud Torrent][cloudtorrent], [Whoosh][whoosh],  [Pilosa][pilosa],  [Microsoft Visual Studio Team Services (VSTS)][vsts], and eBay's [Apache Kylin][kylin].
+[Elasticsearch][elasticsearch], [Apache Druid (Incubating)][druid], [LinkedIn Pinot][pinot], [Netflix Atlas][atlas],  [Apache Spark][spark], [OpenSearchServer][opensearchserver], [Cloud Torrent][cloudtorrent], [Whoosh][whoosh],  [Pilosa][pilosa],  [Microsoft Visual Studio Team Services (VSTS)][vsts], and eBay's [Apache Kylin][kylin]. The YouTube SQL Engine, [Google Procella](https://research.google/pubs/pub48388/), uses Roaring bitmaps for indexing.
 
 [lucene]: https://lucene.apache.org/
 [solr]: https://lucene.apache.org/solr/
@@ -52,6 +55,93 @@ This code is licensed under Apache License, Version 2.0 (ASL2.0).
 
 Copyright 2016-... by the authors.
 
+When should you use a bitmap?
+===================================
+
+
+Sets are a fundamental abstraction in
+software. They can be implemented in various
+ways, as hash sets, as trees, and so forth.
+In databases and search engines, sets are often an integral
+part of indexes. For example, we may need to maintain a set
+of all documents or rows  (represented by numerical identifier)
+that satisfy some property. Besides adding or removing
+elements from the set, we need fast functions
+to compute the intersection, the union, the difference between sets, and so on.
+
+
+To implement a set
+of integers, a particularly appealing strategy is the
+bitmap (also called bitset or bit vector). Using n bits,
+we can represent any set made of the integers from the range
+[0,n): the ith bit is set to one if integer i is present in the set.
+Commodity processors use words of W=32 or W=64 bits. By combining many such words, we can
+support large values of n. Intersections, unions and differences can then be implemented
+ as bitwise AND, OR and ANDNOT operations.
+More complicated set functions can also be implemented as bitwise operations.
+
+When the bitset approach is applicable, it can be orders of
+magnitude faster than other possible implementation of a set (e.g., as a hash set)
+while using several times less memory.
+
+However, a bitset, even a compressed one is not always applicable. For example, if the
+you have 1000 random-looking integers, then a simple array might be the best representation.
+We refer to this case as the "sparse" scenario.
+
+When should you use compressed bitmaps?
+===================================
+
+An uncompressed BitSet can use a lot of memory. For example, if you take a BitSet
+and set the bit at position 1,000,000 to true and you have just over 100kB. That is over 100kB
+to store the position of one bit. This is wasteful  even if you do not care about memory:
+suppose that you need to compute the intersection between this BitSet and another one
+that has a bit at position 1,000,001 to true, then you need to go through all these zeroes,
+whether you like it or not. That can become very wasteful.
+
+This being said, there are definitively cases where attempting to use compressed bitmaps is wasteful.
+For example, if you have a small universe size. E.g., your bitmaps represent sets of integers
+from [0,n) where n is small (e.g., n=64 or n=128). If you are able to uncompressed BitSet and
+it does not blow up your memory usage,  then compressed bitmaps are probably not useful
+to you. In fact, if you do not need compression, then a BitSet offers remarkable speed.
+
+The sparse scenario is another use case where compressed bitmaps should not be used.
+Keep in mind that random-looking data is usually not compressible. E.g., if you have a small set of
+32-bit random integers, it is not mathematically possible to use far less than 32 bits per integer,
+and attempts at compression can be counterproductive.
+
+How does Roaring compares with the alternatives?
+==================================================
+
+
+Most alternatives to Roaring are part of a larger family of compressed bitmaps that are run-length-encoded
+bitmaps. They identify long runs of 1s or 0s and they represent them with a marker word.
+If you have a local mix of 1s and 0, you use an uncompressed word.
+
+There are many formats in this family:
+
+* Oracle's BBC is an obsolete format at this point: though it may provide good compression,
+it is likely much slower than more recent alternatives due to excessive branching.
+* WAH is a patented variation on BBC that provides better performance.
+* Concise is a variation on the patented WAH. It some specific instances, it can compress
+much better than WAH (up to 2x better), but it is generally slower.
+* EWAH is both free of patent, and it is faster than all the above. On the downside, it
+does not compress quite as well. It is faster because it allows some form of "skipping"
+over uncompressed words. So though none of these formats are great at random access, EWAH
+is better than the alternatives.
+
+
+
+There is a big problem with these formats however that can hurt you badly in some cases: there is no random access. If you want to check whether a given value is present in the set, you have to start from the beginning and "uncompress" the whole thing. This means that if you want to intersect a big set with a large set, you still have to uncompress the whole big set in the worst case...
+
+Roaring solves this problem. It works in the following manner. It divides the data into chunks of 2<sup>16</sup> integers
+(e.g., [0, 2<sup>16</sup>), [2<sup>16</sup>, 2 x 2<sup>16</sup>), ...). Within a chunk, it can use an uncompressed bitmap, a simple list of integers,
+or a list of runs. Whatever format it uses, they all allow you to check for the present of any one value quickly
+(e.g., with a binary search). The net result is that Roaring can compute many operations much faster than run-length-encoded
+formats like WAH, EWAH, Concise... Maybe surprisingly, Roaring also generally offers better compression ratios.
+
+
+
+
 
 ### References
 
@@ -172,10 +262,70 @@ That is, given a fixed overhead for the universe size (x), Roaring
 bitmaps never use more than 2 bytes per integer. You can call
 ``BoundSerializedSizeInBytes`` for a more precise estimate.
 
+### 64-bit Roaring
+
+By default, roaring is used to stored unsigned 32-bit integers. However, we also offer
+an extension dedicated to 64-bit integers. It supports roughly the same functions:
+
+```go
+package main
+
+import (
+    "fmt"
+    "github.com/RoaringBitmap/roaring/roaring64"
+    "bytes"
+)
+
+
+func main() {
+    // example inspired by https://github.com/fzandona/goroar
+    fmt.Println("==roaring64==")
+    rb1 := roaring64.BitmapOf(1, 2, 3, 4, 5, 100, 1000)
+    fmt.Println(rb1.String())
+
+    rb2 := roaring64.BitmapOf(3, 4, 1000)
+    fmt.Println(rb2.String())
+
+    rb3 := roaring64.New()
+    fmt.Println(rb3.String())
+
+    fmt.Println("Cardinality: ", rb1.GetCardinality())
+
+    fmt.Println("Contains 3? ", rb1.Contains(3))
+
+    rb1.And(rb2)
+
+    rb3.Add(1)
+    rb3.Add(5)
+
+    rb3.Or(rb1)
+
+
+
+    // prints 1, 3, 4, 5, 1000
+    i := rb3.Iterator()
+    for i.HasNext() {
+        fmt.Println(i.Next())
+    }
+    fmt.Println()
+
+    // next we include an example of serialization
+    buf := new(bytes.Buffer)
+    rb1.WriteTo(buf) // we omit error handling
+    newrb:= roaring64.New()
+    newrb.ReadFrom(buf)
+    if rb1.Equals(newrb) {
+    	fmt.Println("I wrote the content to a byte stream and read it back.")
+    }
+    // you can iterate over bitmaps using ReverseIterator(), Iterator, ManyIterator()
+}
+```
+
+Only the 32-bit roaring format is standard and cross-operable between Java, C++, C and Go. There is no guarantee that the 64-bit versions are compatible.
 
 ### Documentation
 
-Current documentation is available at http://godoc.org/github.com/RoaringBitmap/roaring
+Current documentation is available at http://godoc.org/github.com/RoaringBitmap/roaring and http://godoc.org/github.com/RoaringBitmap/roaring64
 
 ### Goroutine safety
 
diff --git a/vendor/github.com/RoaringBitmap/roaring/arraycontainer.go b/vendor/github.com/RoaringBitmap/roaring/arraycontainer.go
index eb124f3..f8bb29b 100644
--- a/vendor/github.com/RoaringBitmap/roaring/arraycontainer.go
+++ b/vendor/github.com/RoaringBitmap/roaring/arraycontainer.go
@@ -359,28 +359,17 @@ func (ac *arrayContainer) iorArray(value2 *arrayContainer) container {
 	len1 := value1.getCardinality()
 	len2 := value2.getCardinality()
 	maxPossibleCardinality := len1 + len2
-	if maxPossibleCardinality > arrayDefaultMaxSize { // it could be a bitmap!
-		bc := newBitmapContainer()
-		for k := 0; k < len(value2.content); k++ {
-			v := value2.content[k]
-			i := uint(v) >> 6
-			mask := uint64(1) << (v % 64)
-			bc.bitmap[i] |= mask
-		}
-		for k := 0; k < len(ac.content); k++ {
-			v := ac.content[k]
-			i := uint(v) >> 6
-			mask := uint64(1) << (v % 64)
-			bc.bitmap[i] |= mask
-		}
-		bc.cardinality = int(popcntSlice(bc.bitmap))
-		if bc.cardinality <= arrayDefaultMaxSize {
-			return bc.toArrayContainer()
-		}
-		return bc
-	}
 	if maxPossibleCardinality > cap(value1.content) {
-		newcontent := make([]uint16, 0, maxPossibleCardinality)
+		// doubling the capacity reduces new slice allocations in the case of
+		// repeated calls to iorArray().
+		newSize := 2 * maxPossibleCardinality
+		// the second check is to handle overly large array containers
+		// and should not occur in normal usage,
+		// as all array containers should be at most arrayDefaultMaxSize
+		if newSize > 2*arrayDefaultMaxSize && maxPossibleCardinality <= 2*arrayDefaultMaxSize {
+			newSize = 2 * arrayDefaultMaxSize
+		}
+		newcontent := make([]uint16, 0, newSize)
 		copy(newcontent[len2:maxPossibleCardinality], ac.content[0:len1])
 		ac.content = newcontent
 	} else {
@@ -388,6 +377,13 @@ func (ac *arrayContainer) iorArray(value2 *arrayContainer) container {
 	}
 	nl := union2by2(value1.content[len2:maxPossibleCardinality], value2.content, ac.content)
 	ac.content = ac.content[:nl] // reslice to match actual used capacity
+
+	if nl > arrayDefaultMaxSize {
+		// Only converting to a bitmap when arrayDefaultMaxSize
+		// is actually exceeded minimizes conversions in the case of repeated
+		// calls to iorArray().
+		return ac.toBitmapContainer()
+	}
 	return ac
 }
 
@@ -876,6 +872,41 @@ func (ac *arrayContainer) loadData(bitmapContainer *bitmapContainer) {
 	ac.content = make([]uint16, bitmapContainer.cardinality, bitmapContainer.cardinality)
 	bitmapContainer.fillArray(ac.content)
 }
+
+func (ac *arrayContainer) resetTo(a container) {
+	switch x := a.(type) {
+	case *arrayContainer:
+		ac.realloc(len(x.content))
+		copy(ac.content, x.content)
+
+	case *bitmapContainer:
+		ac.realloc(x.cardinality)
+		x.fillArray(ac.content)
+
+	case *runContainer16:
+		card := int(x.cardinality())
+		ac.realloc(card)
+		cur := 0
+		for _, r := range x.iv {
+			for val := r.start; val <= r.last(); val++ {
+				ac.content[cur] = val
+				cur++
+			}
+		}
+
+	default:
+		panic("unsupported container type")
+	}
+}
+
+func (ac *arrayContainer) realloc(size int) {
+	if cap(ac.content) < size {
+		ac.content = make([]uint16, size)
+	} else {
+		ac.content = ac.content[:size]
+	}
+}
+
 func newArrayContainer() *arrayContainer {
 	p := new(arrayContainer)
 	return p
diff --git a/vendor/github.com/RoaringBitmap/roaring/bitmapcontainer.go b/vendor/github.com/RoaringBitmap/roaring/bitmapcontainer.go
index cd259fd..e09b091 100644
--- a/vendor/github.com/RoaringBitmap/roaring/bitmapcontainer.go
+++ b/vendor/github.com/RoaringBitmap/roaring/bitmapcontainer.go
@@ -203,6 +203,33 @@ func (bcmi *bitmapContainerManyIterator) nextMany(hs uint32, buf []uint32) int {
 	return n
 }
 
+func (bcmi *bitmapContainerManyIterator) nextMany64(hs uint64, buf []uint64) int {
+	n := 0
+	base := bcmi.base
+	bitset := bcmi.bitset
+
+	for n < len(buf) {
+		if bitset == 0 {
+			base++
+			if base >= len(bcmi.ptr.bitmap) {
+				bcmi.base = base
+				bcmi.bitset = bitset
+				return n
+			}
+			bitset = bcmi.ptr.bitmap[base]
+			continue
+		}
+		t := bitset & -bitset
+		buf[n] = uint64(((base * 64) + int(popcount(t-1)))) | hs
+		n = n + 1
+		bitset ^= t
+	}
+
+	bcmi.base = base
+	bcmi.bitset = bitset
+	return n
+}
+
 func newBitmapContainerManyIterator(a *bitmapContainer) *bitmapContainerManyIterator {
 	return &bitmapContainerManyIterator{a, -1, 0}
 }
@@ -934,6 +961,32 @@ func (bc *bitmapContainer) loadData(arrayContainer *arrayContainer) {
 	}
 }
 
+func (bc *bitmapContainer) resetTo(a container) {
+	switch x := a.(type) {
+	case *arrayContainer:
+		fill(bc.bitmap, 0)
+		bc.loadData(x)
+
+	case *bitmapContainer:
+		bc.cardinality = x.cardinality
+		copy(bc.bitmap, x.bitmap)
+
+	case *runContainer16:
+		bc.cardinality = len(x.iv)
+		lastEnd := 0
+		for _, r := range x.iv {
+			bc.cardinality += int(r.length)
+			resetBitmapRange(bc.bitmap, lastEnd, int(r.start))
+			lastEnd = int(r.start+r.length) + 1
+			setBitmapRange(bc.bitmap, int(r.start), lastEnd)
+		}
+		resetBitmapRange(bc.bitmap, lastEnd, maxCapacity)
+
+	default:
+		panic("unsupported container type")
+	}
+}
+
 func (bc *bitmapContainer) toArrayContainer() *arrayContainer {
 	ac := &arrayContainer{}
 	ac.loadData(bc)
diff --git a/vendor/github.com/RoaringBitmap/roaring/fastaggregation.go b/vendor/github.com/RoaringBitmap/roaring/fastaggregation.go
index 762e500..ae731b3 100644
--- a/vendor/github.com/RoaringBitmap/roaring/fastaggregation.go
+++ b/vendor/github.com/RoaringBitmap/roaring/fastaggregation.go
@@ -213,3 +213,120 @@ func HeapXor(bitmaps ...*Bitmap) *Bitmap {
 	}
 	return heap.Pop(&pq).(*item).value
 }
+
+// AndAny provides a result equivalent to x1.And(FastOr(bitmaps)).
+// It's optimized to minimize allocations. It also might be faster than separate calls.
+func (x1 *Bitmap) AndAny(bitmaps ...*Bitmap) {
+	if len(bitmaps) == 0 {
+		return
+	} else if len(bitmaps) == 1 {
+		x1.And(bitmaps[0])
+		return
+	}
+
+	type withPos struct {
+		bitmap *roaringArray
+		pos    int
+		key    uint16
+	}
+	filters := make([]withPos, 0, len(bitmaps))
+
+	for _, b := range bitmaps {
+		if b.highlowcontainer.size() > 0 {
+			filters = append(filters, withPos{
+				bitmap: &b.highlowcontainer,
+				pos:    0,
+				key:    b.highlowcontainer.getKeyAtIndex(0),
+			})
+		}
+	}
+
+	basePos := 0
+	intersections := 0
+	keyContainers := make([]container, 0, len(filters))
+	var (
+		tmpArray   *arrayContainer
+		tmpBitmap  *bitmapContainer
+		minNextKey uint16
+	)
+
+	for basePos < x1.highlowcontainer.size() && len(filters) > 0 {
+		baseKey := x1.highlowcontainer.getKeyAtIndex(basePos)
+
+		// accumulate containers for current key, find next minimal key in filters
+		// and exclude filters that do not have related values anymore
+		i := 0
+		maxPossibleOr := 0
+		minNextKey = MaxUint16
+		for _, f := range filters {
+			if f.key < baseKey {
+				f.pos = f.bitmap.advanceUntil(baseKey, f.pos)
+				if f.pos == f.bitmap.size() {
+					continue
+				}
+				f.key = f.bitmap.getKeyAtIndex(f.pos)
+			}
+
+			if f.key == baseKey {
+				cont := f.bitmap.getContainerAtIndex(f.pos)
+				keyContainers = append(keyContainers, cont)
+				maxPossibleOr += cont.getCardinality()
+
+				f.pos++
+				if f.pos == f.bitmap.size() {
+					continue
+				}
+				f.key = f.bitmap.getKeyAtIndex(f.pos)
+			}
+
+			minNextKey = minOfUint16(minNextKey, f.key)
+			filters[i] = f
+			i++
+		}
+		filters = filters[:i]
+
+		if len(keyContainers) == 0 {
+			basePos = x1.highlowcontainer.advanceUntil(minNextKey, basePos)
+			continue
+		}
+
+		var ored container
+
+		if len(keyContainers) == 1 {
+			ored = keyContainers[0]
+		} else {
+			//TODO: special case for run containers?
+			if maxPossibleOr > arrayDefaultMaxSize {
+				if tmpBitmap == nil {
+					tmpBitmap = newBitmapContainer()
+				}
+				tmpBitmap.resetTo(keyContainers[0])
+				for _, c := range keyContainers[1:] {
+					tmpBitmap.ior(c)
+				}
+				ored = tmpBitmap
+			} else {
+				if tmpArray == nil {
+					tmpArray = newArrayContainerCapacity(maxPossibleOr)
+				}
+				tmpArray.realloc(maxPossibleOr)
+				tmpArray.resetTo(keyContainers[0])
+				for _, c := range keyContainers[1:] {
+					tmpArray.ior(c)
+				}
+				ored = tmpArray
+			}
+		}
+
+		result := x1.highlowcontainer.getWritableContainerAtIndex(basePos).iand(ored)
+		if result.getCardinality() > 0 {
+			x1.highlowcontainer.replaceKeyAndContainerAtIndex(intersections, baseKey, result, false)
+			intersections++
+		}
+
+		keyContainers = keyContainers[:0]
+		basePos = x1.highlowcontainer.advanceUntil(minNextKey, basePos)
+	}
+
+	x1.highlowcontainer.resize(intersections)
+}
diff --git a/vendor/github.com/RoaringBitmap/roaring/go.mod b/vendor/github.com/RoaringBitmap/roaring/go.mod
index f5aebf3..5e9db36 100644
--- a/vendor/github.com/RoaringBitmap/roaring/go.mod
+++ b/vendor/github.com/RoaringBitmap/roaring/go.mod
@@ -1,6 +1,6 @@
 module github.com/RoaringBitmap/roaring
 
-go 1.12
+go 1.14
 
 require (
 	github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2
@@ -13,4 +13,6 @@ require (
 	github.com/stretchr/testify v1.4.0
 	github.com/tinylib/msgp v1.1.0
 	github.com/willf/bitset v1.1.10
+	golang.org/x/lint v0.0.0-20200302205851-738671d3881b // indirect
+	golang.org/x/tools v0.0.0-20200928182047-19e03678916f // indirect
 )
diff --git a/vendor/github.com/RoaringBitmap/roaring/go.sum b/vendor/github.com/RoaringBitmap/roaring/go.sum
index 2e27dbb..c01900e 100644
--- a/vendor/github.com/RoaringBitmap/roaring/go.sum
+++ b/vendor/github.com/RoaringBitmap/roaring/go.sum
@@ -24,6 +24,31 @@ github.com/tinylib/msgp v1.1.0 h1:9fQd+ICuRIu/ue4vxJZu6/LzxN0HwMds2nq/0cFvxHU=
 github.com/tinylib/msgp v1.1.0/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE=
 github.com/willf/bitset v1.1.10 h1:NotGKqX0KwQ72NUzqrjZq5ipPNDQex9lo3WpaS8L2sc=
 github.com/willf/bitset v1.1.10/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4=
+github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
+golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
+golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
+golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
+golang.org/x/lint v0.0.0-20200302205851-738671d3881b h1:Wh+f8QHJXR411sJR8/vRBTZ7YapZaRvUcLFFJhusH0k=
+golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
+golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
+golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
+golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
+golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
+golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
+golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
+golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
+golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7 h1:EBZoQjiKKPaLbPrbpssUfuHtwM6KV/vb4U85g/cigFY=
+golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
+golang.org/x/tools v0.0.0-20200928182047-19e03678916f h1:VwGa2Wf+rHGIxvsssCkUNIyFv8jQY0VCBCNWtikoWq0=
+golang.org/x/tools v0.0.0-20200928182047-19e03678916f/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU=
+golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
diff --git a/vendor/github.com/RoaringBitmap/roaring/manyiterator.go b/vendor/github.com/RoaringBitmap/roaring/manyiterator.go
index 3007563..eaa5b79 100644
--- a/vendor/github.com/RoaringBitmap/roaring/manyiterator.go
+++ b/vendor/github.com/RoaringBitmap/roaring/manyiterator.go
@@ -2,6 +2,7 @@ package roaring
 
 type manyIterable interface {
 	nextMany(hs uint32, buf []uint32) int
+	nextMany64(hs uint64, buf []uint64) int
 }
 
 func (si *shortIterator) nextMany(hs uint32, buf []uint32) int {
@@ -16,3 +17,16 @@ func (si *shortIterator) nextMany(hs uint32, buf []uint32) int {
 	si.loc = l
 	return n
 }
+
+func (si *shortIterator) nextMany64(hs uint64, buf []uint64) int {
+	n := 0
+	l := si.loc
+	s := si.slice
+	for n < len(buf) && l < len(s) {
+		buf[n] = uint64(s[l]) | hs
+		l++
+		n++
+	}
+	si.loc = l
+	return n
+}
diff --git a/vendor/github.com/RoaringBitmap/roaring/roaring.go b/vendor/github.com/RoaringBitmap/roaring/roaring.go
index ed75d58..2afb395 100644
--- a/vendor/github.com/RoaringBitmap/roaring/roaring.go
+++ b/vendor/github.com/RoaringBitmap/roaring/roaring.go
@@ -345,8 +345,10 @@ func newIntReverseIterator(a *Bitmap) *intReverseIterator {
 
 // ManyIntIterable allows you to iterate over the values in a Bitmap
 type ManyIntIterable interface {
-	// pass in a buffer to fill up with values, returns how many values were returned
-	NextMany([]uint32) int
+	// NextMany fills buf up with values, returns how many values were returned
+	NextMany(buf []uint32) int
+	// NextMany64 fills up buf with 64 bit values, uses hs as a mask (OR), returns how many values were returned
+	NextMany64(hs uint64, buf []uint64) int
 }
 
 type manyIntIterator struct {
@@ -382,6 +384,25 @@ func (ii *manyIntIterator) NextMany(buf []uint32) int {
 	return n
 }
 
+func (ii *manyIntIterator) NextMany64(hs64 uint64, buf []uint64) int {
+	n := 0
+	for n < len(buf) {
+		if ii.iter == nil {
+			break
+		}
+
+		hs := uint64(ii.hs) | hs64
+		moreN := ii.iter.nextMany64(hs, buf[n:])
+		n += moreN
+		if moreN == 0 {
+			ii.pos = ii.pos + 1
+			ii.init()
+		}
+	}
+
+	return n
+}
+
 func newManyIntIterator(a *Bitmap) *manyIntIterator {
 	p := new(manyIntIterator)
 	p.pos = 0
@@ -678,7 +699,10 @@ func (rb *Bitmap) GetCardinality() uint64 {
 	return size
 }
 
-// Rank returns the number of integers that are smaller or equal to x (Rank(infinity) would be GetCardinality())
+// Rank returns the number of integers that are smaller or equal to x (Rank(infinity) would be GetCardinality()).
+// If you pass the smallest value, you get the value 1. If you pass a value that is smaller than the smallest
+// value, you get 0. Note that this function differs in convention from the Select function since it
+// return 1 and not 0 on the smallest value.
 func (rb *Bitmap) Rank(x uint32) uint64 {
 	size := uint64(0)
 	for i := 0; i < rb.highlowcontainer.size(); i++ {
@@ -695,7 +719,9 @@ func (rb *Bitmap) Rank(x uint32) uint64 {
 	return size
 }
 
-// Select returns the xth integer in the bitmap
+// Select returns the xth integer in the bitmap. If you pass 0, you get
+// the smallest element. Note that this function differs in convention from
+// the Rank function which returns 1 on the smallest value.
 func (rb *Bitmap) Select(x uint32) (uint32, error) {
 	if rb.GetCardinality() <= uint64(x) {
 		return 0, fmt.Errorf("can't find %dth integer in a bitmap with only %d items", x, rb.GetCardinality())
@@ -980,7 +1006,7 @@ main:
 				}
 				s2 = x2.highlowcontainer.getKeyAtIndex(pos2)
 			} else {
-				rb.highlowcontainer.replaceKeyAndContainerAtIndex(pos1, s1, rb.highlowcontainer.getWritableContainerAtIndex(pos1).ior(x2.highlowcontainer.getContainerAtIndex(pos2)), false)
+				rb.highlowcontainer.replaceKeyAndContainerAtIndex(pos1, s1, rb.highlowcontainer.getUnionedWritableContainer(pos1, x2.highlowcontainer.getContainerAtIndex(pos2)), false)
 				pos1++
 				pos2++
 				if (pos1 == length1) || (pos2 == length2) {
diff --git a/vendor/github.com/RoaringBitmap/roaring/roaringarray.go b/vendor/github.com/RoaringBitmap/roaring/roaringarray.go
index 3dddbff..d0c832b 100644
--- a/vendor/github.com/RoaringBitmap/roaring/roaringarray.go
+++ b/vendor/github.com/RoaringBitmap/roaring/roaringarray.go
@@ -328,6 +328,17 @@ func (ra *roaringArray) getFastContainerAtIndex(i int, needsWriteable bool) cont
 	return c
 }
 
+// getUnionedWritableContainer switches behavior for in-place Or
+// depending on whether the container requires a copy on write.
+// If it does using the non-inplace or() method leads to fewer allocations.
+func (ra *roaringArray) getUnionedWritableContainer(pos int, other container) container {
+	if ra.needCopyOnWrite[pos] {
+		return ra.getContainerAtIndex(pos).or(other)
+	}
+	return ra.getContainerAtIndex(pos).ior(other)
+
+}
+
 func (ra *roaringArray) getWritableContainerAtIndex(i int) container {
 	if ra.needCopyOnWrite[i] {
 		ra.containers[i] = ra.containers[i].clone()
@@ -491,11 +502,11 @@ func (ra *roaringArray) writeTo(w io.Writer) (n int64, err error) {
 		binary.LittleEndian.PutUint16(buf[2:], uint16(len(ra.keys)-1))
 		nw += 2
 		// compute isRun bitmap without temporary allocation
-		var runbitmapslice = buf[nw:nw+isRunSizeInBytes]
+		var runbitmapslice = buf[nw : nw+isRunSizeInBytes]
 		for i, c := range ra.containers {
 			switch c.(type) {
 			case *runContainer16:
-				runbitmapslice[i / 8] |= 1<<(uint(i)%8)
+				runbitmapslice[i/8] |= 1 << (uint(i) % 8)
 			}
 		}
 		nw += isRunSizeInBytes
diff --git a/vendor/github.com/RoaringBitmap/roaring/runcontainer.go b/vendor/github.com/RoaringBitmap/roaring/runcontainer.go
index 5a0f985..fc1f456 100644
--- a/vendor/github.com/RoaringBitmap/roaring/runcontainer.go
+++ b/vendor/github.com/RoaringBitmap/roaring/runcontainer.go
@@ -1321,6 +1321,47 @@ func (ri *runIterator16) nextMany(hs uint32, buf []uint32) int {
 	return n
 }
 
+func (ri *runIterator16) nextMany64(hs uint64, buf []uint64) int {
+	n := 0
+
+	if !ri.hasNext() {
+		return n
+	}
+
+	// start and end are inclusive
+	for n < len(buf) {
+		moreVals := 0
+
+		if ri.rc.iv[ri.curIndex].length >= ri.curPosInIndex {
+			// add as many as you can from this seq
+			moreVals = minOfInt(int(ri.rc.iv[ri.curIndex].length-ri.curPosInIndex)+1, len(buf)-n)
+			base := uint64(ri.rc.iv[ri.curIndex].start+ri.curPosInIndex) | hs
+
+			// allows BCE
+			buf2 := buf[n : n+moreVals]
+			for i := range buf2 {
+				buf2[i] = base + uint64(i)
+			}
+
+			// update values
+			n += moreVals
+		}
+
+		if moreVals+int(ri.curPosInIndex) > int(ri.rc.iv[ri.curIndex].length) {
+			ri.curPosInIndex = 0
+			ri.curIndex++
+
+			if ri.curIndex == int64(len(ri.rc.iv)) {
+				break
+			}
+		} else {
+			ri.curPosInIndex += uint16(moreVals) //moreVals always fits in uint16
+		}
+	}
+
+	return n
+}
+
 // remove removes key from the container.
 func (rc *runContainer16) removeKey(key uint16) (wasPresent bool) {
 
diff --git a/vendor/github.com/RoaringBitmap/roaring/serialization_generic.go b/vendor/github.com/RoaringBitmap/roaring/serialization_generic.go
index 4b9d9e3..90a336c 100644
--- a/vendor/github.com/RoaringBitmap/roaring/serialization_generic.go
+++ b/vendor/github.com/RoaringBitmap/roaring/serialization_generic.go
@@ -1,4 +1,4 @@
-// +build !amd64,!386 appengine
+// +build !amd64,!386,!arm,!arm64,!ppc64le,!mipsle,!mips64le,!mips64p32le,!wasm appengine
 
 package roaring
 
diff --git a/vendor/github.com/RoaringBitmap/roaring/serialization_littleendian.go b/vendor/github.com/RoaringBitmap/roaring/serialization_littleendian.go
index 818a06c..82edeb8 100644
--- a/vendor/github.com/RoaringBitmap/roaring/serialization_littleendian.go
+++ b/vendor/github.com/RoaringBitmap/roaring/serialization_littleendian.go
@@ -1,4 +1,4 @@
-// +build 386 amd64,!appengine
+// +build 386,!appengine amd64,!appengine arm,!appengine arm64,!appengine ppc64le,!appengine mipsle,!appengine mips64le,!appengine mips64p32le,!appengine wasm,!appengine
 
 package roaring
 
diff --git a/vendor/github.com/RoaringBitmap/roaring/setutil.go b/vendor/github.com/RoaringBitmap/roaring/setutil.go
index 2fe8151..663c4fa 100644
--- a/vendor/github.com/RoaringBitmap/roaring/setutil.go
+++ b/vendor/github.com/RoaringBitmap/roaring/setutil.go
@@ -135,66 +135,6 @@ func exclusiveUnion2by2(set1 []uint16, set2 []uint16, buffer []uint16) int {
 	return pos
 }
 
-func union2by2(set1 []uint16, set2 []uint16, buffer []uint16) int {
-	pos := 0
-	k1 := 0
-	k2 := 0
-	if 0 == len(set2) {
-		buffer = buffer[:len(set1)]
-		copy(buffer, set1[:])
-		return len(set1)
-	}
-	if 0 == len(set1) {
-		buffer = buffer[:len(set2)]
-		copy(buffer, set2[:])
-		return len(set2)
-	}
-	s1 := set1[k1]
-	s2 := set2[k2]
-	buffer = buffer[:cap(buffer)]
-	for {
-		if s1 < s2 {
-			buffer[pos] = s1
-			pos++
-			k1++
-			if k1 >= len(set1) {
-				copy(buffer[pos:], set2[k2:])
-				pos += len(set2) - k2
-				break
-			}
-			s1 = set1[k1]
-		} else if s1 == s2 {
-			buffer[pos] = s1
-			pos++
-			k1++
-			k2++
-			if k1 >= len(set1) {
-				copy(buffer[pos:], set2[k2:])
-				pos += len(set2) - k2
-				break
-			}
-			if k2 >= len(set2) {
-				copy(buffer[pos:], set1[k1:])
-				pos += len(set1) - k1
-				break
-			}
-			s1 = set1[k1]
-			s2 = set2[k2]
-		} else { // if (set1[k1]>set2[k2])
-			buffer[pos] = s2
-			pos++
-			k2++
-			if k2 >= len(set2) {
-				copy(buffer[pos:], set1[k1:])
-				pos += len(set1) - k1
-				break
-			}
-			s2 = set2[k2]
-		}
-	}
-	return pos
-}
-
 func union2by2Cardinality(set1 []uint16, set2 []uint16) int {
 	pos := 0
 	k1 := 0
diff --git a/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.go b/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.go
new file mode 100644
index 0000000..debca81
--- /dev/null
+++ b/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.go
@@ -0,0 +1,6 @@
+// +build arm64,!gccgo,!appengine
+
+package roaring
+
+//go:noescape
+func union2by2(set1 []uint16, set2 []uint16, buffer []uint16) (size int)
diff --git a/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.s b/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.s
new file mode 100644
index 0000000..e4f0f20
--- /dev/null
+++ b/vendor/github.com/RoaringBitmap/roaring/setutil_arm64.s
@@ -0,0 +1,132 @@
+// +build arm64,!gccgo,!appengine
+
+#include "textflag.h"
+
+
+// This implements union2by2 using golang's version of arm64 assembly
+// The algorithm is very similar to the generic one,
+// but makes better use of arm64 features so is notably faster.
+// The basic algorithm structure is as follows:
+// 1. If either set is empty, copy the other set into the buffer and return the length
+// 2. Otherwise, load the first element of each set into a variable (s1 and s2).
+// 3. a. Compare the values of s1 and s2.
+ // b. add the smaller one to the buffer.
+ // c. perform a bounds check before incrementing.
+ // If one set is finished, copy the rest of the other set over.
+ // d. update s1 and or s2 to the next value, continue loop.
+ //
+ // Past the fact of the algorithm, this code makes use of several arm64 features
+ // Condition Codes:
+ // arm64's CMP operation sets 4 bits that can be used for branching,
+ // rather than just true or false.
+ // As a consequence, a single comparison gives enough information to distinguish the three cases
+ //
+ // Post-increment pointers after load/store:
+ // Instructions like `MOVHU.P 2(R0), R6`
+ // increment the register by a specified amount, in this example 2.
+ // Because uint16's are exactly 2 bytes and the length of the slices
+ // is part of the slice header,
+ // there is no need to separately track the index into the slice.
+ // Instead, the code can calculate the final read value and compare against that,
+ // using the post-increment reads to move the pointers along.
+ //
+ // TODO: CALL out to memmove once the list is exhausted.
+ // Right now it moves the necessary shorts so that the remaining count
+ // is a multiple of 4 and then copies 64 bits at a time.
+
+TEXT ·union2by2(SB), NOSPLIT, $0-80
+	// R0, R1, and R2 for the pointers to the three slices
+	MOVD set1+0(FP), R0
+	MOVD set2+24(FP), R1
+	MOVD buffer+48(FP), R2
+
+	//R3 and R4 will be the values at which we will have finished reading set1 and set2.
+	// R3 should be R0 + 2 * set1_len+8(FP)
+	MOVD set1_len+8(FP), R3
+	MOVD set2_len+32(FP), R4
+
+	ADD R3<<1, R0, R3
+	ADD R4<<1, R1, R4
+
+
+	//Rather than counting the number of elements added separately
+	//Save the starting register of buffer.
+	MOVD buffer+48(FP), R5
+
+	// set1 is empty, just flush set2
+	CMP R0, R3
+	BEQ flush_right
+
+	// set2 is empty, just flush set1
+	CMP R1, R4
+	BEQ flush_left
+
+	// R6, R7 are the working space for s1 and s2
+	MOVD ZR, R6
+	MOVD ZR, R7
+
+	MOVHU.P 2(R0), R6
+	MOVHU.P 2(R1), R7
+loop:
+
+	CMP R6, R7
+	BEQ pop_both // R6 == R7
+	BLS pop_right // R6 > R7
+//pop_left: // R6 < R7
+	MOVHU.P R6, 2(R2)
+	CMP R0, R3
+	BEQ pop_then_flush_right
+	MOVHU.P 2(R0), R6
+	JMP loop
+pop_both:
+	MOVHU.P R6, 2(R2) //could also use R7, since they are equal
+	CMP R0, R3
+	BEQ flush_right
+	CMP R1, R4
+	BEQ flush_left
+	MOVHU.P 2(R0), R6
+	MOVHU.P 2(R1), R7
+	JMP loop
+pop_right:
+	MOVHU.P R7, 2(R2)
+	CMP R1, R4
+	BEQ pop_then_flush_left
+	MOVHU.P 2(R1), R7
+	JMP loop
+
+pop_then_flush_right:
+	MOVHU.P R7, 2(R2)
+flush_right:
+	MOVD R1, R0
+	MOVD R4, R3
+	JMP flush_left
+pop_then_flush_left:
+	MOVHU.P R6, 2(R2)
+flush_left:
+	CMP R0, R3
+	BEQ return
+	//figure out how many bytes to slough off. Must be a multiple of two
+	SUB R0, R3, R4
+	ANDS $6, R4
+	BEQ long_flush //handles the 0 mod 8 case
+	SUBS $4, R4, R4 // since possible values are 2, 4, 6, this splits evenly
+	BLT pop_single  // exactly the 2 case
+	MOVW.P 4(R0), R6
+	MOVW.P R6, 4(R2)
+	BEQ long_flush // we're now aligned by 64 bits, as R4==4, otherwise 2 more
+pop_single:
+	MOVHU.P 2(R0), R6
+	MOVHU.P R6, 2(R2)
+long_flush:
+	// at this point we know R3 - R0 is a multiple of 8.
+	CMP R0, R3
+	BEQ return
+	MOVD.P 8(R0), R6
+	MOVD.P R6, 8(R2)
+	JMP long_flush
+return:
+	// number of shorts written is (R5 - R2) >> 1
+	SUB R5, R2
+	LSR $1, R2, R2
+	MOVD R2, size+72(FP)
+	RET
diff --git a/vendor/github.com/RoaringBitmap/roaring/setutil_generic.go b/vendor/github.com/RoaringBitmap/roaring/setutil_generic.go
new file mode 100644
index 0000000..9edcc90
--- /dev/null
+++ b/vendor/github.com/RoaringBitmap/roaring/setutil_generic.go
@@ -0,0 +1,63 @@
+// +build !arm64 gccgo appengine
+
+package roaring
+
+func union2by2(set1 []uint16, set2 []uint16, buffer []uint16) int {
+	pos := 0
+	k1 := 0
+	k2 := 0
+	if 0 == len(set2) {
+		buffer = buffer[:len(set1)]
+		copy(buffer, set1[:])
+		return len(set1)
+	}
+	if 0 == len(set1) {
+		buffer = buffer[:len(set2)]
+		copy(buffer, set2[:])
+		return len(set2)
+	}
+	s1 := set1[k1]
+	s2 := set2[k2]
+	buffer = buffer[:cap(buffer)]
+	for {
+		if s1 < s2 {
+			buffer[pos] = s1
+			pos++
+			k1++
+			if k1 >= len(set1) {
+				copy(buffer[pos:], set2[k2:])
+				pos += len(set2) - k2
+				break
+			}
+			s1 = set1[k1]
+		} else if s1 == s2 {
+			buffer[pos] = s1
+			pos++
+			k1++
+			k2++
+			if k1 >= len(set1) {
+				copy(buffer[pos:], set2[k2:])
+				pos += len(set2) - k2
+				break
+			}
+			if k2 >= len(set2) {
+				copy(buffer[pos:], set1[k1:])
+				pos += len(set1) - k1
+				break
+			}
+			s1 = set1[k1]
+			s2 = set2[k2]
+		} else { // if (set1[k1]>set2[k2])
+			buffer[pos] = s2
+			pos++
+			k2++
+			if k2 >= len(set2) {
+				copy(buffer[pos:], set1[k1:])
+				pos += len(set1) - k1
+				break
+			}
+			s2 = set2[k2]
+		}
+	}
+	return pos
+}
diff --git a/vendor/github.com/RoaringBitmap/roaring/util.go b/vendor/github.com/RoaringBitmap/roaring/util.go
index 6763033..48b9d5a 100644
--- a/vendor/github.com/RoaringBitmap/roaring/util.go
+++ b/vendor/github.com/RoaringBitmap/roaring/util.go
@@ -1,6 +1,7 @@
 package roaring
 
 import (
+	"math"
 	"math/rand"
 	"sort"
 )
@@ -15,7 +16,7 @@ const (
 	noOffsetThreshold          = 4
 
 	// MaxUint32 is the largest uint32 value.
-	MaxUint32 = 4294967295
+	MaxUint32 = math.MaxUint32
 
 	// MaxRange is One more than the maximum allowed bitmap bit index. For use as an upper
 	// bound for ranges.
@@ -23,7 +24,7 @@ const (
 
 	// MaxUint16 is the largest 16 bit unsigned int.
 	// This is the largest value an interval16 can store.
-	MaxUint16 = 65535
+	MaxUint16 = math.MaxUint16
 
 	// Compute wordSizeInBytes, the size of a word in bytes.
 	_m              = ^uint64(0)
diff --git a/vendor/github.com/glycerine/go-unsnap-stream/README.md b/vendor/github.com/glycerine/go-unsnap-stream/README.md
index b1b8c74..932291f 100644
--- a/vendor/github.com/glycerine/go-unsnap-stream/README.md
+++ b/vendor/github.com/glycerine/go-unsnap-stream/README.md
@@ -7,7 +7,9 @@ Note that the *streaming or framing format* for snappy is different from snappy
 
 Strangely, though the streaming format was first proposed in Go[1][2], it was never upated, and I could not locate any other library for Go that would handle the streaming/framed snappy format. Hence this implementation of the spec. There is a command line tool[3] that has a C implementation, but this is the only Go implementation that I am aware of. The reference for the framing/streaming spec seems to be the python implementation[4].
 
-For binary compatibility with the python implementation, one could use the C-snappy compressor/decompressor code directly; using github.com/dgryski/go-csnappy. In fact we did this for a while to verify byte-for-byte compatiblity, as the native Go implementation produces slightly different binary compression (still conformant with the standard of course), which made test-diffs harder, and some have complained about it being slower than the C.
+Update to the previous paragraph: Horray! Good news: Thanks to @nigeltao, we have since learned that the [github.com/golang/snappy](https://github.com/golang/snappy) package now provides the snappy streaming format too. Even though the type level descriptions are a little misleading because they don't mention that they are for the stream format, the [snappy package header documentation](https://godoc.org/github.com/golang/snappy) points out that the [snappy.Reader](https://godoc.org/github.com/golang/snappy#Reader) and [snappy.Writer](https://godoc.org/github.com/golang/snappy#Writer) types do indeed provide stream (vs block) handling. Although I have not benchmarked, you should probably prefer that package as it will likely be maintained more than I have time to devote, and also perhaps better integrated with the underlying snappy as they share the same repo.
+
+For binary compatibility with the [python implementation](https://pypi.python.org/pypi/python-snappy) in [4], one could use the C-snappy compressor/decompressor code directly; using github.com/dgryski/go-csnappy. In fact we did this for a while to verify byte-for-byte compatiblity, as the native Go implementation produces slightly different binary compression (still conformant with the standard of course), which made test-diffs harder, and some have complained about it being slower than the C.
 
 However, while the c-snappy was useful for checking compatibility, it introduced dependencies on external C libraries (both the c-snappy library and the C standard library). Our go binary executable that used the go-unsnap-stream library was no longer standalone, and deployment was painful if not impossible if the target had a different C standard library. So we've gone back to using the snappy-go implementation (entirely in Go) for ease of deployment. See the comments at the top of unsnap.go if you wish to use c-snappy instead.
 
@@ -17,4 +19,4 @@ However, while the c-snappy was useful for checking compatibility, it introduced
 
 [3] https://github.com/kubo/snzip
 
-[4] https://pypi.python.org/pypi/python-snappy
\ No newline at end of file
+[4] https://pypi.python.org/pypi/python-snappy
diff --git a/vendor/github.com/golang/protobuf/proto/buffer.go b/vendor/github.com/golang/protobuf/proto/buffer.go
new file mode 100644
index 0000000..e810e6f
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/buffer.go
@@ -0,0 +1,324 @@
+// 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 proto
+
+import (
+	"errors"
+	"fmt"
+
+	"google.golang.org/protobuf/encoding/prototext"
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+	WireVarint     = 0
+	WireFixed32    = 5
+	WireFixed64    = 1
+	WireBytes      = 2
+	WireStartGroup = 3
+	WireEndGroup   = 4
+)
+
+// EncodeVarint returns the varint encoded bytes of v.
+func EncodeVarint(v uint64) []byte {
+	return protowire.AppendVarint(nil, v)
+}
+
+// SizeVarint returns the length of the varint encoded bytes of v.
+// This is equal to len(EncodeVarint(v)).
+func SizeVarint(v uint64) int {
+	return protowire.SizeVarint(v)
+}
+
+// DecodeVarint parses a varint encoded integer from b,
+// returning the integer value and the length of the varint.
+// It returns (0, 0) if there is a parse error.
+func DecodeVarint(b []byte) (uint64, int) {
+	v, n := protowire.ConsumeVarint(b)
+	if n < 0 {
+		return 0, 0
+	}
+	return v, n
+}
+
+// Buffer is a buffer for encoding and decoding the protobuf wire format.
+// It may be reused between invocations to reduce memory usage.
+type Buffer struct {
+	buf           []byte
+	idx           int
+	deterministic bool
+}
+
+// NewBuffer allocates a new Buffer initialized with buf,
+// where the contents of buf are considered the unread portion of the buffer.
+func NewBuffer(buf []byte) *Buffer {
+	return &Buffer{buf: buf}
+}
+
+// SetDeterministic specifies whether to use deterministic serialization.
+//
+// Deterministic serialization guarantees that for a given binary, equal
+// messages will always be serialized to the same bytes. This implies:
+//
+//   - Repeated serialization of a message will return the same bytes.
+//   - Different processes of the same binary (which may be executing on
+//     different machines) will serialize equal messages to the same bytes.
+//
+// Note that the deterministic serialization is NOT canonical across
+// languages. It is not guaranteed to remain stable over time. It is unstable
+// across different builds with schema changes due to unknown fields.
+// Users who need canonical serialization (e.g., persistent storage in a
+// canonical form, fingerprinting, etc.) should define their own
+// canonicalization specification and implement their own serializer rather
+// than relying on this API.
+//
+// If deterministic serialization is requested, map entries will be sorted
+// by keys in lexographical order. This is an implementation detail and
+// subject to change.
+func (b *Buffer) SetDeterministic(deterministic bool) {
+	b.deterministic = deterministic
+}
+
+// SetBuf sets buf as the internal buffer,
+// where the contents of buf are considered the unread portion of the buffer.
+func (b *Buffer) SetBuf(buf []byte) {
+	b.buf = buf
+	b.idx = 0
+}
+
+// Reset clears the internal buffer of all written and unread data.
+func (b *Buffer) Reset() {
+	b.buf = b.buf[:0]
+	b.idx = 0
+}
+
+// Bytes returns the internal buffer.
+func (b *Buffer) Bytes() []byte {
+	return b.buf
+}
+
+// Unread returns the unread portion of the buffer.
+func (b *Buffer) Unread() []byte {
+	return b.buf[b.idx:]
+}
+
+// Marshal appends the wire-format encoding of m to the buffer.
+func (b *Buffer) Marshal(m Message) error {
+	var err error
+	b.buf, err = marshalAppend(b.buf, m, b.deterministic)
+	return err
+}
+
+// Unmarshal parses the wire-format message in the buffer and
+// places the decoded results in m.
+// It does not reset m before unmarshaling.
+func (b *Buffer) Unmarshal(m Message) error {
+	err := UnmarshalMerge(b.Unread(), m)
+	b.idx = len(b.buf)
+	return err
+}
+
+type unknownFields struct{ XXX_unrecognized protoimpl.UnknownFields }
+
+func (m *unknownFields) String() string { panic("not implemented") }
+func (m *unknownFields) Reset()         { panic("not implemented") }
+func (m *unknownFields) ProtoMessage()  { panic("not implemented") }
+
+// DebugPrint dumps the encoded bytes of b with a header and footer including s
+// to stdout. This is only intended for debugging.
+func (*Buffer) DebugPrint(s string, b []byte) {
+	m := MessageReflect(new(unknownFields))
+	m.SetUnknown(b)
+	b, _ = prototext.MarshalOptions{AllowPartial: true, Indent: "\t"}.Marshal(m.Interface())
+	fmt.Printf("==== %s ====\n%s==== %s ====\n", s, b, s)
+}
+
+// EncodeVarint appends an unsigned varint encoding to the buffer.
+func (b *Buffer) EncodeVarint(v uint64) error {
+	b.buf = protowire.AppendVarint(b.buf, v)
+	return nil
+}
+
+// EncodeZigzag32 appends a 32-bit zig-zag varint encoding to the buffer.
+func (b *Buffer) EncodeZigzag32(v uint64) error {
+	return b.EncodeVarint(uint64((uint32(v) << 1) ^ uint32((int32(v) >> 31))))
+}
+
+// EncodeZigzag64 appends a 64-bit zig-zag varint encoding to the buffer.
+func (b *Buffer) EncodeZigzag64(v uint64) error {
+	return b.EncodeVarint(uint64((uint64(v) << 1) ^ uint64((int64(v) >> 63))))
+}
+
+// EncodeFixed32 appends a 32-bit little-endian integer to the buffer.
+func (b *Buffer) EncodeFixed32(v uint64) error {
+	b.buf = protowire.AppendFixed32(b.buf, uint32(v))
+	return nil
+}
+
+// EncodeFixed64 appends a 64-bit little-endian integer to the buffer.
+func (b *Buffer) EncodeFixed64(v uint64) error {
+	b.buf = protowire.AppendFixed64(b.buf, uint64(v))
+	return nil
+}
+
+// EncodeRawBytes appends a length-prefixed raw bytes to the buffer.
+func (b *Buffer) EncodeRawBytes(v []byte) error {
+	b.buf = protowire.AppendBytes(b.buf, v)
+	return nil
+}
+
+// EncodeStringBytes appends a length-prefixed raw bytes to the buffer.
+// It does not validate whether v contains valid UTF-8.
+func (b *Buffer) EncodeStringBytes(v string) error {
+	b.buf = protowire.AppendString(b.buf, v)
+	return nil
+}
+
+// EncodeMessage appends a length-prefixed encoded message to the buffer.
+func (b *Buffer) EncodeMessage(m Message) error {
+	var err error
+	b.buf = protowire.AppendVarint(b.buf, uint64(Size(m)))
+	b.buf, err = marshalAppend(b.buf, m, b.deterministic)
+	return err
+}
+
+// DecodeVarint consumes an encoded unsigned varint from the buffer.
+func (b *Buffer) DecodeVarint() (uint64, error) {
+	v, n := protowire.ConsumeVarint(b.buf[b.idx:])
+	if n < 0 {
+		return 0, protowire.ParseError(n)
+	}
+	b.idx += n
+	return uint64(v), nil
+}
+
+// DecodeZigzag32 consumes an encoded 32-bit zig-zag varint from the buffer.
+func (b *Buffer) DecodeZigzag32() (uint64, error) {
+	v, err := b.DecodeVarint()
+	if err != nil {
+		return 0, err
+	}
+	return uint64((uint32(v) >> 1) ^ uint32((int32(v&1)<<31)>>31)), nil
+}
+
+// DecodeZigzag64 consumes an encoded 64-bit zig-zag varint from the buffer.
+func (b *Buffer) DecodeZigzag64() (uint64, error) {
+	v, err := b.DecodeVarint()
+	if err != nil {
+		return 0, err
+	}
+	return uint64((uint64(v) >> 1) ^ uint64((int64(v&1)<<63)>>63)), nil
+}
+
+// DecodeFixed32 consumes a 32-bit little-endian integer from the buffer.
+func (b *Buffer) DecodeFixed32() (uint64, error) {
+	v, n := protowire.ConsumeFixed32(b.buf[b.idx:])
+	if n < 0 {
+		return 0, protowire.ParseError(n)
+	}
+	b.idx += n
+	return uint64(v), nil
+}
+
+// DecodeFixed64 consumes a 64-bit little-endian integer from the buffer.
+func (b *Buffer) DecodeFixed64() (uint64, error) {
+	v, n := protowire.ConsumeFixed64(b.buf[b.idx:])
+	if n < 0 {
+		return 0, protowire.ParseError(n)
+	}
+	b.idx += n
+	return uint64(v), nil
+}
+
+// DecodeRawBytes consumes a length-prefixed raw bytes from the buffer.
+// If alloc is specified, it returns a copy the raw bytes
+// rather than a sub-slice of the buffer.
+func (b *Buffer) DecodeRawBytes(alloc bool) ([]byte, error) {
+	v, n := protowire.ConsumeBytes(b.buf[b.idx:])
+	if n < 0 {
+		return nil, protowire.ParseError(n)
+	}
+	b.idx += n
+	if alloc {
+		v = append([]byte(nil), v...)
+	}
+	return v, nil
+}
+
+// DecodeStringBytes consumes a length-prefixed raw bytes from the buffer.
+// It does not validate whether the raw bytes contain valid UTF-8.
+func (b *Buffer) DecodeStringBytes() (string, error) {
+	v, n := protowire.ConsumeString(b.buf[b.idx:])
+	if n < 0 {
+		return "", protowire.ParseError(n)
+	}
+	b.idx += n
+	return v, nil
+}
+
+// DecodeMessage consumes a length-prefixed message from the buffer.
+// It does not reset m before unmarshaling.
+func (b *Buffer) DecodeMessage(m Message) error {
+	v, err := b.DecodeRawBytes(false)
+	if err != nil {
+		return err
+	}
+	return UnmarshalMerge(v, m)
+}
+
+// DecodeGroup consumes a message group from the buffer.
+// It assumes that the start group marker has already been consumed and
+// consumes all bytes until (and including the end group marker).
+// It does not reset m before unmarshaling.
+func (b *Buffer) DecodeGroup(m Message) error {
+	v, n, err := consumeGroup(b.buf[b.idx:])
+	if err != nil {
+		return err
+	}
+	b.idx += n
+	return UnmarshalMerge(v, m)
+}
+
+// consumeGroup parses b until it finds an end group marker, returning
+// the raw bytes of the message (excluding the end group marker) and the
+// the total length of the message (including the end group marker).
+func consumeGroup(b []byte) ([]byte, int, error) {
+	b0 := b
+	depth := 1 // assume this follows a start group marker
+	for {
+		_, wtyp, tagLen := protowire.ConsumeTag(b)
+		if tagLen < 0 {
+			return nil, 0, protowire.ParseError(tagLen)
+		}
+		b = b[tagLen:]
+
+		var valLen int
+		switch wtyp {
+		case protowire.VarintType:
+			_, valLen = protowire.ConsumeVarint(b)
+		case protowire.Fixed32Type:
+			_, valLen = protowire.ConsumeFixed32(b)
+		case protowire.Fixed64Type:
+			_, valLen = protowire.ConsumeFixed64(b)
+		case protowire.BytesType:
+			_, valLen = protowire.ConsumeBytes(b)
+		case protowire.StartGroupType:
+			depth++
+		case protowire.EndGroupType:
+			depth--
+		default:
+			return nil, 0, errors.New("proto: cannot parse reserved wire type")
+		}
+		if valLen < 0 {
+			return nil, 0, protowire.ParseError(valLen)
+		}
+		b = b[valLen:]
+
+		if depth == 0 {
+			return b0[:len(b0)-len(b)-tagLen], len(b0) - len(b), nil
+		}
+	}
+}
diff --git a/vendor/github.com/golang/protobuf/proto/clone.go b/vendor/github.com/golang/protobuf/proto/clone.go
deleted file mode 100644
index 3cd3249..0000000
--- a/vendor/github.com/golang/protobuf/proto/clone.go
+++ /dev/null
@@ -1,253 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2011 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Protocol buffer deep copy and merge.
-// TODO: RawMessage.
-
-package proto
-
-import (
-	"fmt"
-	"log"
-	"reflect"
-	"strings"
-)
-
-// Clone returns a deep copy of a protocol buffer.
-func Clone(src Message) Message {
-	in := reflect.ValueOf(src)
-	if in.IsNil() {
-		return src
-	}
-	out := reflect.New(in.Type().Elem())
-	dst := out.Interface().(Message)
-	Merge(dst, src)
-	return dst
-}
-
-// Merger is the interface representing objects that can merge messages of the same type.
-type Merger interface {
-	// Merge merges src into this message.
-	// Required and optional fields that are set in src will be set to that value in dst.
-	// Elements of repeated fields will be appended.
-	//
-	// Merge may panic if called with a different argument type than the receiver.
-	Merge(src Message)
-}
-
-// generatedMerger is the custom merge method that generated protos will have.
-// We must add this method since a generate Merge method will conflict with
-// many existing protos that have a Merge data field already defined.
-type generatedMerger interface {
-	XXX_Merge(src Message)
-}
-
-// Merge merges src into dst.
-// Required and optional fields that are set in src will be set to that value in dst.
-// Elements of repeated fields will be appended.
-// Merge panics if src and dst are not the same type, or if dst is nil.
-func Merge(dst, src Message) {
-	if m, ok := dst.(Merger); ok {
-		m.Merge(src)
-		return
-	}
-
-	in := reflect.ValueOf(src)
-	out := reflect.ValueOf(dst)
-	if out.IsNil() {
-		panic("proto: nil destination")
-	}
-	if in.Type() != out.Type() {
-		panic(fmt.Sprintf("proto.Merge(%T, %T) type mismatch", dst, src))
-	}
-	if in.IsNil() {
-		return // Merge from nil src is a noop
-	}
-	if m, ok := dst.(generatedMerger); ok {
-		m.XXX_Merge(src)
-		return
-	}
-	mergeStruct(out.Elem(), in.Elem())
-}
-
-func mergeStruct(out, in reflect.Value) {
-	sprop := GetProperties(in.Type())
-	for i := 0; i < in.NumField(); i++ {
-		f := in.Type().Field(i)
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-		mergeAny(out.Field(i), in.Field(i), false, sprop.Prop[i])
-	}
-
-	if emIn, err := extendable(in.Addr().Interface()); err == nil {
-		emOut, _ := extendable(out.Addr().Interface())
-		mIn, muIn := emIn.extensionsRead()
-		if mIn != nil {
-			mOut := emOut.extensionsWrite()
-			muIn.Lock()
-			mergeExtension(mOut, mIn)
-			muIn.Unlock()
-		}
-	}
-
-	uf := in.FieldByName("XXX_unrecognized")
-	if !uf.IsValid() {
-		return
-	}
-	uin := uf.Bytes()
-	if len(uin) > 0 {
-		out.FieldByName("XXX_unrecognized").SetBytes(append([]byte(nil), uin...))
-	}
-}
-
-// mergeAny performs a merge between two values of the same type.
-// viaPtr indicates whether the values were indirected through a pointer (implying proto2).
-// prop is set if this is a struct field (it may be nil).
-func mergeAny(out, in reflect.Value, viaPtr bool, prop *Properties) {
-	if in.Type() == protoMessageType {
-		if !in.IsNil() {
-			if out.IsNil() {
-				out.Set(reflect.ValueOf(Clone(in.Interface().(Message))))
-			} else {
-				Merge(out.Interface().(Message), in.Interface().(Message))
-			}
-		}
-		return
-	}
-	switch in.Kind() {
-	case reflect.Bool, reflect.Float32, reflect.Float64, reflect.Int32, reflect.Int64,
-		reflect.String, reflect.Uint32, reflect.Uint64:
-		if !viaPtr && isProto3Zero(in) {
-			return
-		}
-		out.Set(in)
-	case reflect.Interface:
-		// Probably a oneof field; copy non-nil values.
-		if in.IsNil() {
-			return
-		}
-		// Allocate destination if it is not set, or set to a different type.
-		// Otherwise we will merge as normal.
-		if out.IsNil() || out.Elem().Type() != in.Elem().Type() {
-			out.Set(reflect.New(in.Elem().Elem().Type())) // interface -> *T -> T -> new(T)
-		}
-		mergeAny(out.Elem(), in.Elem(), false, nil)
-	case reflect.Map:
-		if in.Len() == 0 {
-			return
-		}
-		if out.IsNil() {
-			out.Set(reflect.MakeMap(in.Type()))
-		}
-		// For maps with value types of *T or []byte we need to deep copy each value.
-		elemKind := in.Type().Elem().Kind()
-		for _, key := range in.MapKeys() {
-			var val reflect.Value
-			switch elemKind {
-			case reflect.Ptr:
-				val = reflect.New(in.Type().Elem().Elem())
-				mergeAny(val, in.MapIndex(key), false, nil)
-			case reflect.Slice:
-				val = in.MapIndex(key)
-				val = reflect.ValueOf(append([]byte{}, val.Bytes()...))
-			default:
-				val = in.MapIndex(key)
-			}
-			out.SetMapIndex(key, val)
-		}
-	case reflect.Ptr:
-		if in.IsNil() {
-			return
-		}
-		if out.IsNil() {
-			out.Set(reflect.New(in.Elem().Type()))
-		}
-		mergeAny(out.Elem(), in.Elem(), true, nil)
-	case reflect.Slice:
-		if in.IsNil() {
-			return
-		}
-		if in.Type().Elem().Kind() == reflect.Uint8 {
-			// []byte is a scalar bytes field, not a repeated field.
-
-			// Edge case: if this is in a proto3 message, a zero length
-			// bytes field is considered the zero value, and should not
-			// be merged.
-			if prop != nil && prop.proto3 && in.Len() == 0 {
-				return
-			}
-
-			// Make a deep copy.
-			// Append to []byte{} instead of []byte(nil) so that we never end up
-			// with a nil result.
-			out.SetBytes(append([]byte{}, in.Bytes()...))
-			return
-		}
-		n := in.Len()
-		if out.IsNil() {
-			out.Set(reflect.MakeSlice(in.Type(), 0, n))
-		}
-		switch in.Type().Elem().Kind() {
-		case reflect.Bool, reflect.Float32, reflect.Float64, reflect.Int32, reflect.Int64,
-			reflect.String, reflect.Uint32, reflect.Uint64:
-			out.Set(reflect.AppendSlice(out, in))
-		default:
-			for i := 0; i < n; i++ {
-				x := reflect.Indirect(reflect.New(in.Type().Elem()))
-				mergeAny(x, in.Index(i), false, nil)
-				out.Set(reflect.Append(out, x))
-			}
-		}
-	case reflect.Struct:
-		mergeStruct(out, in)
-	default:
-		// unknown type, so not a protocol buffer
-		log.Printf("proto: don't know how to copy %v", in)
-	}
-}
-
-func mergeExtension(out, in map[int32]Extension) {
-	for extNum, eIn := range in {
-		eOut := Extension{desc: eIn.desc}
-		if eIn.value != nil {
-			v := reflect.New(reflect.TypeOf(eIn.value)).Elem()
-			mergeAny(v, reflect.ValueOf(eIn.value), false, nil)
-			eOut.value = v.Interface()
-		}
-		if eIn.enc != nil {
-			eOut.enc = make([]byte, len(eIn.enc))
-			copy(eOut.enc, eIn.enc)
-		}
-
-		out[extNum] = eOut
-	}
-}
diff --git a/vendor/github.com/golang/protobuf/proto/decode.go b/vendor/github.com/golang/protobuf/proto/decode.go
deleted file mode 100644
index 63b0f08..0000000
--- a/vendor/github.com/golang/protobuf/proto/decode.go
+++ /dev/null
@@ -1,427 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-/*
- * Routines for decoding protocol buffer data to construct in-memory representations.
- */
-
-import (
-	"errors"
-	"fmt"
-	"io"
-)
-
-// errOverflow is returned when an integer is too large to be represented.
-var errOverflow = errors.New("proto: integer overflow")
-
-// ErrInternalBadWireType is returned by generated code when an incorrect
-// wire type is encountered. It does not get returned to user code.
-var ErrInternalBadWireType = errors.New("proto: internal error: bad wiretype for oneof")
-
-// DecodeVarint reads a varint-encoded integer from the slice.
-// It returns the integer and the number of bytes consumed, or
-// zero if there is not enough.
-// This is the format for the
-// int32, int64, uint32, uint64, bool, and enum
-// protocol buffer types.
-func DecodeVarint(buf []byte) (x uint64, n int) {
-	for shift := uint(0); shift < 64; shift += 7 {
-		if n >= len(buf) {
-			return 0, 0
-		}
-		b := uint64(buf[n])
-		n++
-		x |= (b & 0x7F) << shift
-		if (b & 0x80) == 0 {
-			return x, n
-		}
-	}
-
-	// The number is too large to represent in a 64-bit value.
-	return 0, 0
-}
-
-func (p *Buffer) decodeVarintSlow() (x uint64, err error) {
-	i := p.index
-	l := len(p.buf)
-
-	for shift := uint(0); shift < 64; shift += 7 {
-		if i >= l {
-			err = io.ErrUnexpectedEOF
-			return
-		}
-		b := p.buf[i]
-		i++
-		x |= (uint64(b) & 0x7F) << shift
-		if b < 0x80 {
-			p.index = i
-			return
-		}
-	}
-
-	// The number is too large to represent in a 64-bit value.
-	err = errOverflow
-	return
-}
-
-// DecodeVarint reads a varint-encoded integer from the Buffer.
-// This is the format for the
-// int32, int64, uint32, uint64, bool, and enum
-// protocol buffer types.
-func (p *Buffer) DecodeVarint() (x uint64, err error) {
-	i := p.index
-	buf := p.buf
-
-	if i >= len(buf) {
-		return 0, io.ErrUnexpectedEOF
-	} else if buf[i] < 0x80 {
-		p.index++
-		return uint64(buf[i]), nil
-	} else if len(buf)-i < 10 {
-		return p.decodeVarintSlow()
-	}
-
-	var b uint64
-	// we already checked the first byte
-	x = uint64(buf[i]) - 0x80
-	i++
-
-	b = uint64(buf[i])
-	i++
-	x += b << 7
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 7
-
-	b = uint64(buf[i])
-	i++
-	x += b << 14
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 14
-
-	b = uint64(buf[i])
-	i++
-	x += b << 21
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 21
-
-	b = uint64(buf[i])
-	i++
-	x += b << 28
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 28
-
-	b = uint64(buf[i])
-	i++
-	x += b << 35
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 35
-
-	b = uint64(buf[i])
-	i++
-	x += b << 42
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 42
-
-	b = uint64(buf[i])
-	i++
-	x += b << 49
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 49
-
-	b = uint64(buf[i])
-	i++
-	x += b << 56
-	if b&0x80 == 0 {
-		goto done
-	}
-	x -= 0x80 << 56
-
-	b = uint64(buf[i])
-	i++
-	x += b << 63
-	if b&0x80 == 0 {
-		goto done
-	}
-
-	return 0, errOverflow
-
-done:
-	p.index = i
-	return x, nil
-}
-
-// DecodeFixed64 reads a 64-bit integer from the Buffer.
-// This is the format for the
-// fixed64, sfixed64, and double protocol buffer types.
-func (p *Buffer) DecodeFixed64() (x uint64, err error) {
-	// x, err already 0
-	i := p.index + 8
-	if i < 0 || i > len(p.buf) {
-		err = io.ErrUnexpectedEOF
-		return
-	}
-	p.index = i
-
-	x = uint64(p.buf[i-8])
-	x |= uint64(p.buf[i-7]) << 8
-	x |= uint64(p.buf[i-6]) << 16
-	x |= uint64(p.buf[i-5]) << 24
-	x |= uint64(p.buf[i-4]) << 32
-	x |= uint64(p.buf[i-3]) << 40
-	x |= uint64(p.buf[i-2]) << 48
-	x |= uint64(p.buf[i-1]) << 56
-	return
-}
-
-// DecodeFixed32 reads a 32-bit integer from the Buffer.
-// This is the format for the
-// fixed32, sfixed32, and float protocol buffer types.
-func (p *Buffer) DecodeFixed32() (x uint64, err error) {
-	// x, err already 0
-	i := p.index + 4
-	if i < 0 || i > len(p.buf) {
-		err = io.ErrUnexpectedEOF
-		return
-	}
-	p.index = i
-
-	x = uint64(p.buf[i-4])
-	x |= uint64(p.buf[i-3]) << 8
-	x |= uint64(p.buf[i-2]) << 16
-	x |= uint64(p.buf[i-1]) << 24
-	return
-}
-
-// DecodeZigzag64 reads a zigzag-encoded 64-bit integer
-// from the Buffer.
-// This is the format used for the sint64 protocol buffer type.
-func (p *Buffer) DecodeZigzag64() (x uint64, err error) {
-	x, err = p.DecodeVarint()
-	if err != nil {
-		return
-	}
-	x = (x >> 1) ^ uint64((int64(x&1)<<63)>>63)
-	return
-}
-
-// DecodeZigzag32 reads a zigzag-encoded 32-bit integer
-// from  the Buffer.
-// This is the format used for the sint32 protocol buffer type.
-func (p *Buffer) DecodeZigzag32() (x uint64, err error) {
-	x, err = p.DecodeVarint()
-	if err != nil {
-		return
-	}
-	x = uint64((uint32(x) >> 1) ^ uint32((int32(x&1)<<31)>>31))
-	return
-}
-
-// DecodeRawBytes reads a count-delimited byte buffer from the Buffer.
-// This is the format used for the bytes protocol buffer
-// type and for embedded messages.
-func (p *Buffer) DecodeRawBytes(alloc bool) (buf []byte, err error) {
-	n, err := p.DecodeVarint()
-	if err != nil {
-		return nil, err
-	}
-
-	nb := int(n)
-	if nb < 0 {
-		return nil, fmt.Errorf("proto: bad byte length %d", nb)
-	}
-	end := p.index + nb
-	if end < p.index || end > len(p.buf) {
-		return nil, io.ErrUnexpectedEOF
-	}
-
-	if !alloc {
-		// todo: check if can get more uses of alloc=false
-		buf = p.buf[p.index:end]
-		p.index += nb
-		return
-	}
-
-	buf = make([]byte, nb)
-	copy(buf, p.buf[p.index:])
-	p.index += nb
-	return
-}
-
-// DecodeStringBytes reads an encoded string from the Buffer.
-// This is the format used for the proto2 string type.
-func (p *Buffer) DecodeStringBytes() (s string, err error) {
-	buf, err := p.DecodeRawBytes(false)
-	if err != nil {
-		return
-	}
-	return string(buf), nil
-}
-
-// Unmarshaler is the interface representing objects that can
-// unmarshal themselves.  The argument points to data that may be
-// overwritten, so implementations should not keep references to the
-// buffer.
-// Unmarshal implementations should not clear the receiver.
-// Any unmarshaled data should be merged into the receiver.
-// Callers of Unmarshal that do not want to retain existing data
-// should Reset the receiver before calling Unmarshal.
-type Unmarshaler interface {
-	Unmarshal([]byte) error
-}
-
-// newUnmarshaler is the interface representing objects that can
-// unmarshal themselves. The semantics are identical to Unmarshaler.
-//
-// This exists to support protoc-gen-go generated messages.
-// The proto package will stop type-asserting to this interface in the future.
-//
-// DO NOT DEPEND ON THIS.
-type newUnmarshaler interface {
-	XXX_Unmarshal([]byte) error
-}
-
-// Unmarshal parses the protocol buffer representation in buf and places the
-// decoded result in pb.  If the struct underlying pb does not match
-// the data in buf, the results can be unpredictable.
-//
-// Unmarshal resets pb before starting to unmarshal, so any
-// existing data in pb is always removed. Use UnmarshalMerge
-// to preserve and append to existing data.
-func Unmarshal(buf []byte, pb Message) error {
-	pb.Reset()
-	if u, ok := pb.(newUnmarshaler); ok {
-		return u.XXX_Unmarshal(buf)
-	}
-	if u, ok := pb.(Unmarshaler); ok {
-		return u.Unmarshal(buf)
-	}
-	return NewBuffer(buf).Unmarshal(pb)
-}
-
-// UnmarshalMerge parses the protocol buffer representation in buf and
-// writes the decoded result to pb.  If the struct underlying pb does not match
-// the data in buf, the results can be unpredictable.
-//
-// UnmarshalMerge merges into existing data in pb.
-// Most code should use Unmarshal instead.
-func UnmarshalMerge(buf []byte, pb Message) error {
-	if u, ok := pb.(newUnmarshaler); ok {
-		return u.XXX_Unmarshal(buf)
-	}
-	if u, ok := pb.(Unmarshaler); ok {
-		// NOTE: The history of proto have unfortunately been inconsistent
-		// whether Unmarshaler should or should not implicitly clear itself.
-		// Some implementations do, most do not.
-		// Thus, calling this here may or may not do what people want.
-		//
-		// See https://github.com/golang/protobuf/issues/424
-		return u.Unmarshal(buf)
-	}
-	return NewBuffer(buf).Unmarshal(pb)
-}
-
-// DecodeMessage reads a count-delimited message from the Buffer.
-func (p *Buffer) DecodeMessage(pb Message) error {
-	enc, err := p.DecodeRawBytes(false)
-	if err != nil {
-		return err
-	}
-	return NewBuffer(enc).Unmarshal(pb)
-}
-
-// DecodeGroup reads a tag-delimited group from the Buffer.
-// StartGroup tag is already consumed. This function consumes
-// EndGroup tag.
-func (p *Buffer) DecodeGroup(pb Message) error {
-	b := p.buf[p.index:]
-	x, y := findEndGroup(b)
-	if x < 0 {
-		return io.ErrUnexpectedEOF
-	}
-	err := Unmarshal(b[:x], pb)
-	p.index += y
-	return err
-}
-
-// Unmarshal parses the protocol buffer representation in the
-// Buffer and places the decoded result in pb.  If the struct
-// underlying pb does not match the data in the buffer, the results can be
-// unpredictable.
-//
-// Unlike proto.Unmarshal, this does not reset pb before starting to unmarshal.
-func (p *Buffer) Unmarshal(pb Message) error {
-	// If the object can unmarshal itself, let it.
-	if u, ok := pb.(newUnmarshaler); ok {
-		err := u.XXX_Unmarshal(p.buf[p.index:])
-		p.index = len(p.buf)
-		return err
-	}
-	if u, ok := pb.(Unmarshaler); ok {
-		// NOTE: The history of proto have unfortunately been inconsistent
-		// whether Unmarshaler should or should not implicitly clear itself.
-		// Some implementations do, most do not.
-		// Thus, calling this here may or may not do what people want.
-		//
-		// See https://github.com/golang/protobuf/issues/424
-		err := u.Unmarshal(p.buf[p.index:])
-		p.index = len(p.buf)
-		return err
-	}
-
-	// Slow workaround for messages that aren't Unmarshalers.
-	// This includes some hand-coded .pb.go files and
-	// bootstrap protos.
-	// TODO: fix all of those and then add Unmarshal to
-	// the Message interface. Then:
-	// The cast above and code below can be deleted.
-	// The old unmarshaler can be deleted.
-	// Clients can call Unmarshal directly (can already do that, actually).
-	var info InternalMessageInfo
-	err := info.Unmarshal(pb, p.buf[p.index:])
-	p.index = len(p.buf)
-	return err
-}
diff --git a/vendor/github.com/golang/protobuf/proto/defaults.go b/vendor/github.com/golang/protobuf/proto/defaults.go
new file mode 100644
index 0000000..d399bf0
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/defaults.go
@@ -0,0 +1,63 @@
+// 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 proto
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// SetDefaults sets unpopulated scalar fields to their default values.
+// Fields within a oneof are not set even if they have a default value.
+// SetDefaults is recursively called upon any populated message fields.
+func SetDefaults(m Message) {
+	if m != nil {
+		setDefaults(MessageReflect(m))
+	}
+}
+
+func setDefaults(m protoreflect.Message) {
+	fds := m.Descriptor().Fields()
+	for i := 0; i < fds.Len(); i++ {
+		fd := fds.Get(i)
+		if !m.Has(fd) {
+			if fd.HasDefault() && fd.ContainingOneof() == nil {
+				v := fd.Default()
+				if fd.Kind() == protoreflect.BytesKind {
+					v = protoreflect.ValueOf(append([]byte(nil), v.Bytes()...)) // copy the default bytes
+				}
+				m.Set(fd, v)
+			}
+			continue
+		}
+	}
+
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		switch {
+		// Handle singular message.
+		case fd.Cardinality() != protoreflect.Repeated:
+			if fd.Message() != nil {
+				setDefaults(m.Get(fd).Message())
+			}
+		// Handle list of messages.
+		case fd.IsList():
+			if fd.Message() != nil {
+				ls := m.Get(fd).List()
+				for i := 0; i < ls.Len(); i++ {
+					setDefaults(ls.Get(i).Message())
+				}
+			}
+		// Handle map of messages.
+		case fd.IsMap():
+			if fd.MapValue().Message() != nil {
+				ms := m.Get(fd).Map()
+				ms.Range(func(_ protoreflect.MapKey, v protoreflect.Value) bool {
+					setDefaults(v.Message())
+					return true
+				})
+			}
+		}
+		return true
+	})
+}
diff --git a/vendor/github.com/golang/protobuf/proto/deprecated.go b/vendor/github.com/golang/protobuf/proto/deprecated.go
index 35b882c..e8db57e 100644
--- a/vendor/github.com/golang/protobuf/proto/deprecated.go
+++ b/vendor/github.com/golang/protobuf/proto/deprecated.go
@@ -1,63 +1,113 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2018 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+// 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.
 
 package proto
 
-import "errors"
+import (
+	"encoding/json"
+	"errors"
+	"fmt"
+	"strconv"
 
-// Deprecated: do not use.
+	protoV2 "google.golang.org/protobuf/proto"
+)
+
+var (
+	// Deprecated: No longer returned.
+	ErrNil = errors.New("proto: Marshal called with nil")
+
+	// Deprecated: No longer returned.
+	ErrTooLarge = errors.New("proto: message encodes to over 2 GB")
+
+	// Deprecated: No longer returned.
+	ErrInternalBadWireType = errors.New("proto: internal error: bad wiretype for oneof")
+)
+
+// Deprecated: Do not use.
 type Stats struct{ Emalloc, Dmalloc, Encode, Decode, Chit, Cmiss, Size uint64 }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func GetStats() Stats { return Stats{} }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func MarshalMessageSet(interface{}) ([]byte, error) {
 	return nil, errors.New("proto: not implemented")
 }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func UnmarshalMessageSet([]byte, interface{}) error {
 	return errors.New("proto: not implemented")
 }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func MarshalMessageSetJSON(interface{}) ([]byte, error) {
 	return nil, errors.New("proto: not implemented")
 }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func UnmarshalMessageSetJSON([]byte, interface{}) error {
 	return errors.New("proto: not implemented")
 }
 
-// Deprecated: do not use.
+// Deprecated: Do not use.
 func RegisterMessageSetType(Message, int32, string) {}
+
+// Deprecated: Do not use.
+func EnumName(m map[int32]string, v int32) string {
+	s, ok := m[v]
+	if ok {
+		return s
+	}
+	return strconv.Itoa(int(v))
+}
+
+// Deprecated: Do not use.
+func UnmarshalJSONEnum(m map[string]int32, data []byte, enumName string) (int32, error) {
+	if data[0] == '"' {
+		// New style: enums are strings.
+		var repr string
+		if err := json.Unmarshal(data, &repr); err != nil {
+			return -1, err
+		}
+		val, ok := m[repr]
+		if !ok {
+			return 0, fmt.Errorf("unrecognized enum %s value %q", enumName, repr)
+		}
+		return val, nil
+	}
+	// Old style: enums are ints.
+	var val int32
+	if err := json.Unmarshal(data, &val); err != nil {
+		return 0, fmt.Errorf("cannot unmarshal %#q into enum %s", data, enumName)
+	}
+	return val, nil
+}
+
+// Deprecated: Do not use; this type existed for intenal-use only.
+type InternalMessageInfo struct{}
+
+// Deprecated: Do not use; this method existed for intenal-use only.
+func (*InternalMessageInfo) DiscardUnknown(m Message) {
+	DiscardUnknown(m)
+}
+
+// Deprecated: Do not use; this method existed for intenal-use only.
+func (*InternalMessageInfo) Marshal(b []byte, m Message, deterministic bool) ([]byte, error) {
+	return protoV2.MarshalOptions{Deterministic: deterministic}.MarshalAppend(b, MessageV2(m))
+}
+
+// Deprecated: Do not use; this method existed for intenal-use only.
+func (*InternalMessageInfo) Merge(dst, src Message) {
+	protoV2.Merge(MessageV2(dst), MessageV2(src))
+}
+
+// Deprecated: Do not use; this method existed for intenal-use only.
+func (*InternalMessageInfo) Size(m Message) int {
+	return protoV2.Size(MessageV2(m))
+}
+
+// Deprecated: Do not use; this method existed for intenal-use only.
+func (*InternalMessageInfo) Unmarshal(m Message, b []byte) error {
+	return protoV2.UnmarshalOptions{Merge: true}.Unmarshal(b, MessageV2(m))
+}
diff --git a/vendor/github.com/golang/protobuf/proto/discard.go b/vendor/github.com/golang/protobuf/proto/discard.go
index dea2617..2187e87 100644
--- a/vendor/github.com/golang/protobuf/proto/discard.go
+++ b/vendor/github.com/golang/protobuf/proto/discard.go
@@ -1,48 +1,13 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2017 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+// 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 proto
 
 import (
-	"fmt"
-	"reflect"
-	"strings"
-	"sync"
-	"sync/atomic"
+	"google.golang.org/protobuf/reflect/protoreflect"
 )
 
-type generatedDiscarder interface {
-	XXX_DiscardUnknown()
-}
-
 // DiscardUnknown recursively discards all unknown fields from this message
 // and all embedded messages.
 //
@@ -51,300 +16,43 @@ type generatedDiscarder interface {
 // marshal to be able to produce a message that continues to have those
 // unrecognized fields. To avoid this, DiscardUnknown is used to
 // explicitly clear the unknown fields after unmarshaling.
-//
-// For proto2 messages, the unknown fields of message extensions are only
-// discarded from messages that have been accessed via GetExtension.
 func DiscardUnknown(m Message) {
-	if m, ok := m.(generatedDiscarder); ok {
-		m.XXX_DiscardUnknown()
-		return
-	}
-	// TODO: Dynamically populate a InternalMessageInfo for legacy messages,
-	// but the master branch has no implementation for InternalMessageInfo,
-	// so it would be more work to replicate that approach.
-	discardLegacy(m)
-}
-
-// DiscardUnknown recursively discards all unknown fields.
-func (a *InternalMessageInfo) DiscardUnknown(m Message) {
-	di := atomicLoadDiscardInfo(&a.discard)
-	if di == nil {
-		di = getDiscardInfo(reflect.TypeOf(m).Elem())
-		atomicStoreDiscardInfo(&a.discard, di)
-	}
-	di.discard(toPointer(&m))
-}
-
-type discardInfo struct {
-	typ reflect.Type
-
-	initialized int32 // 0: only typ is valid, 1: everything is valid
-	lock        sync.Mutex
-
-	fields       []discardFieldInfo
-	unrecognized field
-}
-
-type discardFieldInfo struct {
-	field   field // Offset of field, guaranteed to be valid
-	discard func(src pointer)
-}
-
-var (
-	discardInfoMap  = map[reflect.Type]*discardInfo{}
-	discardInfoLock sync.Mutex
-)
-
-func getDiscardInfo(t reflect.Type) *discardInfo {
-	discardInfoLock.Lock()
-	defer discardInfoLock.Unlock()
-	di := discardInfoMap[t]
-	if di == nil {
-		di = &discardInfo{typ: t}
-		discardInfoMap[t] = di
+	if m != nil {
+		discardUnknown(MessageReflect(m))
 	}
-	return di
 }
 
-func (di *discardInfo) discard(src pointer) {
-	if src.isNil() {
-		return // Nothing to do.
-	}
-
-	if atomic.LoadInt32(&di.initialized) == 0 {
-		di.computeDiscardInfo()
-	}
-
-	for _, fi := range di.fields {
-		sfp := src.offset(fi.field)
-		fi.discard(sfp)
-	}
-
-	// For proto2 messages, only discard unknown fields in message extensions
-	// that have been accessed via GetExtension.
-	if em, err := extendable(src.asPointerTo(di.typ).Interface()); err == nil {
-		// Ignore lock since DiscardUnknown is not concurrency safe.
-		emm, _ := em.extensionsRead()
-		for _, mx := range emm {
-			if m, ok := mx.value.(Message); ok {
-				DiscardUnknown(m)
+func discardUnknown(m protoreflect.Message) {
+	m.Range(func(fd protoreflect.FieldDescriptor, val protoreflect.Value) bool {
+		switch {
+		// Handle singular message.
+		case fd.Cardinality() != protoreflect.Repeated:
+			if fd.Message() != nil {
+				discardUnknown(m.Get(fd).Message())
 			}
-		}
-	}
-
-	if di.unrecognized.IsValid() {
-		*src.offset(di.unrecognized).toBytes() = nil
-	}
-}
-
-func (di *discardInfo) computeDiscardInfo() {
-	di.lock.Lock()
-	defer di.lock.Unlock()
-	if di.initialized != 0 {
-		return
-	}
-	t := di.typ
-	n := t.NumField()
-
-	for i := 0; i < n; i++ {
-		f := t.Field(i)
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-
-		dfi := discardFieldInfo{field: toField(&f)}
-		tf := f.Type
-
-		// Unwrap tf to get its most basic type.
-		var isPointer, isSlice bool
-		if tf.Kind() == reflect.Slice && tf.Elem().Kind() != reflect.Uint8 {
-			isSlice = true
-			tf = tf.Elem()
-		}
-		if tf.Kind() == reflect.Ptr {
-			isPointer = true
-			tf = tf.Elem()
-		}
-		if isPointer && isSlice && tf.Kind() != reflect.Struct {
-			panic(fmt.Sprintf("%v.%s cannot be a slice of pointers to primitive types", t, f.Name))
-		}
-
-		switch tf.Kind() {
-		case reflect.Struct:
-			switch {
-			case !isPointer:
-				panic(fmt.Sprintf("%v.%s cannot be a direct struct value", t, f.Name))
-			case isSlice: // E.g., []*pb.T
-				di := getDiscardInfo(tf)
-				dfi.discard = func(src pointer) {
-					sps := src.getPointerSlice()
-					for _, sp := range sps {
-						if !sp.isNil() {
-							di.discard(sp)
-						}
-					}
-				}
-			default: // E.g., *pb.T
-				di := getDiscardInfo(tf)
-				dfi.discard = func(src pointer) {
-					sp := src.getPointer()
-					if !sp.isNil() {
-						di.discard(sp)
-					}
+		// Handle list of messages.
+		case fd.IsList():
+			if fd.Message() != nil {
+				ls := m.Get(fd).List()
+				for i := 0; i < ls.Len(); i++ {
+					discardUnknown(ls.Get(i).Message())
 				}
 			}
-		case reflect.Map:
-			switch {
-			case isPointer || isSlice:
-				panic(fmt.Sprintf("%v.%s cannot be a pointer to a map or a slice of map values", t, f.Name))
-			default: // E.g., map[K]V
-				if tf.Elem().Kind() == reflect.Ptr { // Proto struct (e.g., *T)
-					dfi.discard = func(src pointer) {
-						sm := src.asPointerTo(tf).Elem()
-						if sm.Len() == 0 {
-							return
-						}
-						for _, key := range sm.MapKeys() {
-							val := sm.MapIndex(key)
-							DiscardUnknown(val.Interface().(Message))
-						}
-					}
-				} else {
-					dfi.discard = func(pointer) {} // Noop
-				}
-			}
-		case reflect.Interface:
-			// Must be oneof field.
-			switch {
-			case isPointer || isSlice:
-				panic(fmt.Sprintf("%v.%s cannot be a pointer to a interface or a slice of interface values", t, f.Name))
-			default: // E.g., interface{}
-				// TODO: Make this faster?
-				dfi.discard = func(src pointer) {
-					su := src.asPointerTo(tf).Elem()
-					if !su.IsNil() {
-						sv := su.Elem().Elem().Field(0)
-						if sv.Kind() == reflect.Ptr && sv.IsNil() {
-							return
-						}
-						switch sv.Type().Kind() {
-						case reflect.Ptr: // Proto struct (e.g., *T)
-							DiscardUnknown(sv.Interface().(Message))
-						}
-					}
-				}
+		// Handle map of messages.
+		case fd.IsMap():
+			if fd.MapValue().Message() != nil {
+				ms := m.Get(fd).Map()
+				ms.Range(func(_ protoreflect.MapKey, v protoreflect.Value) bool {
+					discardUnknown(v.Message())
+					return true
+				})
 			}
-		default:
-			continue
-		}
-		di.fields = append(di.fields, dfi)
-	}
-
-	di.unrecognized = invalidField
-	if f, ok := t.FieldByName("XXX_unrecognized"); ok {
-		if f.Type != reflect.TypeOf([]byte{}) {
-			panic("expected XXX_unrecognized to be of type []byte")
-		}
-		di.unrecognized = toField(&f)
-	}
-
-	atomic.StoreInt32(&di.initialized, 1)
-}
-
-func discardLegacy(m Message) {
-	v := reflect.ValueOf(m)
-	if v.Kind() != reflect.Ptr || v.IsNil() {
-		return
-	}
-	v = v.Elem()
-	if v.Kind() != reflect.Struct {
-		return
-	}
-	t := v.Type()
-
-	for i := 0; i < v.NumField(); i++ {
-		f := t.Field(i)
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
 		}
-		vf := v.Field(i)
-		tf := f.Type
+		return true
+	})
 
-		// Unwrap tf to get its most basic type.
-		var isPointer, isSlice bool
-		if tf.Kind() == reflect.Slice && tf.Elem().Kind() != reflect.Uint8 {
-			isSlice = true
-			tf = tf.Elem()
-		}
-		if tf.Kind() == reflect.Ptr {
-			isPointer = true
-			tf = tf.Elem()
-		}
-		if isPointer && isSlice && tf.Kind() != reflect.Struct {
-			panic(fmt.Sprintf("%T.%s cannot be a slice of pointers to primitive types", m, f.Name))
-		}
-
-		switch tf.Kind() {
-		case reflect.Struct:
-			switch {
-			case !isPointer:
-				panic(fmt.Sprintf("%T.%s cannot be a direct struct value", m, f.Name))
-			case isSlice: // E.g., []*pb.T
-				for j := 0; j < vf.Len(); j++ {
-					discardLegacy(vf.Index(j).Interface().(Message))
-				}
-			default: // E.g., *pb.T
-				discardLegacy(vf.Interface().(Message))
-			}
-		case reflect.Map:
-			switch {
-			case isPointer || isSlice:
-				panic(fmt.Sprintf("%T.%s cannot be a pointer to a map or a slice of map values", m, f.Name))
-			default: // E.g., map[K]V
-				tv := vf.Type().Elem()
-				if tv.Kind() == reflect.Ptr && tv.Implements(protoMessageType) { // Proto struct (e.g., *T)
-					for _, key := range vf.MapKeys() {
-						val := vf.MapIndex(key)
-						discardLegacy(val.Interface().(Message))
-					}
-				}
-			}
-		case reflect.Interface:
-			// Must be oneof field.
-			switch {
-			case isPointer || isSlice:
-				panic(fmt.Sprintf("%T.%s cannot be a pointer to a interface or a slice of interface values", m, f.Name))
-			default: // E.g., test_proto.isCommunique_Union interface
-				if !vf.IsNil() && f.Tag.Get("protobuf_oneof") != "" {
-					vf = vf.Elem() // E.g., *test_proto.Communique_Msg
-					if !vf.IsNil() {
-						vf = vf.Elem()   // E.g., test_proto.Communique_Msg
-						vf = vf.Field(0) // E.g., Proto struct (e.g., *T) or primitive value
-						if vf.Kind() == reflect.Ptr {
-							discardLegacy(vf.Interface().(Message))
-						}
-					}
-				}
-			}
-		}
-	}
-
-	if vf := v.FieldByName("XXX_unrecognized"); vf.IsValid() {
-		if vf.Type() != reflect.TypeOf([]byte{}) {
-			panic("expected XXX_unrecognized to be of type []byte")
-		}
-		vf.Set(reflect.ValueOf([]byte(nil)))
-	}
-
-	// For proto2 messages, only discard unknown fields in message extensions
-	// that have been accessed via GetExtension.
-	if em, err := extendable(m); err == nil {
-		// Ignore lock since discardLegacy is not concurrency safe.
-		emm, _ := em.extensionsRead()
-		for _, mx := range emm {
-			if m, ok := mx.value.(Message); ok {
-				discardLegacy(m)
-			}
-		}
+	// Discard unknown fields.
+	if len(m.GetUnknown()) > 0 {
+		m.SetUnknown(nil)
 	}
 }
diff --git a/vendor/github.com/golang/protobuf/proto/encode.go b/vendor/github.com/golang/protobuf/proto/encode.go
deleted file mode 100644
index 3abfed2..0000000
--- a/vendor/github.com/golang/protobuf/proto/encode.go
+++ /dev/null
@@ -1,203 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-/*
- * Routines for encoding data into the wire format for protocol buffers.
- */
-
-import (
-	"errors"
-	"reflect"
-)
-
-var (
-	// errRepeatedHasNil is the error returned if Marshal is called with
-	// a struct with a repeated field containing a nil element.
-	errRepeatedHasNil = errors.New("proto: repeated field has nil element")
-
-	// errOneofHasNil is the error returned if Marshal is called with
-	// a struct with a oneof field containing a nil element.
-	errOneofHasNil = errors.New("proto: oneof field has nil value")
-
-	// ErrNil is the error returned if Marshal is called with nil.
-	ErrNil = errors.New("proto: Marshal called with nil")
-
-	// ErrTooLarge is the error returned if Marshal is called with a
-	// message that encodes to >2GB.
-	ErrTooLarge = errors.New("proto: message encodes to over 2 GB")
-)
-
-// The fundamental encoders that put bytes on the wire.
-// Those that take integer types all accept uint64 and are
-// therefore of type valueEncoder.
-
-const maxVarintBytes = 10 // maximum length of a varint
-
-// EncodeVarint returns the varint encoding of x.
-// This is the format for the
-// int32, int64, uint32, uint64, bool, and enum
-// protocol buffer types.
-// Not used by the package itself, but helpful to clients
-// wishing to use the same encoding.
-func EncodeVarint(x uint64) []byte {
-	var buf [maxVarintBytes]byte
-	var n int
-	for n = 0; x > 127; n++ {
-		buf[n] = 0x80 | uint8(x&0x7F)
-		x >>= 7
-	}
-	buf[n] = uint8(x)
-	n++
-	return buf[0:n]
-}
-
-// EncodeVarint writes a varint-encoded integer to the Buffer.
-// This is the format for the
-// int32, int64, uint32, uint64, bool, and enum
-// protocol buffer types.
-func (p *Buffer) EncodeVarint(x uint64) error {
-	for x >= 1<<7 {
-		p.buf = append(p.buf, uint8(x&0x7f|0x80))
-		x >>= 7
-	}
-	p.buf = append(p.buf, uint8(x))
-	return nil
-}
-
-// SizeVarint returns the varint encoding size of an integer.
-func SizeVarint(x uint64) int {
-	switch {
-	case x < 1<<7:
-		return 1
-	case x < 1<<14:
-		return 2
-	case x < 1<<21:
-		return 3
-	case x < 1<<28:
-		return 4
-	case x < 1<<35:
-		return 5
-	case x < 1<<42:
-		return 6
-	case x < 1<<49:
-		return 7
-	case x < 1<<56:
-		return 8
-	case x < 1<<63:
-		return 9
-	}
-	return 10
-}
-
-// EncodeFixed64 writes a 64-bit integer to the Buffer.
-// This is the format for the
-// fixed64, sfixed64, and double protocol buffer types.
-func (p *Buffer) EncodeFixed64(x uint64) error {
-	p.buf = append(p.buf,
-		uint8(x),
-		uint8(x>>8),
-		uint8(x>>16),
-		uint8(x>>24),
-		uint8(x>>32),
-		uint8(x>>40),
-		uint8(x>>48),
-		uint8(x>>56))
-	return nil
-}
-
-// EncodeFixed32 writes a 32-bit integer to the Buffer.
-// This is the format for the
-// fixed32, sfixed32, and float protocol buffer types.
-func (p *Buffer) EncodeFixed32(x uint64) error {
-	p.buf = append(p.buf,
-		uint8(x),
-		uint8(x>>8),
-		uint8(x>>16),
-		uint8(x>>24))
-	return nil
-}
-
-// EncodeZigzag64 writes a zigzag-encoded 64-bit integer
-// to the Buffer.
-// This is the format used for the sint64 protocol buffer type.
-func (p *Buffer) EncodeZigzag64(x uint64) error {
-	// use signed number to get arithmetic right shift.
-	return p.EncodeVarint(uint64((x << 1) ^ uint64((int64(x) >> 63))))
-}
-
-// EncodeZigzag32 writes a zigzag-encoded 32-bit integer
-// to the Buffer.
-// This is the format used for the sint32 protocol buffer type.
-func (p *Buffer) EncodeZigzag32(x uint64) error {
-	// use signed number to get arithmetic right shift.
-	return p.EncodeVarint(uint64((uint32(x) << 1) ^ uint32((int32(x) >> 31))))
-}
-
-// EncodeRawBytes writes a count-delimited byte buffer to the Buffer.
-// This is the format used for the bytes protocol buffer
-// type and for embedded messages.
-func (p *Buffer) EncodeRawBytes(b []byte) error {
-	p.EncodeVarint(uint64(len(b)))
-	p.buf = append(p.buf, b...)
-	return nil
-}
-
-// EncodeStringBytes writes an encoded string to the Buffer.
-// This is the format used for the proto2 string type.
-func (p *Buffer) EncodeStringBytes(s string) error {
-	p.EncodeVarint(uint64(len(s)))
-	p.buf = append(p.buf, s...)
-	return nil
-}
-
-// Marshaler is the interface representing objects that can marshal themselves.
-type Marshaler interface {
-	Marshal() ([]byte, error)
-}
-
-// EncodeMessage writes the protocol buffer to the Buffer,
-// prefixed by a varint-encoded length.
-func (p *Buffer) EncodeMessage(pb Message) error {
-	siz := Size(pb)
-	p.EncodeVarint(uint64(siz))
-	return p.Marshal(pb)
-}
-
-// All protocol buffer fields are nillable, but be careful.
-func isNil(v reflect.Value) bool {
-	switch v.Kind() {
-	case reflect.Interface, reflect.Map, reflect.Ptr, reflect.Slice:
-		return v.IsNil()
-	}
-	return false
-}
diff --git a/vendor/github.com/golang/protobuf/proto/equal.go b/vendor/github.com/golang/protobuf/proto/equal.go
deleted file mode 100644
index f9b6e41..0000000
--- a/vendor/github.com/golang/protobuf/proto/equal.go
+++ /dev/null
@@ -1,301 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2011 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Protocol buffer comparison.
-
-package proto
-
-import (
-	"bytes"
-	"log"
-	"reflect"
-	"strings"
-)
-
-/*
-Equal returns true iff protocol buffers a and b are equal.
-The arguments must both be pointers to protocol buffer structs.
-
-Equality is defined in this way:
-  - Two messages are equal iff they are the same type,
-    corresponding fields are equal, unknown field sets
-    are equal, and extensions sets are equal.
-  - Two set scalar fields are equal iff their values are equal.
-    If the fields are of a floating-point type, remember that
-    NaN != x for all x, including NaN. If the message is defined
-    in a proto3 .proto file, fields are not "set"; specifically,
-    zero length proto3 "bytes" fields are equal (nil == {}).
-  - Two repeated fields are equal iff their lengths are the same,
-    and their corresponding elements are equal. Note a "bytes" field,
-    although represented by []byte, is not a repeated field and the
-    rule for the scalar fields described above applies.
-  - Two unset fields are equal.
-  - Two unknown field sets are equal if their current
-    encoded state is equal.
-  - Two extension sets are equal iff they have corresponding
-    elements that are pairwise equal.
-  - Two map fields are equal iff their lengths are the same,
-    and they contain the same set of elements. Zero-length map
-    fields are equal.
-  - Every other combination of things are not equal.
-
-The return value is undefined if a and b are not protocol buffers.
-*/
-func Equal(a, b Message) bool {
-	if a == nil || b == nil {
-		return a == b
-	}
-	v1, v2 := reflect.ValueOf(a), reflect.ValueOf(b)
-	if v1.Type() != v2.Type() {
-		return false
-	}
-	if v1.Kind() == reflect.Ptr {
-		if v1.IsNil() {
-			return v2.IsNil()
-		}
-		if v2.IsNil() {
-			return false
-		}
-		v1, v2 = v1.Elem(), v2.Elem()
-	}
-	if v1.Kind() != reflect.Struct {
-		return false
-	}
-	return equalStruct(v1, v2)
-}
-
-// v1 and v2 are known to have the same type.
-func equalStruct(v1, v2 reflect.Value) bool {
-	sprop := GetProperties(v1.Type())
-	for i := 0; i < v1.NumField(); i++ {
-		f := v1.Type().Field(i)
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-		f1, f2 := v1.Field(i), v2.Field(i)
-		if f.Type.Kind() == reflect.Ptr {
-			if n1, n2 := f1.IsNil(), f2.IsNil(); n1 && n2 {
-				// both unset
-				continue
-			} else if n1 != n2 {
-				// set/unset mismatch
-				return false
-			}
-			f1, f2 = f1.Elem(), f2.Elem()
-		}
-		if !equalAny(f1, f2, sprop.Prop[i]) {
-			return false
-		}
-	}
-
-	if em1 := v1.FieldByName("XXX_InternalExtensions"); em1.IsValid() {
-		em2 := v2.FieldByName("XXX_InternalExtensions")
-		if !equalExtensions(v1.Type(), em1.Interface().(XXX_InternalExtensions), em2.Interface().(XXX_InternalExtensions)) {
-			return false
-		}
-	}
-
-	if em1 := v1.FieldByName("XXX_extensions"); em1.IsValid() {
-		em2 := v2.FieldByName("XXX_extensions")
-		if !equalExtMap(v1.Type(), em1.Interface().(map[int32]Extension), em2.Interface().(map[int32]Extension)) {
-			return false
-		}
-	}
-
-	uf := v1.FieldByName("XXX_unrecognized")
-	if !uf.IsValid() {
-		return true
-	}
-
-	u1 := uf.Bytes()
-	u2 := v2.FieldByName("XXX_unrecognized").Bytes()
-	return bytes.Equal(u1, u2)
-}
-
-// v1 and v2 are known to have the same type.
-// prop may be nil.
-func equalAny(v1, v2 reflect.Value, prop *Properties) bool {
-	if v1.Type() == protoMessageType {
-		m1, _ := v1.Interface().(Message)
-		m2, _ := v2.Interface().(Message)
-		return Equal(m1, m2)
-	}
-	switch v1.Kind() {
-	case reflect.Bool:
-		return v1.Bool() == v2.Bool()
-	case reflect.Float32, reflect.Float64:
-		return v1.Float() == v2.Float()
-	case reflect.Int32, reflect.Int64:
-		return v1.Int() == v2.Int()
-	case reflect.Interface:
-		// Probably a oneof field; compare the inner values.
-		n1, n2 := v1.IsNil(), v2.IsNil()
-		if n1 || n2 {
-			return n1 == n2
-		}
-		e1, e2 := v1.Elem(), v2.Elem()
-		if e1.Type() != e2.Type() {
-			return false
-		}
-		return equalAny(e1, e2, nil)
-	case reflect.Map:
-		if v1.Len() != v2.Len() {
-			return false
-		}
-		for _, key := range v1.MapKeys() {
-			val2 := v2.MapIndex(key)
-			if !val2.IsValid() {
-				// This key was not found in the second map.
-				return false
-			}
-			if !equalAny(v1.MapIndex(key), val2, nil) {
-				return false
-			}
-		}
-		return true
-	case reflect.Ptr:
-		// Maps may have nil values in them, so check for nil.
-		if v1.IsNil() && v2.IsNil() {
-			return true
-		}
-		if v1.IsNil() != v2.IsNil() {
-			return false
-		}
-		return equalAny(v1.Elem(), v2.Elem(), prop)
-	case reflect.Slice:
-		if v1.Type().Elem().Kind() == reflect.Uint8 {
-			// short circuit: []byte
-
-			// Edge case: if this is in a proto3 message, a zero length
-			// bytes field is considered the zero value.
-			if prop != nil && prop.proto3 && v1.Len() == 0 && v2.Len() == 0 {
-				return true
-			}
-			if v1.IsNil() != v2.IsNil() {
-				return false
-			}
-			return bytes.Equal(v1.Interface().([]byte), v2.Interface().([]byte))
-		}
-
-		if v1.Len() != v2.Len() {
-			return false
-		}
-		for i := 0; i < v1.Len(); i++ {
-			if !equalAny(v1.Index(i), v2.Index(i), prop) {
-				return false
-			}
-		}
-		return true
-	case reflect.String:
-		return v1.Interface().(string) == v2.Interface().(string)
-	case reflect.Struct:
-		return equalStruct(v1, v2)
-	case reflect.Uint32, reflect.Uint64:
-		return v1.Uint() == v2.Uint()
-	}
-
-	// unknown type, so not a protocol buffer
-	log.Printf("proto: don't know how to compare %v", v1)
-	return false
-}
-
-// base is the struct type that the extensions are based on.
-// x1 and x2 are InternalExtensions.
-func equalExtensions(base reflect.Type, x1, x2 XXX_InternalExtensions) bool {
-	em1, _ := x1.extensionsRead()
-	em2, _ := x2.extensionsRead()
-	return equalExtMap(base, em1, em2)
-}
-
-func equalExtMap(base reflect.Type, em1, em2 map[int32]Extension) bool {
-	if len(em1) != len(em2) {
-		return false
-	}
-
-	for extNum, e1 := range em1 {
-		e2, ok := em2[extNum]
-		if !ok {
-			return false
-		}
-
-		m1 := extensionAsLegacyType(e1.value)
-		m2 := extensionAsLegacyType(e2.value)
-
-		if m1 == nil && m2 == nil {
-			// Both have only encoded form.
-			if bytes.Equal(e1.enc, e2.enc) {
-				continue
-			}
-			// The bytes are different, but the extensions might still be
-			// equal. We need to decode them to compare.
-		}
-
-		if m1 != nil && m2 != nil {
-			// Both are unencoded.
-			if !equalAny(reflect.ValueOf(m1), reflect.ValueOf(m2), nil) {
-				return false
-			}
-			continue
-		}
-
-		// At least one is encoded. To do a semantically correct comparison
-		// we need to unmarshal them first.
-		var desc *ExtensionDesc
-		if m := extensionMaps[base]; m != nil {
-			desc = m[extNum]
-		}
-		if desc == nil {
-			// If both have only encoded form and the bytes are the same,
-			// it is handled above. We get here when the bytes are different.
-			// We don't know how to decode it, so just compare them as byte
-			// slices.
-			log.Printf("proto: don't know how to compare extension %d of %v", extNum, base)
-			return false
-		}
-		var err error
-		if m1 == nil {
-			m1, err = decodeExtension(e1.enc, desc)
-		}
-		if m2 == nil && err == nil {
-			m2, err = decodeExtension(e2.enc, desc)
-		}
-		if err != nil {
-			// The encoded form is invalid.
-			log.Printf("proto: badly encoded extension %d of %v: %v", extNum, base, err)
-			return false
-		}
-		if !equalAny(reflect.ValueOf(m1), reflect.ValueOf(m2), nil) {
-			return false
-		}
-	}
-
-	return true
-}
diff --git a/vendor/github.com/golang/protobuf/proto/extensions.go b/vendor/github.com/golang/protobuf/proto/extensions.go
index fa88add..42fc120 100644
--- a/vendor/github.com/golang/protobuf/proto/extensions.go
+++ b/vendor/github.com/golang/protobuf/proto/extensions.go
@@ -1,607 +1,356 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+// Copyright 2010 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 proto
 
-/*
- * Types and routines for supporting protocol buffer extensions.
- */
-
 import (
 	"errors"
 	"fmt"
-	"io"
 	"reflect"
-	"strconv"
-	"sync"
-)
-
-// ErrMissingExtension is the error returned by GetExtension if the named extension is not in the message.
-var ErrMissingExtension = errors.New("proto: missing extension")
-
-// ExtensionRange represents a range of message extensions for a protocol buffer.
-// Used in code generated by the protocol compiler.
-type ExtensionRange struct {
-	Start, End int32 // both inclusive
-}
-
-// extendableProto is an interface implemented by any protocol buffer generated by the current
-// proto compiler that may be extended.
-type extendableProto interface {
-	Message
-	ExtensionRangeArray() []ExtensionRange
-	extensionsWrite() map[int32]Extension
-	extensionsRead() (map[int32]Extension, sync.Locker)
-}
-
-// extendableProtoV1 is an interface implemented by a protocol buffer generated by the previous
-// version of the proto compiler that may be extended.
-type extendableProtoV1 interface {
-	Message
-	ExtensionRangeArray() []ExtensionRange
-	ExtensionMap() map[int32]Extension
-}
 
-// extensionAdapter is a wrapper around extendableProtoV1 that implements extendableProto.
-type extensionAdapter struct {
-	extendableProtoV1
-}
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+	"google.golang.org/protobuf/runtime/protoiface"
+	"google.golang.org/protobuf/runtime/protoimpl"
+)
 
-func (e extensionAdapter) extensionsWrite() map[int32]Extension {
-	return e.ExtensionMap()
-}
+type (
+	// ExtensionDesc represents an extension descriptor and
+	// is used to interact with an extension field in a message.
+	//
+	// Variables of this type are generated in code by protoc-gen-go.
+	ExtensionDesc = protoimpl.ExtensionInfo
 
-func (e extensionAdapter) extensionsRead() (map[int32]Extension, sync.Locker) {
-	return e.ExtensionMap(), notLocker{}
-}
+	// ExtensionRange represents a range of message extensions.
+	// Used in code generated by protoc-gen-go.
+	ExtensionRange = protoiface.ExtensionRangeV1
 
-// notLocker is a sync.Locker whose Lock and Unlock methods are nops.
-type notLocker struct{}
+	// Deprecated: Do not use; this is an internal type.
+	Extension = protoimpl.ExtensionFieldV1
 
-func (n notLocker) Lock()   {}
-func (n notLocker) Unlock() {}
+	// Deprecated: Do not use; this is an internal type.
+	XXX_InternalExtensions = protoimpl.ExtensionFields
+)
 
-// extendable returns the extendableProto interface for the given generated proto message.
-// If the proto message has the old extension format, it returns a wrapper that implements
-// the extendableProto interface.
-func extendable(p interface{}) (extendableProto, error) {
-	switch p := p.(type) {
-	case extendableProto:
-		if isNilPtr(p) {
-			return nil, fmt.Errorf("proto: nil %T is not extendable", p)
-		}
-		return p, nil
-	case extendableProtoV1:
-		if isNilPtr(p) {
-			return nil, fmt.Errorf("proto: nil %T is not extendable", p)
-		}
-		return extensionAdapter{p}, nil
-	}
-	// Don't allocate a specific error containing %T:
-	// this is the hot path for Clone and MarshalText.
-	return nil, errNotExtendable
-}
+// ErrMissingExtension reports whether the extension was not present.
+var ErrMissingExtension = errors.New("proto: missing extension")
 
 var errNotExtendable = errors.New("proto: not an extendable proto.Message")
 
-func isNilPtr(x interface{}) bool {
-	v := reflect.ValueOf(x)
-	return v.Kind() == reflect.Ptr && v.IsNil()
-}
-
-// XXX_InternalExtensions is an internal representation of proto extensions.
-//
-// Each generated message struct type embeds an anonymous XXX_InternalExtensions field,
-// thus gaining the unexported 'extensions' method, which can be called only from the proto package.
-//
-// The methods of XXX_InternalExtensions are not concurrency safe in general,
-// but calls to logically read-only methods such as has and get may be executed concurrently.
-type XXX_InternalExtensions struct {
-	// The struct must be indirect so that if a user inadvertently copies a
-	// generated message and its embedded XXX_InternalExtensions, they
-	// avoid the mayhem of a copied mutex.
-	//
-	// The mutex serializes all logically read-only operations to p.extensionMap.
-	// It is up to the client to ensure that write operations to p.extensionMap are
-	// mutually exclusive with other accesses.
-	p *struct {
-		mu           sync.Mutex
-		extensionMap map[int32]Extension
+// HasExtension reports whether the extension field is present in m
+// either as an explicitly populated field or as an unknown field.
+func HasExtension(m Message, xt *ExtensionDesc) (has bool) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
+		return false
 	}
-}
 
-// extensionsWrite returns the extension map, creating it on first use.
-func (e *XXX_InternalExtensions) extensionsWrite() map[int32]Extension {
-	if e.p == nil {
-		e.p = new(struct {
-			mu           sync.Mutex
-			extensionMap map[int32]Extension
+	// Check whether any populated known field matches the field number.
+	xtd := xt.TypeDescriptor()
+	if isValidExtension(mr.Descriptor(), xtd) {
+		has = mr.Has(xtd)
+	} else {
+		mr.Range(func(fd protoreflect.FieldDescriptor, _ protoreflect.Value) bool {
+			has = int32(fd.Number()) == xt.Field
+			return !has
 		})
-		e.p.extensionMap = make(map[int32]Extension)
 	}
-	return e.p.extensionMap
-}
 
-// extensionsRead returns the extensions map for read-only use.  It may be nil.
-// The caller must hold the returned mutex's lock when accessing Elements within the map.
-func (e *XXX_InternalExtensions) extensionsRead() (map[int32]Extension, sync.Locker) {
-	if e.p == nil {
-		return nil, nil
+	// Check whether any unknown field matches the field number.
+	for b := mr.GetUnknown(); !has && len(b) > 0; {
+		num, _, n := protowire.ConsumeField(b)
+		has = int32(num) == xt.Field
+		b = b[n:]
 	}
-	return e.p.extensionMap, &e.p.mu
-}
-
-// ExtensionDesc represents an extension specification.
-// Used in generated code from the protocol compiler.
-type ExtensionDesc struct {
-	ExtendedType  Message     // nil pointer to the type that is being extended
-	ExtensionType interface{} // nil pointer to the extension type
-	Field         int32       // field number
-	Name          string      // fully-qualified name of extension, for text formatting
-	Tag           string      // protobuf tag style
-	Filename      string      // name of the file in which the extension is defined
-}
-
-func (ed *ExtensionDesc) repeated() bool {
-	t := reflect.TypeOf(ed.ExtensionType)
-	return t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8
-}
-
-// Extension represents an extension in a message.
-type Extension struct {
-	// When an extension is stored in a message using SetExtension
-	// only desc and value are set. When the message is marshaled
-	// enc will be set to the encoded form of the message.
-	//
-	// When a message is unmarshaled and contains extensions, each
-	// extension will have only enc set. When such an extension is
-	// accessed using GetExtension (or GetExtensions) desc and value
-	// will be set.
-	desc *ExtensionDesc
-
-	// value is a concrete value for the extension field. Let the type of
-	// desc.ExtensionType be the "API type" and the type of Extension.value
-	// be the "storage type". The API type and storage type are the same except:
-	//	* For scalars (except []byte), the API type uses *T,
-	//	while the storage type uses T.
-	//	* For repeated fields, the API type uses []T, while the storage type
-	//	uses *[]T.
-	//
-	// The reason for the divergence is so that the storage type more naturally
-	// matches what is expected of when retrieving the values through the
-	// protobuf reflection APIs.
-	//
-	// The value may only be populated if desc is also populated.
-	value interface{}
-
-	// enc is the raw bytes for the extension field.
-	enc []byte
+	return has
 }
 
-// SetRawExtension is for testing only.
-func SetRawExtension(base Message, id int32, b []byte) {
-	epb, err := extendable(base)
-	if err != nil {
+// ClearExtension removes the extension field from m
+// either as an explicitly populated field or as an unknown field.
+func ClearExtension(m Message, xt *ExtensionDesc) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
 		return
 	}
-	extmap := epb.extensionsWrite()
-	extmap[id] = Extension{enc: b}
-}
 
-// isExtensionField returns true iff the given field number is in an extension range.
-func isExtensionField(pb extendableProto, field int32) bool {
-	for _, er := range pb.ExtensionRangeArray() {
-		if er.Start <= field && field <= er.End {
+	xtd := xt.TypeDescriptor()
+	if isValidExtension(mr.Descriptor(), xtd) {
+		mr.Clear(xtd)
+	} else {
+		mr.Range(func(fd protoreflect.FieldDescriptor, _ protoreflect.Value) bool {
+			if int32(fd.Number()) == xt.Field {
+				mr.Clear(fd)
+				return false
+			}
 			return true
-		}
-	}
-	return false
-}
-
-// checkExtensionTypes checks that the given extension is valid for pb.
-func checkExtensionTypes(pb extendableProto, extension *ExtensionDesc) error {
-	var pbi interface{} = pb
-	// Check the extended type.
-	if ea, ok := pbi.(extensionAdapter); ok {
-		pbi = ea.extendableProtoV1
-	}
-	if a, b := reflect.TypeOf(pbi), reflect.TypeOf(extension.ExtendedType); a != b {
-		return fmt.Errorf("proto: bad extended type; %v does not extend %v", b, a)
-	}
-	// Check the range.
-	if !isExtensionField(pb, extension.Field) {
-		return errors.New("proto: bad extension number; not in declared ranges")
-	}
-	return nil
-}
-
-// extPropKey is sufficient to uniquely identify an extension.
-type extPropKey struct {
-	base  reflect.Type
-	field int32
-}
-
-var extProp = struct {
-	sync.RWMutex
-	m map[extPropKey]*Properties
-}{
-	m: make(map[extPropKey]*Properties),
-}
-
-func extensionProperties(ed *ExtensionDesc) *Properties {
-	key := extPropKey{base: reflect.TypeOf(ed.ExtendedType), field: ed.Field}
-
-	extProp.RLock()
-	if prop, ok := extProp.m[key]; ok {
-		extProp.RUnlock()
-		return prop
-	}
-	extProp.RUnlock()
-
-	extProp.Lock()
-	defer extProp.Unlock()
-	// Check again.
-	if prop, ok := extProp.m[key]; ok {
-		return prop
-	}
-
-	prop := new(Properties)
-	prop.Init(reflect.TypeOf(ed.ExtensionType), "unknown_name", ed.Tag, nil)
-	extProp.m[key] = prop
-	return prop
-}
-
-// HasExtension returns whether the given extension is present in pb.
-func HasExtension(pb Message, extension *ExtensionDesc) bool {
-	// TODO: Check types, field numbers, etc.?
-	epb, err := extendable(pb)
-	if err != nil {
-		return false
-	}
-	extmap, mu := epb.extensionsRead()
-	if extmap == nil {
-		return false
+		})
 	}
-	mu.Lock()
-	_, ok := extmap[extension.Field]
-	mu.Unlock()
-	return ok
+	clearUnknown(mr, fieldNum(xt.Field))
 }
 
-// ClearExtension removes the given extension from pb.
-func ClearExtension(pb Message, extension *ExtensionDesc) {
-	epb, err := extendable(pb)
-	if err != nil {
+// ClearAllExtensions clears all extensions from m.
+// This includes populated fields and unknown fields in the extension range.
+func ClearAllExtensions(m Message) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
 		return
 	}
-	// TODO: Check types, field numbers, etc.?
-	extmap := epb.extensionsWrite()
-	delete(extmap, extension.Field)
+
+	mr.Range(func(fd protoreflect.FieldDescriptor, _ protoreflect.Value) bool {
+		if fd.IsExtension() {
+			mr.Clear(fd)
+		}
+		return true
+	})
+	clearUnknown(mr, mr.Descriptor().ExtensionRanges())
 }
 
-// GetExtension retrieves a proto2 extended field from pb.
+// GetExtension retrieves a proto2 extended field from m.
 //
 // If the descriptor is type complete (i.e., ExtensionDesc.ExtensionType is non-nil),
 // then GetExtension parses the encoded field and returns a Go value of the specified type.
 // If the field is not present, then the default value is returned (if one is specified),
 // otherwise ErrMissingExtension is reported.
 //
-// If the descriptor is not type complete (i.e., ExtensionDesc.ExtensionType is nil),
-// then GetExtension returns the raw encoded bytes of the field extension.
-func GetExtension(pb Message, extension *ExtensionDesc) (interface{}, error) {
-	epb, err := extendable(pb)
-	if err != nil {
-		return nil, err
-	}
-
-	if extension.ExtendedType != nil {
-		// can only check type if this is a complete descriptor
-		if err := checkExtensionTypes(epb, extension); err != nil {
-			return nil, err
+// If the descriptor is type incomplete (i.e., ExtensionDesc.ExtensionType is nil),
+// then GetExtension returns the raw encoded bytes for the extension field.
+func GetExtension(m Message, xt *ExtensionDesc) (interface{}, error) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() || mr.Descriptor().ExtensionRanges().Len() == 0 {
+		return nil, errNotExtendable
+	}
+
+	// Retrieve the unknown fields for this extension field.
+	var bo protoreflect.RawFields
+	for bi := mr.GetUnknown(); len(bi) > 0; {
+		num, _, n := protowire.ConsumeField(bi)
+		if int32(num) == xt.Field {
+			bo = append(bo, bi[:n]...)
 		}
+		bi = bi[n:]
 	}
 
-	emap, mu := epb.extensionsRead()
-	if emap == nil {
-		return defaultExtensionValue(extension)
-	}
-	mu.Lock()
-	defer mu.Unlock()
-	e, ok := emap[extension.Field]
-	if !ok {
-		// defaultExtensionValue returns the default value or
-		// ErrMissingExtension if there is no default.
-		return defaultExtensionValue(extension)
-	}
-
-	if e.value != nil {
-		// Already decoded. Check the descriptor, though.
-		if e.desc != extension {
-			// This shouldn't happen. If it does, it means that
-			// GetExtension was called twice with two different
-			// descriptors with the same field number.
-			return nil, errors.New("proto: descriptor conflict")
-		}
-		return extensionAsLegacyType(e.value), nil
+	// For type incomplete descriptors, only retrieve the unknown fields.
+	if xt.ExtensionType == nil {
+		return []byte(bo), nil
 	}
 
-	if extension.ExtensionType == nil {
-		// incomplete descriptor
-		return e.enc, nil
+	// If the extension field only exists as unknown fields, unmarshal it.
+	// This is rarely done since proto.Unmarshal eagerly unmarshals extensions.
+	xtd := xt.TypeDescriptor()
+	if !isValidExtension(mr.Descriptor(), xtd) {
+		return nil, fmt.Errorf("proto: bad extended type; %T does not extend %T", xt.ExtendedType, m)
 	}
-
-	v, err := decodeExtension(e.enc, extension)
-	if err != nil {
-		return nil, err
+	if !mr.Has(xtd) && len(bo) > 0 {
+		m2 := mr.New()
+		if err := (proto.UnmarshalOptions{
+			Resolver: extensionResolver{xt},
+		}.Unmarshal(bo, m2.Interface())); err != nil {
+			return nil, err
+		}
+		if m2.Has(xtd) {
+			mr.Set(xtd, m2.Get(xtd))
+			clearUnknown(mr, fieldNum(xt.Field))
+		}
 	}
 
-	// Remember the decoded version and drop the encoded version.
-	// That way it is safe to mutate what we return.
-	e.value = extensionAsStorageType(v)
-	e.desc = extension
-	e.enc = nil
-	emap[extension.Field] = e
-	return extensionAsLegacyType(e.value), nil
-}
-
-// defaultExtensionValue returns the default value for extension.
-// If no default for an extension is defined ErrMissingExtension is returned.
-func defaultExtensionValue(extension *ExtensionDesc) (interface{}, error) {
-	if extension.ExtensionType == nil {
-		// incomplete descriptor, so no default
+	// Check whether the message has the extension field set or a default.
+	var pv protoreflect.Value
+	switch {
+	case mr.Has(xtd):
+		pv = mr.Get(xtd)
+	case xtd.HasDefault():
+		pv = xtd.Default()
+	default:
 		return nil, ErrMissingExtension
 	}
 
-	t := reflect.TypeOf(extension.ExtensionType)
-	props := extensionProperties(extension)
-
-	sf, _, err := fieldDefault(t, props)
-	if err != nil {
-		return nil, err
-	}
-
-	if sf == nil || sf.value == nil {
-		// There is no default value.
-		return nil, ErrMissingExtension
+	v := xt.InterfaceOf(pv)
+	rv := reflect.ValueOf(v)
+	if isScalarKind(rv.Kind()) {
+		rv2 := reflect.New(rv.Type())
+		rv2.Elem().Set(rv)
+		v = rv2.Interface()
 	}
+	return v, nil
+}
 
-	if t.Kind() != reflect.Ptr {
-		// We do not need to return a Ptr, we can directly return sf.value.
-		return sf.value, nil
-	}
+// extensionResolver is a custom extension resolver that stores a single
+// extension type that takes precedence over the global registry.
+type extensionResolver struct{ xt protoreflect.ExtensionType }
 
-	// We need to return an interface{} that is a pointer to sf.value.
-	value := reflect.New(t).Elem()
-	value.Set(reflect.New(value.Type().Elem()))
-	if sf.kind == reflect.Int32 {
-		// We may have an int32 or an enum, but the underlying data is int32.
-		// Since we can't set an int32 into a non int32 reflect.value directly
-		// set it as a int32.
-		value.Elem().SetInt(int64(sf.value.(int32)))
-	} else {
-		value.Elem().Set(reflect.ValueOf(sf.value))
+func (r extensionResolver) FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error) {
+	if xtd := r.xt.TypeDescriptor(); xtd.FullName() == field {
+		return r.xt, nil
 	}
-	return value.Interface(), nil
+	return protoregistry.GlobalTypes.FindExtensionByName(field)
 }
 
-// decodeExtension decodes an extension encoded in b.
-func decodeExtension(b []byte, extension *ExtensionDesc) (interface{}, error) {
-	t := reflect.TypeOf(extension.ExtensionType)
-	unmarshal := typeUnmarshaler(t, extension.Tag)
-
-	// t is a pointer to a struct, pointer to basic type or a slice.
-	// Allocate space to store the pointer/slice.
-	value := reflect.New(t).Elem()
-
-	var err error
-	for {
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		wire := int(x) & 7
-
-		b, err = unmarshal(b, valToPointer(value.Addr()), wire)
-		if err != nil {
-			return nil, err
-		}
-
-		if len(b) == 0 {
-			break
-		}
+func (r extensionResolver) FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error) {
+	if xtd := r.xt.TypeDescriptor(); xtd.ContainingMessage().FullName() == message && xtd.Number() == field {
+		return r.xt, nil
 	}
-	return value.Interface(), nil
+	return protoregistry.GlobalTypes.FindExtensionByNumber(message, field)
 }
 
-// GetExtensions returns a slice of the extensions present in pb that are also listed in es.
-// The returned slice has the same length as es; missing extensions will appear as nil elements.
-func GetExtensions(pb Message, es []*ExtensionDesc) (extensions []interface{}, err error) {
-	epb, err := extendable(pb)
-	if err != nil {
-		return nil, err
+// GetExtensions returns a list of the extensions values present in m,
+// corresponding with the provided list of extension descriptors, xts.
+// If an extension is missing in m, the corresponding value is nil.
+func GetExtensions(m Message, xts []*ExtensionDesc) ([]interface{}, error) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
+		return nil, errNotExtendable
 	}
-	extensions = make([]interface{}, len(es))
-	for i, e := range es {
-		extensions[i], err = GetExtension(epb, e)
-		if err == ErrMissingExtension {
-			err = nil
-		}
+
+	vs := make([]interface{}, len(xts))
+	for i, xt := range xts {
+		v, err := GetExtension(m, xt)
 		if err != nil {
-			return
+			if err == ErrMissingExtension {
+				continue
+			}
+			return vs, err
 		}
+		vs[i] = v
 	}
-	return
+	return vs, nil
 }
 
-// ExtensionDescs returns a new slice containing pb's extension descriptors, in undefined order.
-// For non-registered extensions, ExtensionDescs returns an incomplete descriptor containing
-// just the Field field, which defines the extension's field number.
-func ExtensionDescs(pb Message) ([]*ExtensionDesc, error) {
-	epb, err := extendable(pb)
-	if err != nil {
-		return nil, err
+// SetExtension sets an extension field in m to the provided value.
+func SetExtension(m Message, xt *ExtensionDesc, v interface{}) error {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() || mr.Descriptor().ExtensionRanges().Len() == 0 {
+		return errNotExtendable
 	}
-	registeredExtensions := RegisteredExtensions(pb)
 
-	emap, mu := epb.extensionsRead()
-	if emap == nil {
-		return nil, nil
+	rv := reflect.ValueOf(v)
+	if reflect.TypeOf(v) != reflect.TypeOf(xt.ExtensionType) {
+		return fmt.Errorf("proto: bad extension value type. got: %T, want: %T", v, xt.ExtensionType)
 	}
-	mu.Lock()
-	defer mu.Unlock()
-	extensions := make([]*ExtensionDesc, 0, len(emap))
-	for extid, e := range emap {
-		desc := e.desc
-		if desc == nil {
-			desc = registeredExtensions[extid]
-			if desc == nil {
-				desc = &ExtensionDesc{Field: extid}
-			}
+	if rv.Kind() == reflect.Ptr {
+		if rv.IsNil() {
+			return fmt.Errorf("proto: SetExtension called with nil value of type %T", v)
+		}
+		if isScalarKind(rv.Elem().Kind()) {
+			v = rv.Elem().Interface()
 		}
-
-		extensions = append(extensions, desc)
 	}
-	return extensions, nil
-}
 
-// SetExtension sets the specified extension of pb to the specified value.
-func SetExtension(pb Message, extension *ExtensionDesc, value interface{}) error {
-	epb, err := extendable(pb)
-	if err != nil {
-		return err
-	}
-	if err := checkExtensionTypes(epb, extension); err != nil {
-		return err
-	}
-	typ := reflect.TypeOf(extension.ExtensionType)
-	if typ != reflect.TypeOf(value) {
-		return fmt.Errorf("proto: bad extension value type. got: %T, want: %T", value, extension.ExtensionType)
+	xtd := xt.TypeDescriptor()
+	if !isValidExtension(mr.Descriptor(), xtd) {
+		return fmt.Errorf("proto: bad extended type; %T does not extend %T", xt.ExtendedType, m)
 	}
-	// nil extension values need to be caught early, because the
-	// encoder can't distinguish an ErrNil due to a nil extension
-	// from an ErrNil due to a missing field. Extensions are
-	// always optional, so the encoder would just swallow the error
-	// and drop all the extensions from the encoded message.
-	if reflect.ValueOf(value).IsNil() {
-		return fmt.Errorf("proto: SetExtension called with nil value of type %T", value)
-	}
-
-	extmap := epb.extensionsWrite()
-	extmap[extension.Field] = Extension{desc: extension, value: extensionAsStorageType(value)}
+	mr.Set(xtd, xt.ValueOf(v))
+	clearUnknown(mr, fieldNum(xt.Field))
 	return nil
 }
 
-// ClearAllExtensions clears all extensions from pb.
-func ClearAllExtensions(pb Message) {
-	epb, err := extendable(pb)
-	if err != nil {
+// SetRawExtension inserts b into the unknown fields of m.
+//
+// Deprecated: Use Message.ProtoReflect.SetUnknown instead.
+func SetRawExtension(m Message, fnum int32, b []byte) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
 		return
 	}
-	m := epb.extensionsWrite()
-	for k := range m {
-		delete(m, k)
+
+	// Verify that the raw field is valid.
+	for b0 := b; len(b0) > 0; {
+		num, _, n := protowire.ConsumeField(b0)
+		if int32(num) != fnum {
+			panic(fmt.Sprintf("mismatching field number: got %d, want %d", num, fnum))
+		}
+		b0 = b0[n:]
 	}
-}
 
-// A global registry of extensions.
-// The generated code will register the generated descriptors by calling RegisterExtension.
+	ClearExtension(m, &ExtensionDesc{Field: fnum})
+	mr.SetUnknown(append(mr.GetUnknown(), b...))
+}
 
-var extensionMaps = make(map[reflect.Type]map[int32]*ExtensionDesc)
+// ExtensionDescs returns a list of extension descriptors found in m,
+// containing descriptors for both populated extension fields in m and
+// also unknown fields of m that are in the extension range.
+// For the later case, an type incomplete descriptor is provided where only
+// the ExtensionDesc.Field field is populated.
+// The order of the extension descriptors is undefined.
+func ExtensionDescs(m Message) ([]*ExtensionDesc, error) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() || mr.Descriptor().ExtensionRanges().Len() == 0 {
+		return nil, errNotExtendable
+	}
 
-// RegisterExtension is called from the generated code.
-func RegisterExtension(desc *ExtensionDesc) {
-	st := reflect.TypeOf(desc.ExtendedType).Elem()
-	m := extensionMaps[st]
-	if m == nil {
-		m = make(map[int32]*ExtensionDesc)
-		extensionMaps[st] = m
+	// Collect a set of known extension descriptors.
+	extDescs := make(map[protoreflect.FieldNumber]*ExtensionDesc)
+	mr.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		if fd.IsExtension() {
+			xt := fd.(protoreflect.ExtensionTypeDescriptor)
+			if xd, ok := xt.Type().(*ExtensionDesc); ok {
+				extDescs[fd.Number()] = xd
+			}
+		}
+		return true
+	})
+
+	// Collect a set of unknown extension descriptors.
+	extRanges := mr.Descriptor().ExtensionRanges()
+	for b := mr.GetUnknown(); len(b) > 0; {
+		num, _, n := protowire.ConsumeField(b)
+		if extRanges.Has(num) && extDescs[num] == nil {
+			extDescs[num] = nil
+		}
+		b = b[n:]
 	}
-	if _, ok := m[desc.Field]; ok {
-		panic("proto: duplicate extension registered: " + st.String() + " " + strconv.Itoa(int(desc.Field)))
+
+	// Transpose the set of descriptors into a list.
+	var xts []*ExtensionDesc
+	for num, xt := range extDescs {
+		if xt == nil {
+			xt = &ExtensionDesc{Field: int32(num)}
+		}
+		xts = append(xts, xt)
 	}
-	m[desc.Field] = desc
+	return xts, nil
 }
 
-// RegisteredExtensions returns a map of the registered extensions of a
-// protocol buffer struct, indexed by the extension number.
-// The argument pb should be a nil pointer to the struct type.
-func RegisteredExtensions(pb Message) map[int32]*ExtensionDesc {
-	return extensionMaps[reflect.TypeOf(pb).Elem()]
+// isValidExtension reports whether xtd is a valid extension descriptor for md.
+func isValidExtension(md protoreflect.MessageDescriptor, xtd protoreflect.ExtensionTypeDescriptor) bool {
+	return xtd.ContainingMessage() == md && md.ExtensionRanges().Has(xtd.Number())
 }
 
-// extensionAsLegacyType converts an value in the storage type as the API type.
-// See Extension.value.
-func extensionAsLegacyType(v interface{}) interface{} {
-	switch rv := reflect.ValueOf(v); rv.Kind() {
+// isScalarKind reports whether k is a protobuf scalar kind (except bytes).
+// This function exists for historical reasons since the representation of
+// scalars differs between v1 and v2, where v1 uses *T and v2 uses T.
+func isScalarKind(k reflect.Kind) bool {
+	switch k {
 	case reflect.Bool, reflect.Int32, reflect.Int64, reflect.Uint32, reflect.Uint64, reflect.Float32, reflect.Float64, reflect.String:
-		// Represent primitive types as a pointer to the value.
-		rv2 := reflect.New(rv.Type())
-		rv2.Elem().Set(rv)
-		v = rv2.Interface()
-	case reflect.Ptr:
-		// Represent slice types as the value itself.
-		switch rv.Type().Elem().Kind() {
-		case reflect.Slice:
-			if rv.IsNil() {
-				v = reflect.Zero(rv.Type().Elem()).Interface()
-			} else {
-				v = rv.Elem().Interface()
-			}
-		}
+		return true
+	default:
+		return false
 	}
-	return v
 }
 
-// extensionAsStorageType converts an value in the API type as the storage type.
-// See Extension.value.
-func extensionAsStorageType(v interface{}) interface{} {
-	switch rv := reflect.ValueOf(v); rv.Kind() {
-	case reflect.Ptr:
-		// Represent slice types as the value itself.
-		switch rv.Type().Elem().Kind() {
-		case reflect.Bool, reflect.Int32, reflect.Int64, reflect.Uint32, reflect.Uint64, reflect.Float32, reflect.Float64, reflect.String:
-			if rv.IsNil() {
-				v = reflect.Zero(rv.Type().Elem()).Interface()
-			} else {
-				v = rv.Elem().Interface()
-			}
-		}
-	case reflect.Slice:
-		// Represent slice types as a pointer to the value.
-		if rv.Type().Elem().Kind() != reflect.Uint8 {
-			rv2 := reflect.New(rv.Type())
-			rv2.Elem().Set(rv)
-			v = rv2.Interface()
+// clearUnknown removes unknown fields from m where remover.Has reports true.
+func clearUnknown(m protoreflect.Message, remover interface {
+	Has(protoreflect.FieldNumber) bool
+}) {
+	var bo protoreflect.RawFields
+	for bi := m.GetUnknown(); len(bi) > 0; {
+		num, _, n := protowire.ConsumeField(bi)
+		if !remover.Has(num) {
+			bo = append(bo, bi[:n]...)
 		}
+		bi = bi[n:]
 	}
-	return v
+	if bi := m.GetUnknown(); len(bi) != len(bo) {
+		m.SetUnknown(bo)
+	}
+}
+
+type fieldNum protoreflect.FieldNumber
+
+func (n1 fieldNum) Has(n2 protoreflect.FieldNumber) bool {
+	return protoreflect.FieldNumber(n1) == n2
 }
diff --git a/vendor/github.com/golang/protobuf/proto/lib.go b/vendor/github.com/golang/protobuf/proto/lib.go
deleted file mode 100644
index fdd328b..0000000
--- a/vendor/github.com/golang/protobuf/proto/lib.go
+++ /dev/null
@@ -1,965 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-/*
-Package proto converts data structures to and from the wire format of
-protocol buffers.  It works in concert with the Go source code generated
-for .proto files by the protocol compiler.
-
-A summary of the properties of the protocol buffer interface
-for a protocol buffer variable v:
-
-  - Names are turned from camel_case to CamelCase for export.
-  - There are no methods on v to set fields; just treat
-	them as structure fields.
-  - There are getters that return a field's value if set,
-	and return the field's default value if unset.
-	The getters work even if the receiver is a nil message.
-  - The zero value for a struct is its correct initialization state.
-	All desired fields must be set before marshaling.
-  - A Reset() method will restore a protobuf struct to its zero state.
-  - Non-repeated fields are pointers to the values; nil means unset.
-	That is, optional or required field int32 f becomes F *int32.
-  - Repeated fields are slices.
-  - Helper functions are available to aid the setting of fields.
-	msg.Foo = proto.String("hello") // set field
-  - Constants are defined to hold the default values of all fields that
-	have them.  They have the form Default_StructName_FieldName.
-	Because the getter methods handle defaulted values,
-	direct use of these constants should be rare.
-  - Enums are given type names and maps from names to values.
-	Enum values are prefixed by the enclosing message's name, or by the
-	enum's type name if it is a top-level enum. Enum types have a String
-	method, and a Enum method to assist in message construction.
-  - Nested messages, groups and enums have type names prefixed with the name of
-	the surrounding message type.
-  - Extensions are given descriptor names that start with E_,
-	followed by an underscore-delimited list of the nested messages
-	that contain it (if any) followed by the CamelCased name of the
-	extension field itself.  HasExtension, ClearExtension, GetExtension
-	and SetExtension are functions for manipulating extensions.
-  - Oneof field sets are given a single field in their message,
-	with distinguished wrapper types for each possible field value.
-  - Marshal and Unmarshal are functions to encode and decode the wire format.
-
-When the .proto file specifies `syntax="proto3"`, there are some differences:
-
-  - Non-repeated fields of non-message type are values instead of pointers.
-  - Enum types do not get an Enum method.
-
-The simplest way to describe this is to see an example.
-Given file test.proto, containing
-
-	package example;
-
-	enum FOO { X = 17; }
-
-	message Test {
-	  required string label = 1;
-	  optional int32 type = 2 [default=77];
-	  repeated int64 reps = 3;
-	  optional group OptionalGroup = 4 {
-	    required string RequiredField = 5;
-	  }
-	  oneof union {
-	    int32 number = 6;
-	    string name = 7;
-	  }
-	}
-
-The resulting file, test.pb.go, is:
-
-	package example
-
-	import proto "github.com/golang/protobuf/proto"
-	import math "math"
-
-	type FOO int32
-	const (
-		FOO_X FOO = 17
-	)
-	var FOO_name = map[int32]string{
-		17: "X",
-	}
-	var FOO_value = map[string]int32{
-		"X": 17,
-	}
-
-	func (x FOO) Enum() *FOO {
-		p := new(FOO)
-		*p = x
-		return p
-	}
-	func (x FOO) String() string {
-		return proto.EnumName(FOO_name, int32(x))
-	}
-	func (x *FOO) UnmarshalJSON(data []byte) error {
-		value, err := proto.UnmarshalJSONEnum(FOO_value, data)
-		if err != nil {
-			return err
-		}
-		*x = FOO(value)
-		return nil
-	}
-
-	type Test struct {
-		Label         *string             `protobuf:"bytes,1,req,name=label" json:"label,omitempty"`
-		Type          *int32              `protobuf:"varint,2,opt,name=type,def=77" json:"type,omitempty"`
-		Reps          []int64             `protobuf:"varint,3,rep,name=reps" json:"reps,omitempty"`
-		Optionalgroup *Test_OptionalGroup `protobuf:"group,4,opt,name=OptionalGroup" json:"optionalgroup,omitempty"`
-		// Types that are valid to be assigned to Union:
-		//	*Test_Number
-		//	*Test_Name
-		Union            isTest_Union `protobuf_oneof:"union"`
-		XXX_unrecognized []byte       `json:"-"`
-	}
-	func (m *Test) Reset()         { *m = Test{} }
-	func (m *Test) String() string { return proto.CompactTextString(m) }
-	func (*Test) ProtoMessage() {}
-
-	type isTest_Union interface {
-		isTest_Union()
-	}
-
-	type Test_Number struct {
-		Number int32 `protobuf:"varint,6,opt,name=number"`
-	}
-	type Test_Name struct {
-		Name string `protobuf:"bytes,7,opt,name=name"`
-	}
-
-	func (*Test_Number) isTest_Union() {}
-	func (*Test_Name) isTest_Union()   {}
-
-	func (m *Test) GetUnion() isTest_Union {
-		if m != nil {
-			return m.Union
-		}
-		return nil
-	}
-	const Default_Test_Type int32 = 77
-
-	func (m *Test) GetLabel() string {
-		if m != nil && m.Label != nil {
-			return *m.Label
-		}
-		return ""
-	}
-
-	func (m *Test) GetType() int32 {
-		if m != nil && m.Type != nil {
-			return *m.Type
-		}
-		return Default_Test_Type
-	}
-
-	func (m *Test) GetOptionalgroup() *Test_OptionalGroup {
-		if m != nil {
-			return m.Optionalgroup
-		}
-		return nil
-	}
-
-	type Test_OptionalGroup struct {
-		RequiredField *string `protobuf:"bytes,5,req" json:"RequiredField,omitempty"`
-	}
-	func (m *Test_OptionalGroup) Reset()         { *m = Test_OptionalGroup{} }
-	func (m *Test_OptionalGroup) String() string { return proto.CompactTextString(m) }
-
-	func (m *Test_OptionalGroup) GetRequiredField() string {
-		if m != nil && m.RequiredField != nil {
-			return *m.RequiredField
-		}
-		return ""
-	}
-
-	func (m *Test) GetNumber() int32 {
-		if x, ok := m.GetUnion().(*Test_Number); ok {
-			return x.Number
-		}
-		return 0
-	}
-
-	func (m *Test) GetName() string {
-		if x, ok := m.GetUnion().(*Test_Name); ok {
-			return x.Name
-		}
-		return ""
-	}
-
-	func init() {
-		proto.RegisterEnum("example.FOO", FOO_name, FOO_value)
-	}
-
-To create and play with a Test object:
-
-	package main
-
-	import (
-		"log"
-
-		"github.com/golang/protobuf/proto"
-		pb "./example.pb"
-	)
-
-	func main() {
-		test := &pb.Test{
-			Label: proto.String("hello"),
-			Type:  proto.Int32(17),
-			Reps:  []int64{1, 2, 3},
-			Optionalgroup: &pb.Test_OptionalGroup{
-				RequiredField: proto.String("good bye"),
-			},
-			Union: &pb.Test_Name{"fred"},
-		}
-		data, err := proto.Marshal(test)
-		if err != nil {
-			log.Fatal("marshaling error: ", err)
-		}
-		newTest := &pb.Test{}
-		err = proto.Unmarshal(data, newTest)
-		if err != nil {
-			log.Fatal("unmarshaling error: ", err)
-		}
-		// Now test and newTest contain the same data.
-		if test.GetLabel() != newTest.GetLabel() {
-			log.Fatalf("data mismatch %q != %q", test.GetLabel(), newTest.GetLabel())
-		}
-		// Use a type switch to determine which oneof was set.
-		switch u := test.Union.(type) {
-		case *pb.Test_Number: // u.Number contains the number.
-		case *pb.Test_Name: // u.Name contains the string.
-		}
-		// etc.
-	}
-*/
-package proto
-
-import (
-	"encoding/json"
-	"fmt"
-	"log"
-	"reflect"
-	"sort"
-	"strconv"
-	"sync"
-)
-
-// RequiredNotSetError is an error type returned by either Marshal or Unmarshal.
-// Marshal reports this when a required field is not initialized.
-// Unmarshal reports this when a required field is missing from the wire data.
-type RequiredNotSetError struct{ field string }
-
-func (e *RequiredNotSetError) Error() string {
-	if e.field == "" {
-		return fmt.Sprintf("proto: required field not set")
-	}
-	return fmt.Sprintf("proto: required field %q not set", e.field)
-}
-func (e *RequiredNotSetError) RequiredNotSet() bool {
-	return true
-}
-
-type invalidUTF8Error struct{ field string }
-
-func (e *invalidUTF8Error) Error() string {
-	if e.field == "" {
-		return "proto: invalid UTF-8 detected"
-	}
-	return fmt.Sprintf("proto: field %q contains invalid UTF-8", e.field)
-}
-func (e *invalidUTF8Error) InvalidUTF8() bool {
-	return true
-}
-
-// errInvalidUTF8 is a sentinel error to identify fields with invalid UTF-8.
-// This error should not be exposed to the external API as such errors should
-// be recreated with the field information.
-var errInvalidUTF8 = &invalidUTF8Error{}
-
-// isNonFatal reports whether the error is either a RequiredNotSet error
-// or a InvalidUTF8 error.
-func isNonFatal(err error) bool {
-	if re, ok := err.(interface{ RequiredNotSet() bool }); ok && re.RequiredNotSet() {
-		return true
-	}
-	if re, ok := err.(interface{ InvalidUTF8() bool }); ok && re.InvalidUTF8() {
-		return true
-	}
-	return false
-}
-
-type nonFatal struct{ E error }
-
-// Merge merges err into nf and reports whether it was successful.
-// Otherwise it returns false for any fatal non-nil errors.
-func (nf *nonFatal) Merge(err error) (ok bool) {
-	if err == nil {
-		return true // not an error
-	}
-	if !isNonFatal(err) {
-		return false // fatal error
-	}
-	if nf.E == nil {
-		nf.E = err // store first instance of non-fatal error
-	}
-	return true
-}
-
-// Message is implemented by generated protocol buffer messages.
-type Message interface {
-	Reset()
-	String() string
-	ProtoMessage()
-}
-
-// A Buffer is a buffer manager for marshaling and unmarshaling
-// protocol buffers.  It may be reused between invocations to
-// reduce memory usage.  It is not necessary to use a Buffer;
-// the global functions Marshal and Unmarshal create a
-// temporary Buffer and are fine for most applications.
-type Buffer struct {
-	buf   []byte // encode/decode byte stream
-	index int    // read point
-
-	deterministic bool
-}
-
-// NewBuffer allocates a new Buffer and initializes its internal data to
-// the contents of the argument slice.
-func NewBuffer(e []byte) *Buffer {
-	return &Buffer{buf: e}
-}
-
-// Reset resets the Buffer, ready for marshaling a new protocol buffer.
-func (p *Buffer) Reset() {
-	p.buf = p.buf[0:0] // for reading/writing
-	p.index = 0        // for reading
-}
-
-// SetBuf replaces the internal buffer with the slice,
-// ready for unmarshaling the contents of the slice.
-func (p *Buffer) SetBuf(s []byte) {
-	p.buf = s
-	p.index = 0
-}
-
-// Bytes returns the contents of the Buffer.
-func (p *Buffer) Bytes() []byte { return p.buf }
-
-// SetDeterministic sets whether to use deterministic serialization.
-//
-// Deterministic serialization guarantees that for a given binary, equal
-// messages will always be serialized to the same bytes. This implies:
-//
-//   - Repeated serialization of a message will return the same bytes.
-//   - Different processes of the same binary (which may be executing on
-//     different machines) will serialize equal messages to the same bytes.
-//
-// Note that the deterministic serialization is NOT canonical across
-// languages. It is not guaranteed to remain stable over time. It is unstable
-// across different builds with schema changes due to unknown fields.
-// Users who need canonical serialization (e.g., persistent storage in a
-// canonical form, fingerprinting, etc.) should define their own
-// canonicalization specification and implement their own serializer rather
-// than relying on this API.
-//
-// If deterministic serialization is requested, map entries will be sorted
-// by keys in lexographical order. This is an implementation detail and
-// subject to change.
-func (p *Buffer) SetDeterministic(deterministic bool) {
-	p.deterministic = deterministic
-}
-
-/*
- * Helper routines for simplifying the creation of optional fields of basic type.
- */
-
-// Bool is a helper routine that allocates a new bool value
-// to store v and returns a pointer to it.
-func Bool(v bool) *bool {
-	return &v
-}
-
-// Int32 is a helper routine that allocates a new int32 value
-// to store v and returns a pointer to it.
-func Int32(v int32) *int32 {
-	return &v
-}
-
-// Int is a helper routine that allocates a new int32 value
-// to store v and returns a pointer to it, but unlike Int32
-// its argument value is an int.
-func Int(v int) *int32 {
-	p := new(int32)
-	*p = int32(v)
-	return p
-}
-
-// Int64 is a helper routine that allocates a new int64 value
-// to store v and returns a pointer to it.
-func Int64(v int64) *int64 {
-	return &v
-}
-
-// Float32 is a helper routine that allocates a new float32 value
-// to store v and returns a pointer to it.
-func Float32(v float32) *float32 {
-	return &v
-}
-
-// Float64 is a helper routine that allocates a new float64 value
-// to store v and returns a pointer to it.
-func Float64(v float64) *float64 {
-	return &v
-}
-
-// Uint32 is a helper routine that allocates a new uint32 value
-// to store v and returns a pointer to it.
-func Uint32(v uint32) *uint32 {
-	return &v
-}
-
-// Uint64 is a helper routine that allocates a new uint64 value
-// to store v and returns a pointer to it.
-func Uint64(v uint64) *uint64 {
-	return &v
-}
-
-// String is a helper routine that allocates a new string value
-// to store v and returns a pointer to it.
-func String(v string) *string {
-	return &v
-}
-
-// EnumName is a helper function to simplify printing protocol buffer enums
-// by name.  Given an enum map and a value, it returns a useful string.
-func EnumName(m map[int32]string, v int32) string {
-	s, ok := m[v]
-	if ok {
-		return s
-	}
-	return strconv.Itoa(int(v))
-}
-
-// UnmarshalJSONEnum is a helper function to simplify recovering enum int values
-// from their JSON-encoded representation. Given a map from the enum's symbolic
-// names to its int values, and a byte buffer containing the JSON-encoded
-// value, it returns an int32 that can be cast to the enum type by the caller.
-//
-// The function can deal with both JSON representations, numeric and symbolic.
-func UnmarshalJSONEnum(m map[string]int32, data []byte, enumName string) (int32, error) {
-	if data[0] == '"' {
-		// New style: enums are strings.
-		var repr string
-		if err := json.Unmarshal(data, &repr); err != nil {
-			return -1, err
-		}
-		val, ok := m[repr]
-		if !ok {
-			return 0, fmt.Errorf("unrecognized enum %s value %q", enumName, repr)
-		}
-		return val, nil
-	}
-	// Old style: enums are ints.
-	var val int32
-	if err := json.Unmarshal(data, &val); err != nil {
-		return 0, fmt.Errorf("cannot unmarshal %#q into enum %s", data, enumName)
-	}
-	return val, nil
-}
-
-// DebugPrint dumps the encoded data in b in a debugging format with a header
-// including the string s. Used in testing but made available for general debugging.
-func (p *Buffer) DebugPrint(s string, b []byte) {
-	var u uint64
-
-	obuf := p.buf
-	index := p.index
-	p.buf = b
-	p.index = 0
-	depth := 0
-
-	fmt.Printf("\n--- %s ---\n", s)
-
-out:
-	for {
-		for i := 0; i < depth; i++ {
-			fmt.Print("  ")
-		}
-
-		index := p.index
-		if index == len(p.buf) {
-			break
-		}
-
-		op, err := p.DecodeVarint()
-		if err != nil {
-			fmt.Printf("%3d: fetching op err %v\n", index, err)
-			break out
-		}
-		tag := op >> 3
-		wire := op & 7
-
-		switch wire {
-		default:
-			fmt.Printf("%3d: t=%3d unknown wire=%d\n",
-				index, tag, wire)
-			break out
-
-		case WireBytes:
-			var r []byte
-
-			r, err = p.DecodeRawBytes(false)
-			if err != nil {
-				break out
-			}
-			fmt.Printf("%3d: t=%3d bytes [%d]", index, tag, len(r))
-			if len(r) <= 6 {
-				for i := 0; i < len(r); i++ {
-					fmt.Printf(" %.2x", r[i])
-				}
-			} else {
-				for i := 0; i < 3; i++ {
-					fmt.Printf(" %.2x", r[i])
-				}
-				fmt.Printf(" ..")
-				for i := len(r) - 3; i < len(r); i++ {
-					fmt.Printf(" %.2x", r[i])
-				}
-			}
-			fmt.Printf("\n")
-
-		case WireFixed32:
-			u, err = p.DecodeFixed32()
-			if err != nil {
-				fmt.Printf("%3d: t=%3d fix32 err %v\n", index, tag, err)
-				break out
-			}
-			fmt.Printf("%3d: t=%3d fix32 %d\n", index, tag, u)
-
-		case WireFixed64:
-			u, err = p.DecodeFixed64()
-			if err != nil {
-				fmt.Printf("%3d: t=%3d fix64 err %v\n", index, tag, err)
-				break out
-			}
-			fmt.Printf("%3d: t=%3d fix64 %d\n", index, tag, u)
-
-		case WireVarint:
-			u, err = p.DecodeVarint()
-			if err != nil {
-				fmt.Printf("%3d: t=%3d varint err %v\n", index, tag, err)
-				break out
-			}
-			fmt.Printf("%3d: t=%3d varint %d\n", index, tag, u)
-
-		case WireStartGroup:
-			fmt.Printf("%3d: t=%3d start\n", index, tag)
-			depth++
-
-		case WireEndGroup:
-			depth--
-			fmt.Printf("%3d: t=%3d end\n", index, tag)
-		}
-	}
-
-	if depth != 0 {
-		fmt.Printf("%3d: start-end not balanced %d\n", p.index, depth)
-	}
-	fmt.Printf("\n")
-
-	p.buf = obuf
-	p.index = index
-}
-
-// SetDefaults sets unset protocol buffer fields to their default values.
-// It only modifies fields that are both unset and have defined defaults.
-// It recursively sets default values in any non-nil sub-messages.
-func SetDefaults(pb Message) {
-	setDefaults(reflect.ValueOf(pb), true, false)
-}
-
-// v is a pointer to a struct.
-func setDefaults(v reflect.Value, recur, zeros bool) {
-	v = v.Elem()
-
-	defaultMu.RLock()
-	dm, ok := defaults[v.Type()]
-	defaultMu.RUnlock()
-	if !ok {
-		dm = buildDefaultMessage(v.Type())
-		defaultMu.Lock()
-		defaults[v.Type()] = dm
-		defaultMu.Unlock()
-	}
-
-	for _, sf := range dm.scalars {
-		f := v.Field(sf.index)
-		if !f.IsNil() {
-			// field already set
-			continue
-		}
-		dv := sf.value
-		if dv == nil && !zeros {
-			// no explicit default, and don't want to set zeros
-			continue
-		}
-		fptr := f.Addr().Interface() // **T
-		// TODO: Consider batching the allocations we do here.
-		switch sf.kind {
-		case reflect.Bool:
-			b := new(bool)
-			if dv != nil {
-				*b = dv.(bool)
-			}
-			*(fptr.(**bool)) = b
-		case reflect.Float32:
-			f := new(float32)
-			if dv != nil {
-				*f = dv.(float32)
-			}
-			*(fptr.(**float32)) = f
-		case reflect.Float64:
-			f := new(float64)
-			if dv != nil {
-				*f = dv.(float64)
-			}
-			*(fptr.(**float64)) = f
-		case reflect.Int32:
-			// might be an enum
-			if ft := f.Type(); ft != int32PtrType {
-				// enum
-				f.Set(reflect.New(ft.Elem()))
-				if dv != nil {
-					f.Elem().SetInt(int64(dv.(int32)))
-				}
-			} else {
-				// int32 field
-				i := new(int32)
-				if dv != nil {
-					*i = dv.(int32)
-				}
-				*(fptr.(**int32)) = i
-			}
-		case reflect.Int64:
-			i := new(int64)
-			if dv != nil {
-				*i = dv.(int64)
-			}
-			*(fptr.(**int64)) = i
-		case reflect.String:
-			s := new(string)
-			if dv != nil {
-				*s = dv.(string)
-			}
-			*(fptr.(**string)) = s
-		case reflect.Uint8:
-			// exceptional case: []byte
-			var b []byte
-			if dv != nil {
-				db := dv.([]byte)
-				b = make([]byte, len(db))
-				copy(b, db)
-			} else {
-				b = []byte{}
-			}
-			*(fptr.(*[]byte)) = b
-		case reflect.Uint32:
-			u := new(uint32)
-			if dv != nil {
-				*u = dv.(uint32)
-			}
-			*(fptr.(**uint32)) = u
-		case reflect.Uint64:
-			u := new(uint64)
-			if dv != nil {
-				*u = dv.(uint64)
-			}
-			*(fptr.(**uint64)) = u
-		default:
-			log.Printf("proto: can't set default for field %v (sf.kind=%v)", f, sf.kind)
-		}
-	}
-
-	for _, ni := range dm.nested {
-		f := v.Field(ni)
-		// f is *T or []*T or map[T]*T
-		switch f.Kind() {
-		case reflect.Ptr:
-			if f.IsNil() {
-				continue
-			}
-			setDefaults(f, recur, zeros)
-
-		case reflect.Slice:
-			for i := 0; i < f.Len(); i++ {
-				e := f.Index(i)
-				if e.IsNil() {
-					continue
-				}
-				setDefaults(e, recur, zeros)
-			}
-
-		case reflect.Map:
-			for _, k := range f.MapKeys() {
-				e := f.MapIndex(k)
-				if e.IsNil() {
-					continue
-				}
-				setDefaults(e, recur, zeros)
-			}
-		}
-	}
-}
-
-var (
-	// defaults maps a protocol buffer struct type to a slice of the fields,
-	// with its scalar fields set to their proto-declared non-zero default values.
-	defaultMu sync.RWMutex
-	defaults  = make(map[reflect.Type]defaultMessage)
-
-	int32PtrType = reflect.TypeOf((*int32)(nil))
-)
-
-// defaultMessage represents information about the default values of a message.
-type defaultMessage struct {
-	scalars []scalarField
-	nested  []int // struct field index of nested messages
-}
-
-type scalarField struct {
-	index int          // struct field index
-	kind  reflect.Kind // element type (the T in *T or []T)
-	value interface{}  // the proto-declared default value, or nil
-}
-
-// t is a struct type.
-func buildDefaultMessage(t reflect.Type) (dm defaultMessage) {
-	sprop := GetProperties(t)
-	for _, prop := range sprop.Prop {
-		fi, ok := sprop.decoderTags.get(prop.Tag)
-		if !ok {
-			// XXX_unrecognized
-			continue
-		}
-		ft := t.Field(fi).Type
-
-		sf, nested, err := fieldDefault(ft, prop)
-		switch {
-		case err != nil:
-			log.Print(err)
-		case nested:
-			dm.nested = append(dm.nested, fi)
-		case sf != nil:
-			sf.index = fi
-			dm.scalars = append(dm.scalars, *sf)
-		}
-	}
-
-	return dm
-}
-
-// fieldDefault returns the scalarField for field type ft.
-// sf will be nil if the field can not have a default.
-// nestedMessage will be true if this is a nested message.
-// Note that sf.index is not set on return.
-func fieldDefault(ft reflect.Type, prop *Properties) (sf *scalarField, nestedMessage bool, err error) {
-	var canHaveDefault bool
-	switch ft.Kind() {
-	case reflect.Ptr:
-		if ft.Elem().Kind() == reflect.Struct {
-			nestedMessage = true
-		} else {
-			canHaveDefault = true // proto2 scalar field
-		}
-
-	case reflect.Slice:
-		switch ft.Elem().Kind() {
-		case reflect.Ptr:
-			nestedMessage = true // repeated message
-		case reflect.Uint8:
-			canHaveDefault = true // bytes field
-		}
-
-	case reflect.Map:
-		if ft.Elem().Kind() == reflect.Ptr {
-			nestedMessage = true // map with message values
-		}
-	}
-
-	if !canHaveDefault {
-		if nestedMessage {
-			return nil, true, nil
-		}
-		return nil, false, nil
-	}
-
-	// We now know that ft is a pointer or slice.
-	sf = &scalarField{kind: ft.Elem().Kind()}
-
-	// scalar fields without defaults
-	if !prop.HasDefault {
-		return sf, false, nil
-	}
-
-	// a scalar field: either *T or []byte
-	switch ft.Elem().Kind() {
-	case reflect.Bool:
-		x, err := strconv.ParseBool(prop.Default)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default bool %q: %v", prop.Default, err)
-		}
-		sf.value = x
-	case reflect.Float32:
-		x, err := strconv.ParseFloat(prop.Default, 32)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default float32 %q: %v", prop.Default, err)
-		}
-		sf.value = float32(x)
-	case reflect.Float64:
-		x, err := strconv.ParseFloat(prop.Default, 64)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default float64 %q: %v", prop.Default, err)
-		}
-		sf.value = x
-	case reflect.Int32:
-		x, err := strconv.ParseInt(prop.Default, 10, 32)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default int32 %q: %v", prop.Default, err)
-		}
-		sf.value = int32(x)
-	case reflect.Int64:
-		x, err := strconv.ParseInt(prop.Default, 10, 64)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default int64 %q: %v", prop.Default, err)
-		}
-		sf.value = x
-	case reflect.String:
-		sf.value = prop.Default
-	case reflect.Uint8:
-		// []byte (not *uint8)
-		sf.value = []byte(prop.Default)
-	case reflect.Uint32:
-		x, err := strconv.ParseUint(prop.Default, 10, 32)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default uint32 %q: %v", prop.Default, err)
-		}
-		sf.value = uint32(x)
-	case reflect.Uint64:
-		x, err := strconv.ParseUint(prop.Default, 10, 64)
-		if err != nil {
-			return nil, false, fmt.Errorf("proto: bad default uint64 %q: %v", prop.Default, err)
-		}
-		sf.value = x
-	default:
-		return nil, false, fmt.Errorf("proto: unhandled def kind %v", ft.Elem().Kind())
-	}
-
-	return sf, false, nil
-}
-
-// mapKeys returns a sort.Interface to be used for sorting the map keys.
-// Map fields may have key types of non-float scalars, strings and enums.
-func mapKeys(vs []reflect.Value) sort.Interface {
-	s := mapKeySorter{vs: vs}
-
-	// Type specialization per https://developers.google.com/protocol-buffers/docs/proto#maps.
-	if len(vs) == 0 {
-		return s
-	}
-	switch vs[0].Kind() {
-	case reflect.Int32, reflect.Int64:
-		s.less = func(a, b reflect.Value) bool { return a.Int() < b.Int() }
-	case reflect.Uint32, reflect.Uint64:
-		s.less = func(a, b reflect.Value) bool { return a.Uint() < b.Uint() }
-	case reflect.Bool:
-		s.less = func(a, b reflect.Value) bool { return !a.Bool() && b.Bool() } // false < true
-	case reflect.String:
-		s.less = func(a, b reflect.Value) bool { return a.String() < b.String() }
-	default:
-		panic(fmt.Sprintf("unsupported map key type: %v", vs[0].Kind()))
-	}
-
-	return s
-}
-
-type mapKeySorter struct {
-	vs   []reflect.Value
-	less func(a, b reflect.Value) bool
-}
-
-func (s mapKeySorter) Len() int      { return len(s.vs) }
-func (s mapKeySorter) Swap(i, j int) { s.vs[i], s.vs[j] = s.vs[j], s.vs[i] }
-func (s mapKeySorter) Less(i, j int) bool {
-	return s.less(s.vs[i], s.vs[j])
-}
-
-// isProto3Zero reports whether v is a zero proto3 value.
-func isProto3Zero(v reflect.Value) bool {
-	switch v.Kind() {
-	case reflect.Bool:
-		return !v.Bool()
-	case reflect.Int32, reflect.Int64:
-		return v.Int() == 0
-	case reflect.Uint32, reflect.Uint64:
-		return v.Uint() == 0
-	case reflect.Float32, reflect.Float64:
-		return v.Float() == 0
-	case reflect.String:
-		return v.String() == ""
-	}
-	return false
-}
-
-const (
-	// ProtoPackageIsVersion3 is referenced from generated protocol buffer files
-	// to assert that that code is compatible with this version of the proto package.
-	ProtoPackageIsVersion3 = true
-
-	// ProtoPackageIsVersion2 is referenced from generated protocol buffer files
-	// to assert that that code is compatible with this version of the proto package.
-	ProtoPackageIsVersion2 = true
-
-	// ProtoPackageIsVersion1 is referenced from generated protocol buffer files
-	// to assert that that code is compatible with this version of the proto package.
-	ProtoPackageIsVersion1 = true
-)
-
-// InternalMessageInfo is a type used internally by generated .pb.go files.
-// This type is not intended to be used by non-generated code.
-// This type is not subject to any compatibility guarantee.
-type InternalMessageInfo struct {
-	marshal   *marshalInfo
-	unmarshal *unmarshalInfo
-	merge     *mergeInfo
-	discard   *discardInfo
-}
diff --git a/vendor/github.com/golang/protobuf/proto/message_set.go b/vendor/github.com/golang/protobuf/proto/message_set.go
deleted file mode 100644
index f48a756..0000000
--- a/vendor/github.com/golang/protobuf/proto/message_set.go
+++ /dev/null
@@ -1,181 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-/*
- * Support for message sets.
- */
-
-import (
-	"errors"
-)
-
-// errNoMessageTypeID occurs when a protocol buffer does not have a message type ID.
-// A message type ID is required for storing a protocol buffer in a message set.
-var errNoMessageTypeID = errors.New("proto does not have a message type ID")
-
-// The first two types (_MessageSet_Item and messageSet)
-// model what the protocol compiler produces for the following protocol message:
-//   message MessageSet {
-//     repeated group Item = 1 {
-//       required int32 type_id = 2;
-//       required string message = 3;
-//     };
-//   }
-// That is the MessageSet wire format. We can't use a proto to generate these
-// because that would introduce a circular dependency between it and this package.
-
-type _MessageSet_Item struct {
-	TypeId  *int32 `protobuf:"varint,2,req,name=type_id"`
-	Message []byte `protobuf:"bytes,3,req,name=message"`
-}
-
-type messageSet struct {
-	Item             []*_MessageSet_Item `protobuf:"group,1,rep"`
-	XXX_unrecognized []byte
-	// TODO: caching?
-}
-
-// Make sure messageSet is a Message.
-var _ Message = (*messageSet)(nil)
-
-// messageTypeIder is an interface satisfied by a protocol buffer type
-// that may be stored in a MessageSet.
-type messageTypeIder interface {
-	MessageTypeId() int32
-}
-
-func (ms *messageSet) find(pb Message) *_MessageSet_Item {
-	mti, ok := pb.(messageTypeIder)
-	if !ok {
-		return nil
-	}
-	id := mti.MessageTypeId()
-	for _, item := range ms.Item {
-		if *item.TypeId == id {
-			return item
-		}
-	}
-	return nil
-}
-
-func (ms *messageSet) Has(pb Message) bool {
-	return ms.find(pb) != nil
-}
-
-func (ms *messageSet) Unmarshal(pb Message) error {
-	if item := ms.find(pb); item != nil {
-		return Unmarshal(item.Message, pb)
-	}
-	if _, ok := pb.(messageTypeIder); !ok {
-		return errNoMessageTypeID
-	}
-	return nil // TODO: return error instead?
-}
-
-func (ms *messageSet) Marshal(pb Message) error {
-	msg, err := Marshal(pb)
-	if err != nil {
-		return err
-	}
-	if item := ms.find(pb); item != nil {
-		// reuse existing item
-		item.Message = msg
-		return nil
-	}
-
-	mti, ok := pb.(messageTypeIder)
-	if !ok {
-		return errNoMessageTypeID
-	}
-
-	mtid := mti.MessageTypeId()
-	ms.Item = append(ms.Item, &_MessageSet_Item{
-		TypeId:  &mtid,
-		Message: msg,
-	})
-	return nil
-}
-
-func (ms *messageSet) Reset()         { *ms = messageSet{} }
-func (ms *messageSet) String() string { return CompactTextString(ms) }
-func (*messageSet) ProtoMessage()     {}
-
-// Support for the message_set_wire_format message option.
-
-func skipVarint(buf []byte) []byte {
-	i := 0
-	for ; buf[i]&0x80 != 0; i++ {
-	}
-	return buf[i+1:]
-}
-
-// unmarshalMessageSet decodes the extension map encoded in buf in the message set wire format.
-// It is called by Unmarshal methods on protocol buffer messages with the message_set_wire_format option.
-func unmarshalMessageSet(buf []byte, exts interface{}) error {
-	var m map[int32]Extension
-	switch exts := exts.(type) {
-	case *XXX_InternalExtensions:
-		m = exts.extensionsWrite()
-	case map[int32]Extension:
-		m = exts
-	default:
-		return errors.New("proto: not an extension map")
-	}
-
-	ms := new(messageSet)
-	if err := Unmarshal(buf, ms); err != nil {
-		return err
-	}
-	for _, item := range ms.Item {
-		id := *item.TypeId
-		msg := item.Message
-
-		// Restore wire type and field number varint, plus length varint.
-		// Be careful to preserve duplicate items.
-		b := EncodeVarint(uint64(id)<<3 | WireBytes)
-		if ext, ok := m[id]; ok {
-			// Existing data; rip off the tag and length varint
-			// so we join the new data correctly.
-			// We can assume that ext.enc is set because we are unmarshaling.
-			o := ext.enc[len(b):]   // skip wire type and field number
-			_, n := DecodeVarint(o) // calculate length of length varint
-			o = o[n:]               // skip length varint
-			msg = append(o, msg...) // join old data and new data
-		}
-		b = append(b, EncodeVarint(uint64(len(msg)))...)
-		b = append(b, msg...)
-
-		m[id] = Extension{enc: b}
-	}
-	return nil
-}
diff --git a/vendor/github.com/golang/protobuf/proto/pointer_reflect.go b/vendor/github.com/golang/protobuf/proto/pointer_reflect.go
deleted file mode 100644
index 94fa919..0000000
--- a/vendor/github.com/golang/protobuf/proto/pointer_reflect.go
+++ /dev/null
@@ -1,360 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2012 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// +build purego appengine js
-
-// This file contains an implementation of proto field accesses using package reflect.
-// It is slower than the code in pointer_unsafe.go but it avoids package unsafe and can
-// be used on App Engine.
-
-package proto
-
-import (
-	"reflect"
-	"sync"
-)
-
-const unsafeAllowed = false
-
-// A field identifies a field in a struct, accessible from a pointer.
-// In this implementation, a field is identified by the sequence of field indices
-// passed to reflect's FieldByIndex.
-type field []int
-
-// toField returns a field equivalent to the given reflect field.
-func toField(f *reflect.StructField) field {
-	return f.Index
-}
-
-// invalidField is an invalid field identifier.
-var invalidField = field(nil)
-
-// zeroField is a noop when calling pointer.offset.
-var zeroField = field([]int{})
-
-// IsValid reports whether the field identifier is valid.
-func (f field) IsValid() bool { return f != nil }
-
-// The pointer type is for the table-driven decoder.
-// The implementation here uses a reflect.Value of pointer type to
-// create a generic pointer. In pointer_unsafe.go we use unsafe
-// instead of reflect to implement the same (but faster) interface.
-type pointer struct {
-	v reflect.Value
-}
-
-// toPointer converts an interface of pointer type to a pointer
-// that points to the same target.
-func toPointer(i *Message) pointer {
-	return pointer{v: reflect.ValueOf(*i)}
-}
-
-// toAddrPointer converts an interface to a pointer that points to
-// the interface data.
-func toAddrPointer(i *interface{}, isptr, deref bool) pointer {
-	v := reflect.ValueOf(*i)
-	u := reflect.New(v.Type())
-	u.Elem().Set(v)
-	if deref {
-		u = u.Elem()
-	}
-	return pointer{v: u}
-}
-
-// valToPointer converts v to a pointer.  v must be of pointer type.
-func valToPointer(v reflect.Value) pointer {
-	return pointer{v: v}
-}
-
-// offset converts from a pointer to a structure to a pointer to
-// one of its fields.
-func (p pointer) offset(f field) pointer {
-	return pointer{v: p.v.Elem().FieldByIndex(f).Addr()}
-}
-
-func (p pointer) isNil() bool {
-	return p.v.IsNil()
-}
-
-// grow updates the slice s in place to make it one element longer.
-// s must be addressable.
-// Returns the (addressable) new element.
-func grow(s reflect.Value) reflect.Value {
-	n, m := s.Len(), s.Cap()
-	if n < m {
-		s.SetLen(n + 1)
-	} else {
-		s.Set(reflect.Append(s, reflect.Zero(s.Type().Elem())))
-	}
-	return s.Index(n)
-}
-
-func (p pointer) toInt64() *int64 {
-	return p.v.Interface().(*int64)
-}
-func (p pointer) toInt64Ptr() **int64 {
-	return p.v.Interface().(**int64)
-}
-func (p pointer) toInt64Slice() *[]int64 {
-	return p.v.Interface().(*[]int64)
-}
-
-var int32ptr = reflect.TypeOf((*int32)(nil))
-
-func (p pointer) toInt32() *int32 {
-	return p.v.Convert(int32ptr).Interface().(*int32)
-}
-
-// The toInt32Ptr/Slice methods don't work because of enums.
-// Instead, we must use set/get methods for the int32ptr/slice case.
-/*
-	func (p pointer) toInt32Ptr() **int32 {
-		return p.v.Interface().(**int32)
-}
-	func (p pointer) toInt32Slice() *[]int32 {
-		return p.v.Interface().(*[]int32)
-}
-*/
-func (p pointer) getInt32Ptr() *int32 {
-	if p.v.Type().Elem().Elem() == reflect.TypeOf(int32(0)) {
-		// raw int32 type
-		return p.v.Elem().Interface().(*int32)
-	}
-	// an enum
-	return p.v.Elem().Convert(int32PtrType).Interface().(*int32)
-}
-func (p pointer) setInt32Ptr(v int32) {
-	// Allocate value in a *int32. Possibly convert that to a *enum.
-	// Then assign it to a **int32 or **enum.
-	// Note: we can convert *int32 to *enum, but we can't convert
-	// **int32 to **enum!
-	p.v.Elem().Set(reflect.ValueOf(&v).Convert(p.v.Type().Elem()))
-}
-
-// getInt32Slice copies []int32 from p as a new slice.
-// This behavior differs from the implementation in pointer_unsafe.go.
-func (p pointer) getInt32Slice() []int32 {
-	if p.v.Type().Elem().Elem() == reflect.TypeOf(int32(0)) {
-		// raw int32 type
-		return p.v.Elem().Interface().([]int32)
-	}
-	// an enum
-	// Allocate a []int32, then assign []enum's values into it.
-	// Note: we can't convert []enum to []int32.
-	slice := p.v.Elem()
-	s := make([]int32, slice.Len())
-	for i := 0; i < slice.Len(); i++ {
-		s[i] = int32(slice.Index(i).Int())
-	}
-	return s
-}
-
-// setInt32Slice copies []int32 into p as a new slice.
-// This behavior differs from the implementation in pointer_unsafe.go.
-func (p pointer) setInt32Slice(v []int32) {
-	if p.v.Type().Elem().Elem() == reflect.TypeOf(int32(0)) {
-		// raw int32 type
-		p.v.Elem().Set(reflect.ValueOf(v))
-		return
-	}
-	// an enum
-	// Allocate a []enum, then assign []int32's values into it.
-	// Note: we can't convert []enum to []int32.
-	slice := reflect.MakeSlice(p.v.Type().Elem(), len(v), cap(v))
-	for i, x := range v {
-		slice.Index(i).SetInt(int64(x))
-	}
-	p.v.Elem().Set(slice)
-}
-func (p pointer) appendInt32Slice(v int32) {
-	grow(p.v.Elem()).SetInt(int64(v))
-}
-
-func (p pointer) toUint64() *uint64 {
-	return p.v.Interface().(*uint64)
-}
-func (p pointer) toUint64Ptr() **uint64 {
-	return p.v.Interface().(**uint64)
-}
-func (p pointer) toUint64Slice() *[]uint64 {
-	return p.v.Interface().(*[]uint64)
-}
-func (p pointer) toUint32() *uint32 {
-	return p.v.Interface().(*uint32)
-}
-func (p pointer) toUint32Ptr() **uint32 {
-	return p.v.Interface().(**uint32)
-}
-func (p pointer) toUint32Slice() *[]uint32 {
-	return p.v.Interface().(*[]uint32)
-}
-func (p pointer) toBool() *bool {
-	return p.v.Interface().(*bool)
-}
-func (p pointer) toBoolPtr() **bool {
-	return p.v.Interface().(**bool)
-}
-func (p pointer) toBoolSlice() *[]bool {
-	return p.v.Interface().(*[]bool)
-}
-func (p pointer) toFloat64() *float64 {
-	return p.v.Interface().(*float64)
-}
-func (p pointer) toFloat64Ptr() **float64 {
-	return p.v.Interface().(**float64)
-}
-func (p pointer) toFloat64Slice() *[]float64 {
-	return p.v.Interface().(*[]float64)
-}
-func (p pointer) toFloat32() *float32 {
-	return p.v.Interface().(*float32)
-}
-func (p pointer) toFloat32Ptr() **float32 {
-	return p.v.Interface().(**float32)
-}
-func (p pointer) toFloat32Slice() *[]float32 {
-	return p.v.Interface().(*[]float32)
-}
-func (p pointer) toString() *string {
-	return p.v.Interface().(*string)
-}
-func (p pointer) toStringPtr() **string {
-	return p.v.Interface().(**string)
-}
-func (p pointer) toStringSlice() *[]string {
-	return p.v.Interface().(*[]string)
-}
-func (p pointer) toBytes() *[]byte {
-	return p.v.Interface().(*[]byte)
-}
-func (p pointer) toBytesSlice() *[][]byte {
-	return p.v.Interface().(*[][]byte)
-}
-func (p pointer) toExtensions() *XXX_InternalExtensions {
-	return p.v.Interface().(*XXX_InternalExtensions)
-}
-func (p pointer) toOldExtensions() *map[int32]Extension {
-	return p.v.Interface().(*map[int32]Extension)
-}
-func (p pointer) getPointer() pointer {
-	return pointer{v: p.v.Elem()}
-}
-func (p pointer) setPointer(q pointer) {
-	p.v.Elem().Set(q.v)
-}
-func (p pointer) appendPointer(q pointer) {
-	grow(p.v.Elem()).Set(q.v)
-}
-
-// getPointerSlice copies []*T from p as a new []pointer.
-// This behavior differs from the implementation in pointer_unsafe.go.
-func (p pointer) getPointerSlice() []pointer {
-	if p.v.IsNil() {
-		return nil
-	}
-	n := p.v.Elem().Len()
-	s := make([]pointer, n)
-	for i := 0; i < n; i++ {
-		s[i] = pointer{v: p.v.Elem().Index(i)}
-	}
-	return s
-}
-
-// setPointerSlice copies []pointer into p as a new []*T.
-// This behavior differs from the implementation in pointer_unsafe.go.
-func (p pointer) setPointerSlice(v []pointer) {
-	if v == nil {
-		p.v.Elem().Set(reflect.New(p.v.Elem().Type()).Elem())
-		return
-	}
-	s := reflect.MakeSlice(p.v.Elem().Type(), 0, len(v))
-	for _, p := range v {
-		s = reflect.Append(s, p.v)
-	}
-	p.v.Elem().Set(s)
-}
-
-// getInterfacePointer returns a pointer that points to the
-// interface data of the interface pointed by p.
-func (p pointer) getInterfacePointer() pointer {
-	if p.v.Elem().IsNil() {
-		return pointer{v: p.v.Elem()}
-	}
-	return pointer{v: p.v.Elem().Elem().Elem().Field(0).Addr()} // *interface -> interface -> *struct -> struct
-}
-
-func (p pointer) asPointerTo(t reflect.Type) reflect.Value {
-	// TODO: check that p.v.Type().Elem() == t?
-	return p.v
-}
-
-func atomicLoadUnmarshalInfo(p **unmarshalInfo) *unmarshalInfo {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	return *p
-}
-func atomicStoreUnmarshalInfo(p **unmarshalInfo, v *unmarshalInfo) {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	*p = v
-}
-func atomicLoadMarshalInfo(p **marshalInfo) *marshalInfo {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	return *p
-}
-func atomicStoreMarshalInfo(p **marshalInfo, v *marshalInfo) {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	*p = v
-}
-func atomicLoadMergeInfo(p **mergeInfo) *mergeInfo {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	return *p
-}
-func atomicStoreMergeInfo(p **mergeInfo, v *mergeInfo) {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	*p = v
-}
-func atomicLoadDiscardInfo(p **discardInfo) *discardInfo {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	return *p
-}
-func atomicStoreDiscardInfo(p **discardInfo, v *discardInfo) {
-	atomicLock.Lock()
-	defer atomicLock.Unlock()
-	*p = v
-}
-
-var atomicLock sync.Mutex
diff --git a/vendor/github.com/golang/protobuf/proto/pointer_unsafe.go b/vendor/github.com/golang/protobuf/proto/pointer_unsafe.go
deleted file mode 100644
index dbfffe0..0000000
--- a/vendor/github.com/golang/protobuf/proto/pointer_unsafe.go
+++ /dev/null
@@ -1,313 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2012 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// +build !purego,!appengine,!js
-
-// This file contains the implementation of the proto field accesses using package unsafe.
-
-package proto
-
-import (
-	"reflect"
-	"sync/atomic"
-	"unsafe"
-)
-
-const unsafeAllowed = true
-
-// A field identifies a field in a struct, accessible from a pointer.
-// In this implementation, a field is identified by its byte offset from the start of the struct.
-type field uintptr
-
-// toField returns a field equivalent to the given reflect field.
-func toField(f *reflect.StructField) field {
-	return field(f.Offset)
-}
-
-// invalidField is an invalid field identifier.
-const invalidField = ^field(0)
-
-// zeroField is a noop when calling pointer.offset.
-const zeroField = field(0)
-
-// IsValid reports whether the field identifier is valid.
-func (f field) IsValid() bool {
-	return f != invalidField
-}
-
-// The pointer type below is for the new table-driven encoder/decoder.
-// The implementation here uses unsafe.Pointer to create a generic pointer.
-// In pointer_reflect.go we use reflect instead of unsafe to implement
-// the same (but slower) interface.
-type pointer struct {
-	p unsafe.Pointer
-}
-
-// size of pointer
-var ptrSize = unsafe.Sizeof(uintptr(0))
-
-// toPointer converts an interface of pointer type to a pointer
-// that points to the same target.
-func toPointer(i *Message) pointer {
-	// Super-tricky - read pointer out of data word of interface value.
-	// Saves ~25ns over the equivalent:
-	// return valToPointer(reflect.ValueOf(*i))
-	return pointer{p: (*[2]unsafe.Pointer)(unsafe.Pointer(i))[1]}
-}
-
-// toAddrPointer converts an interface to a pointer that points to
-// the interface data.
-func toAddrPointer(i *interface{}, isptr, deref bool) (p pointer) {
-	// Super-tricky - read or get the address of data word of interface value.
-	if isptr {
-		// The interface is of pointer type, thus it is a direct interface.
-		// The data word is the pointer data itself. We take its address.
-		p = pointer{p: unsafe.Pointer(uintptr(unsafe.Pointer(i)) + ptrSize)}
-	} else {
-		// The interface is not of pointer type. The data word is the pointer
-		// to the data.
-		p = pointer{p: (*[2]unsafe.Pointer)(unsafe.Pointer(i))[1]}
-	}
-	if deref {
-		p.p = *(*unsafe.Pointer)(p.p)
-	}
-	return p
-}
-
-// valToPointer converts v to a pointer. v must be of pointer type.
-func valToPointer(v reflect.Value) pointer {
-	return pointer{p: unsafe.Pointer(v.Pointer())}
-}
-
-// offset converts from a pointer to a structure to a pointer to
-// one of its fields.
-func (p pointer) offset(f field) pointer {
-	// For safety, we should panic if !f.IsValid, however calling panic causes
-	// this to no longer be inlineable, which is a serious performance cost.
-	/*
-		if !f.IsValid() {
-			panic("invalid field")
-		}
-	*/
-	return pointer{p: unsafe.Pointer(uintptr(p.p) + uintptr(f))}
-}
-
-func (p pointer) isNil() bool {
-	return p.p == nil
-}
-
-func (p pointer) toInt64() *int64 {
-	return (*int64)(p.p)
-}
-func (p pointer) toInt64Ptr() **int64 {
-	return (**int64)(p.p)
-}
-func (p pointer) toInt64Slice() *[]int64 {
-	return (*[]int64)(p.p)
-}
-func (p pointer) toInt32() *int32 {
-	return (*int32)(p.p)
-}
-
-// See pointer_reflect.go for why toInt32Ptr/Slice doesn't exist.
-/*
-	func (p pointer) toInt32Ptr() **int32 {
-		return (**int32)(p.p)
-	}
-	func (p pointer) toInt32Slice() *[]int32 {
-		return (*[]int32)(p.p)
-	}
-*/
-func (p pointer) getInt32Ptr() *int32 {
-	return *(**int32)(p.p)
-}
-func (p pointer) setInt32Ptr(v int32) {
-	*(**int32)(p.p) = &v
-}
-
-// getInt32Slice loads a []int32 from p.
-// The value returned is aliased with the original slice.
-// This behavior differs from the implementation in pointer_reflect.go.
-func (p pointer) getInt32Slice() []int32 {
-	return *(*[]int32)(p.p)
-}
-
-// setInt32Slice stores a []int32 to p.
-// The value set is aliased with the input slice.
-// This behavior differs from the implementation in pointer_reflect.go.
-func (p pointer) setInt32Slice(v []int32) {
-	*(*[]int32)(p.p) = v
-}
-
-// TODO: Can we get rid of appendInt32Slice and use setInt32Slice instead?
-func (p pointer) appendInt32Slice(v int32) {
-	s := (*[]int32)(p.p)
-	*s = append(*s, v)
-}
-
-func (p pointer) toUint64() *uint64 {
-	return (*uint64)(p.p)
-}
-func (p pointer) toUint64Ptr() **uint64 {
-	return (**uint64)(p.p)
-}
-func (p pointer) toUint64Slice() *[]uint64 {
-	return (*[]uint64)(p.p)
-}
-func (p pointer) toUint32() *uint32 {
-	return (*uint32)(p.p)
-}
-func (p pointer) toUint32Ptr() **uint32 {
-	return (**uint32)(p.p)
-}
-func (p pointer) toUint32Slice() *[]uint32 {
-	return (*[]uint32)(p.p)
-}
-func (p pointer) toBool() *bool {
-	return (*bool)(p.p)
-}
-func (p pointer) toBoolPtr() **bool {
-	return (**bool)(p.p)
-}
-func (p pointer) toBoolSlice() *[]bool {
-	return (*[]bool)(p.p)
-}
-func (p pointer) toFloat64() *float64 {
-	return (*float64)(p.p)
-}
-func (p pointer) toFloat64Ptr() **float64 {
-	return (**float64)(p.p)
-}
-func (p pointer) toFloat64Slice() *[]float64 {
-	return (*[]float64)(p.p)
-}
-func (p pointer) toFloat32() *float32 {
-	return (*float32)(p.p)
-}
-func (p pointer) toFloat32Ptr() **float32 {
-	return (**float32)(p.p)
-}
-func (p pointer) toFloat32Slice() *[]float32 {
-	return (*[]float32)(p.p)
-}
-func (p pointer) toString() *string {
-	return (*string)(p.p)
-}
-func (p pointer) toStringPtr() **string {
-	return (**string)(p.p)
-}
-func (p pointer) toStringSlice() *[]string {
-	return (*[]string)(p.p)
-}
-func (p pointer) toBytes() *[]byte {
-	return (*[]byte)(p.p)
-}
-func (p pointer) toBytesSlice() *[][]byte {
-	return (*[][]byte)(p.p)
-}
-func (p pointer) toExtensions() *XXX_InternalExtensions {
-	return (*XXX_InternalExtensions)(p.p)
-}
-func (p pointer) toOldExtensions() *map[int32]Extension {
-	return (*map[int32]Extension)(p.p)
-}
-
-// getPointerSlice loads []*T from p as a []pointer.
-// The value returned is aliased with the original slice.
-// This behavior differs from the implementation in pointer_reflect.go.
-func (p pointer) getPointerSlice() []pointer {
-	// Super-tricky - p should point to a []*T where T is a
-	// message type. We load it as []pointer.
-	return *(*[]pointer)(p.p)
-}
-
-// setPointerSlice stores []pointer into p as a []*T.
-// The value set is aliased with the input slice.
-// This behavior differs from the implementation in pointer_reflect.go.
-func (p pointer) setPointerSlice(v []pointer) {
-	// Super-tricky - p should point to a []*T where T is a
-	// message type. We store it as []pointer.
-	*(*[]pointer)(p.p) = v
-}
-
-// getPointer loads the pointer at p and returns it.
-func (p pointer) getPointer() pointer {
-	return pointer{p: *(*unsafe.Pointer)(p.p)}
-}
-
-// setPointer stores the pointer q at p.
-func (p pointer) setPointer(q pointer) {
-	*(*unsafe.Pointer)(p.p) = q.p
-}
-
-// append q to the slice pointed to by p.
-func (p pointer) appendPointer(q pointer) {
-	s := (*[]unsafe.Pointer)(p.p)
-	*s = append(*s, q.p)
-}
-
-// getInterfacePointer returns a pointer that points to the
-// interface data of the interface pointed by p.
-func (p pointer) getInterfacePointer() pointer {
-	// Super-tricky - read pointer out of data word of interface value.
-	return pointer{p: (*(*[2]unsafe.Pointer)(p.p))[1]}
-}
-
-// asPointerTo returns a reflect.Value that is a pointer to an
-// object of type t stored at p.
-func (p pointer) asPointerTo(t reflect.Type) reflect.Value {
-	return reflect.NewAt(t, p.p)
-}
-
-func atomicLoadUnmarshalInfo(p **unmarshalInfo) *unmarshalInfo {
-	return (*unmarshalInfo)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(p))))
-}
-func atomicStoreUnmarshalInfo(p **unmarshalInfo, v *unmarshalInfo) {
-	atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(p)), unsafe.Pointer(v))
-}
-func atomicLoadMarshalInfo(p **marshalInfo) *marshalInfo {
-	return (*marshalInfo)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(p))))
-}
-func atomicStoreMarshalInfo(p **marshalInfo, v *marshalInfo) {
-	atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(p)), unsafe.Pointer(v))
-}
-func atomicLoadMergeInfo(p **mergeInfo) *mergeInfo {
-	return (*mergeInfo)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(p))))
-}
-func atomicStoreMergeInfo(p **mergeInfo, v *mergeInfo) {
-	atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(p)), unsafe.Pointer(v))
-}
-func atomicLoadDiscardInfo(p **discardInfo) *discardInfo {
-	return (*discardInfo)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(p))))
-}
-func atomicStoreDiscardInfo(p **discardInfo, v *discardInfo) {
-	atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(p)), unsafe.Pointer(v))
-}
diff --git a/vendor/github.com/golang/protobuf/proto/properties.go b/vendor/github.com/golang/protobuf/proto/properties.go
index a4b8c0c..dcdc220 100644
--- a/vendor/github.com/golang/protobuf/proto/properties.go
+++ b/vendor/github.com/golang/protobuf/proto/properties.go
@@ -1,162 +1,104 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+// Copyright 2010 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 proto
 
-/*
- * Routines for encoding data into the wire format for protocol buffers.
- */
-
 import (
 	"fmt"
-	"log"
 	"reflect"
-	"sort"
 	"strconv"
 	"strings"
 	"sync"
-)
-
-const debug bool = false
 
-// Constants that identify the encoding of a value on the wire.
-const (
-	WireVarint     = 0
-	WireFixed64    = 1
-	WireBytes      = 2
-	WireStartGroup = 3
-	WireEndGroup   = 4
-	WireFixed32    = 5
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoimpl"
 )
 
-// tagMap is an optimization over map[int]int for typical protocol buffer
-// use-cases. Encoded protocol buffers are often in tag order with small tag
-// numbers.
-type tagMap struct {
-	fastTags []int
-	slowTags map[int]int
-}
-
-// tagMapFastLimit is the upper bound on the tag number that will be stored in
-// the tagMap slice rather than its map.
-const tagMapFastLimit = 1024
-
-func (p *tagMap) get(t int) (int, bool) {
-	if t > 0 && t < tagMapFastLimit {
-		if t >= len(p.fastTags) {
-			return 0, false
-		}
-		fi := p.fastTags[t]
-		return fi, fi >= 0
-	}
-	fi, ok := p.slowTags[t]
-	return fi, ok
-}
-
-func (p *tagMap) put(t int, fi int) {
-	if t > 0 && t < tagMapFastLimit {
-		for len(p.fastTags) < t+1 {
-			p.fastTags = append(p.fastTags, -1)
-		}
-		p.fastTags[t] = fi
-		return
-	}
-	if p.slowTags == nil {
-		p.slowTags = make(map[int]int)
-	}
-	p.slowTags[t] = fi
-}
-
-// StructProperties represents properties for all the fields of a struct.
-// decoderTags and decoderOrigNames should only be used by the decoder.
+// StructProperties represents protocol buffer type information for a
+// generated protobuf message in the open-struct API.
+//
+// Deprecated: Do not use.
 type StructProperties struct {
-	Prop             []*Properties  // properties for each field
-	reqCount         int            // required count
-	decoderTags      tagMap         // map from proto tag to struct field number
-	decoderOrigNames map[string]int // map from original name to struct field number
-	order            []int          // list of struct field numbers in tag order
+	// Prop are the properties for each field.
+	//
+	// Fields belonging to a oneof are stored in OneofTypes instead, with a
+	// single Properties representing the parent oneof held here.
+	//
+	// The order of Prop matches the order of fields in the Go struct.
+	// Struct fields that are not related to protobufs have a "XXX_" prefix
+	// in the Properties.Name and must be ignored by the user.
+	Prop []*Properties
 
 	// OneofTypes contains information about the oneof fields in this message.
-	// It is keyed by the original name of a field.
+	// It is keyed by the protobuf field name.
 	OneofTypes map[string]*OneofProperties
 }
 
-// OneofProperties represents information about a specific field in a oneof.
-type OneofProperties struct {
-	Type  reflect.Type // pointer to generated struct type for this oneof field
-	Field int          // struct field number of the containing oneof in the message
-	Prop  *Properties
-}
-
-// Implement the sorting interface so we can sort the fields in tag order, as recommended by the spec.
-// See encode.go, (*Buffer).enc_struct.
-
-func (sp *StructProperties) Len() int { return len(sp.order) }
-func (sp *StructProperties) Less(i, j int) bool {
-	return sp.Prop[sp.order[i]].Tag < sp.Prop[sp.order[j]].Tag
-}
-func (sp *StructProperties) Swap(i, j int) { sp.order[i], sp.order[j] = sp.order[j], sp.order[i] }
-
-// Properties represents the protocol-specific behavior of a single struct field.
+// Properties represents the type information for a protobuf message field.
+//
+// Deprecated: Do not use.
 type Properties struct {
-	Name     string // name of the field, for error messages
-	OrigName string // original name before protocol compiler (always set)
-	JSONName string // name to use for JSON; determined by protoc
-	Wire     string
+	// Name is a placeholder name with little meaningful semantic value.
+	// If the name has an "XXX_" prefix, the entire Properties must be ignored.
+	Name string
+	// OrigName is the protobuf field name or oneof name.
+	OrigName string
+	// JSONName is the JSON name for the protobuf field.
+	JSONName string
+	// Enum is a placeholder name for enums.
+	// For historical reasons, this is neither the Go name for the enum,
+	// nor the protobuf name for the enum.
+	Enum string // Deprecated: Do not use.
+	// Weak contains the full name of the weakly referenced message.
+	Weak string
+	// Wire is a string representation of the wire type.
+	Wire string
+	// WireType is the protobuf wire type for the field.
 	WireType int
-	Tag      int
+	// Tag is the protobuf field number.
+	Tag int
+	// Required reports whether this is a required field.
 	Required bool
+	// Optional reports whether this is a optional field.
 	Optional bool
+	// Repeated reports whether this is a repeated field.
 	Repeated bool
-	Packed   bool   // relevant for repeated primitives only
-	Enum     string // set for enum types only
-	proto3   bool   // whether this is known to be a proto3 field
-	oneof    bool   // whether this is a oneof field
-
-	Default    string // default value
-	HasDefault bool   // whether an explicit default was provided
-
-	stype reflect.Type      // set for struct types only
-	sprop *StructProperties // set for struct types only
+	// Packed reports whether this is a packed repeated field of scalars.
+	Packed bool
+	// Proto3 reports whether this field operates under the proto3 syntax.
+	Proto3 bool
+	// Oneof reports whether this field belongs within a oneof.
+	Oneof bool
+
+	// Default is the default value in string form.
+	Default string
+	// HasDefault reports whether the field has a default value.
+	HasDefault bool
+
+	// MapKeyProp is the properties for the key field for a map field.
+	MapKeyProp *Properties
+	// MapValProp is the properties for the value field for a map field.
+	MapValProp *Properties
+}
 
-	mtype      reflect.Type // set for map types only
-	MapKeyProp *Properties  // set for map types only
-	MapValProp *Properties  // set for map types only
+// OneofProperties represents the type information for a protobuf oneof.
+//
+// Deprecated: Do not use.
+type OneofProperties struct {
+	// Type is a pointer to the generated wrapper type for the field value.
+	// This is nil for messages that are not in the open-struct API.
+	Type reflect.Type
+	// Field is the index into StructProperties.Prop for the containing oneof.
+	Field int
+	// Prop is the properties for the field.
+	Prop *Properties
 }
 
 // String formats the properties in the protobuf struct field tag style.
 func (p *Properties) String() string {
 	s := p.Wire
-	s += ","
-	s += strconv.Itoa(p.Tag)
+	s += "," + strconv.Itoa(p.Tag)
 	if p.Required {
 		s += ",req"
 	}
@@ -170,18 +112,21 @@ func (p *Properties) String() string {
 		s += ",packed"
 	}
 	s += ",name=" + p.OrigName
-	if p.JSONName != p.OrigName {
+	if p.JSONName != "" {
 		s += ",json=" + p.JSONName
 	}
-	if p.proto3 {
+	if len(p.Enum) > 0 {
+		s += ",enum=" + p.Enum
+	}
+	if len(p.Weak) > 0 {
+		s += ",weak=" + p.Weak
+	}
+	if p.Proto3 {
 		s += ",proto3"
 	}
-	if p.oneof {
+	if p.Oneof {
 		s += ",oneof"
 	}
-	if len(p.Enum) > 0 {
-		s += ",enum=" + p.Enum
-	}
 	if p.HasDefault {
 		s += ",def=" + p.Default
 	}
@@ -189,356 +134,173 @@ func (p *Properties) String() string {
 }
 
 // Parse populates p by parsing a string in the protobuf struct field tag style.
-func (p *Properties) Parse(s string) {
-	// "bytes,49,opt,name=foo,def=hello!"
-	fields := strings.Split(s, ",") // breaks def=, but handled below.
-	if len(fields) < 2 {
-		log.Printf("proto: tag has too few fields: %q", s)
-		return
-	}
-
-	p.Wire = fields[0]
-	switch p.Wire {
-	case "varint":
-		p.WireType = WireVarint
-	case "fixed32":
-		p.WireType = WireFixed32
-	case "fixed64":
-		p.WireType = WireFixed64
-	case "zigzag32":
-		p.WireType = WireVarint
-	case "zigzag64":
-		p.WireType = WireVarint
-	case "bytes", "group":
-		p.WireType = WireBytes
-		// no numeric converter for non-numeric types
-	default:
-		log.Printf("proto: tag has unknown wire type: %q", s)
-		return
-	}
-
-	var err error
-	p.Tag, err = strconv.Atoi(fields[1])
-	if err != nil {
-		return
-	}
-
-outer:
-	for i := 2; i < len(fields); i++ {
-		f := fields[i]
-		switch {
-		case f == "req":
-			p.Required = true
-		case f == "opt":
+func (p *Properties) Parse(tag string) {
+	// For example: "bytes,49,opt,name=foo,def=hello!"
+	for len(tag) > 0 {
+		i := strings.IndexByte(tag, ',')
+		if i < 0 {
+			i = len(tag)
+		}
+		switch s := tag[:i]; {
+		case strings.HasPrefix(s, "name="):
+			p.OrigName = s[len("name="):]
+		case strings.HasPrefix(s, "json="):
+			p.JSONName = s[len("json="):]
+		case strings.HasPrefix(s, "enum="):
+			p.Enum = s[len("enum="):]
+		case strings.HasPrefix(s, "weak="):
+			p.Weak = s[len("weak="):]
+		case strings.Trim(s, "0123456789") == "":
+			n, _ := strconv.ParseUint(s, 10, 32)
+			p.Tag = int(n)
+		case s == "opt":
 			p.Optional = true
-		case f == "rep":
+		case s == "req":
+			p.Required = true
+		case s == "rep":
 			p.Repeated = true
-		case f == "packed":
+		case s == "varint" || s == "zigzag32" || s == "zigzag64":
+			p.Wire = s
+			p.WireType = WireVarint
+		case s == "fixed32":
+			p.Wire = s
+			p.WireType = WireFixed32
+		case s == "fixed64":
+			p.Wire = s
+			p.WireType = WireFixed64
+		case s == "bytes":
+			p.Wire = s
+			p.WireType = WireBytes
+		case s == "group":
+			p.Wire = s
+			p.WireType = WireStartGroup
+		case s == "packed":
 			p.Packed = true
-		case strings.HasPrefix(f, "name="):
-			p.OrigName = f[5:]
-		case strings.HasPrefix(f, "json="):
-			p.JSONName = f[5:]
-		case strings.HasPrefix(f, "enum="):
-			p.Enum = f[5:]
-		case f == "proto3":
-			p.proto3 = true
-		case f == "oneof":
-			p.oneof = true
-		case strings.HasPrefix(f, "def="):
+		case s == "proto3":
+			p.Proto3 = true
+		case s == "oneof":
+			p.Oneof = true
+		case strings.HasPrefix(s, "def="):
+			// The default tag is special in that everything afterwards is the
+			// default regardless of the presence of commas.
 			p.HasDefault = true
-			p.Default = f[4:] // rest of string
-			if i+1 < len(fields) {
-				// Commas aren't escaped, and def is always last.
-				p.Default += "," + strings.Join(fields[i+1:], ",")
-				break outer
-			}
-		}
-	}
-}
-
-var protoMessageType = reflect.TypeOf((*Message)(nil)).Elem()
-
-// setFieldProps initializes the field properties for submessages and maps.
-func (p *Properties) setFieldProps(typ reflect.Type, f *reflect.StructField, lockGetProp bool) {
-	switch t1 := typ; t1.Kind() {
-	case reflect.Ptr:
-		if t1.Elem().Kind() == reflect.Struct {
-			p.stype = t1.Elem()
-		}
-
-	case reflect.Slice:
-		if t2 := t1.Elem(); t2.Kind() == reflect.Ptr && t2.Elem().Kind() == reflect.Struct {
-			p.stype = t2.Elem()
-		}
-
-	case reflect.Map:
-		p.mtype = t1
-		p.MapKeyProp = &Properties{}
-		p.MapKeyProp.init(reflect.PtrTo(p.mtype.Key()), "Key", f.Tag.Get("protobuf_key"), nil, lockGetProp)
-		p.MapValProp = &Properties{}
-		vtype := p.mtype.Elem()
-		if vtype.Kind() != reflect.Ptr && vtype.Kind() != reflect.Slice {
-			// The value type is not a message (*T) or bytes ([]byte),
-			// so we need encoders for the pointer to this type.
-			vtype = reflect.PtrTo(vtype)
-		}
-		p.MapValProp.init(vtype, "Value", f.Tag.Get("protobuf_val"), nil, lockGetProp)
-	}
-
-	if p.stype != nil {
-		if lockGetProp {
-			p.sprop = GetProperties(p.stype)
-		} else {
-			p.sprop = getPropertiesLocked(p.stype)
+			p.Default, i = tag[len("def="):], len(tag)
 		}
+		tag = strings.TrimPrefix(tag[i:], ",")
 	}
 }
 
-var (
-	marshalerType = reflect.TypeOf((*Marshaler)(nil)).Elem()
-)
-
 // Init populates the properties from a protocol buffer struct tag.
+//
+// Deprecated: Do not use.
 func (p *Properties) Init(typ reflect.Type, name, tag string, f *reflect.StructField) {
-	p.init(typ, name, tag, f, true)
-}
-
-func (p *Properties) init(typ reflect.Type, name, tag string, f *reflect.StructField, lockGetProp bool) {
-	// "bytes,49,opt,def=hello!"
 	p.Name = name
 	p.OrigName = name
 	if tag == "" {
 		return
 	}
 	p.Parse(tag)
-	p.setFieldProps(typ, f, lockGetProp)
+
+	if typ != nil && typ.Kind() == reflect.Map {
+		p.MapKeyProp = new(Properties)
+		p.MapKeyProp.Init(nil, "Key", f.Tag.Get("protobuf_key"), nil)
+		p.MapValProp = new(Properties)
+		p.MapValProp.Init(nil, "Value", f.Tag.Get("protobuf_val"), nil)
+	}
 }
 
-var (
-	propertiesMu  sync.RWMutex
-	propertiesMap = make(map[reflect.Type]*StructProperties)
-)
+var propertiesCache sync.Map // map[reflect.Type]*StructProperties
 
-// GetProperties returns the list of properties for the type represented by t.
-// t must represent a generated struct type of a protocol message.
+// GetProperties returns the list of properties for the type represented by t,
+// which must be a generated protocol buffer message in the open-struct API,
+// where protobuf message fields are represented by exported Go struct fields.
+//
+// Deprecated: Use protobuf reflection instead.
 func GetProperties(t reflect.Type) *StructProperties {
-	if t.Kind() != reflect.Struct {
-		panic("proto: type must have kind struct")
-	}
-
-	// Most calls to GetProperties in a long-running program will be
-	// retrieving details for types we have seen before.
-	propertiesMu.RLock()
-	sprop, ok := propertiesMap[t]
-	propertiesMu.RUnlock()
-	if ok {
-		return sprop
+	if p, ok := propertiesCache.Load(t); ok {
+		return p.(*StructProperties)
 	}
-
-	propertiesMu.Lock()
-	sprop = getPropertiesLocked(t)
-	propertiesMu.Unlock()
-	return sprop
+	p, _ := propertiesCache.LoadOrStore(t, newProperties(t))
+	return p.(*StructProperties)
 }
 
-type (
-	oneofFuncsIface interface {
-		XXX_OneofFuncs() (func(Message, *Buffer) error, func(Message, int, int, *Buffer) (bool, error), func(Message) int, []interface{})
-	}
-	oneofWrappersIface interface {
-		XXX_OneofWrappers() []interface{}
-	}
-)
-
-// getPropertiesLocked requires that propertiesMu is held.
-func getPropertiesLocked(t reflect.Type) *StructProperties {
-	if prop, ok := propertiesMap[t]; ok {
-		return prop
+func newProperties(t reflect.Type) *StructProperties {
+	if t.Kind() != reflect.Struct {
+		panic(fmt.Sprintf("%v is not a generated message in the open-struct API", t))
 	}
 
+	var hasOneof bool
 	prop := new(StructProperties)
-	// in case of recursive protos, fill this in now.
-	propertiesMap[t] = prop
-
-	// build properties
-	prop.Prop = make([]*Properties, t.NumField())
-	prop.order = make([]int, t.NumField())
 
+	// Construct a list of properties for each field in the struct.
 	for i := 0; i < t.NumField(); i++ {
-		f := t.Field(i)
 		p := new(Properties)
-		name := f.Name
-		p.init(f.Type, name, f.Tag.Get("protobuf"), &f, false)
+		f := t.Field(i)
+		tagField := f.Tag.Get("protobuf")
+		p.Init(f.Type, f.Name, tagField, &f)
 
-		oneof := f.Tag.Get("protobuf_oneof") // special case
-		if oneof != "" {
-			// Oneof fields don't use the traditional protobuf tag.
-			p.OrigName = oneof
+		tagOneof := f.Tag.Get("protobuf_oneof")
+		if tagOneof != "" {
+			hasOneof = true
+			p.OrigName = tagOneof
 		}
-		prop.Prop[i] = p
-		prop.order[i] = i
-		if debug {
-			print(i, " ", f.Name, " ", t.String(), " ")
-			if p.Tag > 0 {
-				print(p.String())
-			}
-			print("\n")
+
+		// Rename unrelated struct fields with the "XXX_" prefix since so much
+		// user code simply checks for this to exclude special fields.
+		if tagField == "" && tagOneof == "" && !strings.HasPrefix(p.Name, "XXX_") {
+			p.Name = "XXX_" + p.Name
+			p.OrigName = "XXX_" + p.OrigName
+		} else if p.Weak != "" {
+			p.Name = p.OrigName // avoid possible "XXX_" prefix on weak field
 		}
+
+		prop.Prop = append(prop.Prop, p)
 	}
 
-	// Re-order prop.order.
-	sort.Sort(prop)
+	// Construct a mapping of oneof field names to properties.
+	if hasOneof {
+		var oneofWrappers []interface{}
+		if fn, ok := reflect.PtrTo(t).MethodByName("XXX_OneofFuncs"); ok {
+			oneofWrappers = fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))})[3].Interface().([]interface{})
+		}
+		if fn, ok := reflect.PtrTo(t).MethodByName("XXX_OneofWrappers"); ok {
+			oneofWrappers = fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))})[0].Interface().([]interface{})
+		}
+		if m, ok := reflect.Zero(reflect.PtrTo(t)).Interface().(protoreflect.ProtoMessage); ok {
+			if m, ok := m.ProtoReflect().(interface{ ProtoMessageInfo() *protoimpl.MessageInfo }); ok {
+				oneofWrappers = m.ProtoMessageInfo().OneofWrappers
+			}
+		}
 
-	var oots []interface{}
-	switch m := reflect.Zero(reflect.PtrTo(t)).Interface().(type) {
-	case oneofFuncsIface:
-		_, _, _, oots = m.XXX_OneofFuncs()
-	case oneofWrappersIface:
-		oots = m.XXX_OneofWrappers()
-	}
-	if len(oots) > 0 {
-		// Interpret oneof metadata.
 		prop.OneofTypes = make(map[string]*OneofProperties)
-		for _, oot := range oots {
-			oop := &OneofProperties{
-				Type: reflect.ValueOf(oot).Type(), // *T
+		for _, wrapper := range oneofWrappers {
+			p := &OneofProperties{
+				Type: reflect.ValueOf(wrapper).Type(), // *T
 				Prop: new(Properties),
 			}
-			sft := oop.Type.Elem().Field(0)
-			oop.Prop.Name = sft.Name
-			oop.Prop.Parse(sft.Tag.Get("protobuf"))
-			// There will be exactly one interface field that
-			// this new value is assignable to.
-			for i := 0; i < t.NumField(); i++ {
-				f := t.Field(i)
-				if f.Type.Kind() != reflect.Interface {
-					continue
+			f := p.Type.Elem().Field(0)
+			p.Prop.Name = f.Name
+			p.Prop.Parse(f.Tag.Get("protobuf"))
+
+			// Determine the struct field that contains this oneof.
+			// Each wrapper is assignable to exactly one parent field.
+			var foundOneof bool
+			for i := 0; i < t.NumField() && !foundOneof; i++ {
+				if p.Type.AssignableTo(t.Field(i).Type) {
+					p.Field = i
+					foundOneof = true
 				}
-				if !oop.Type.AssignableTo(f.Type) {
-					continue
-				}
-				oop.Field = i
-				break
 			}
-			prop.OneofTypes[oop.Prop.OrigName] = oop
-		}
-	}
-
-	// build required counts
-	// build tags
-	reqCount := 0
-	prop.decoderOrigNames = make(map[string]int)
-	for i, p := range prop.Prop {
-		if strings.HasPrefix(p.Name, "XXX_") {
-			// Internal fields should not appear in tags/origNames maps.
-			// They are handled specially when encoding and decoding.
-			continue
-		}
-		if p.Required {
-			reqCount++
+			if !foundOneof {
+				panic(fmt.Sprintf("%v is not a generated message in the open-struct API", t))
+			}
+			prop.OneofTypes[p.Prop.OrigName] = p
 		}
-		prop.decoderTags.put(p.Tag, i)
-		prop.decoderOrigNames[p.OrigName] = i
 	}
-	prop.reqCount = reqCount
 
 	return prop
 }
 
-// A global registry of enum types.
-// The generated code will register the generated maps by calling RegisterEnum.
-
-var enumValueMaps = make(map[string]map[string]int32)
-
-// RegisterEnum is called from the generated code to install the enum descriptor
-// maps into the global table to aid parsing text format protocol buffers.
-func RegisterEnum(typeName string, unusedNameMap map[int32]string, valueMap map[string]int32) {
-	if _, ok := enumValueMaps[typeName]; ok {
-		panic("proto: duplicate enum registered: " + typeName)
-	}
-	enumValueMaps[typeName] = valueMap
-}
-
-// EnumValueMap returns the mapping from names to integers of the
-// enum type enumType, or a nil if not found.
-func EnumValueMap(enumType string) map[string]int32 {
-	return enumValueMaps[enumType]
-}
-
-// A registry of all linked message types.
-// The string is a fully-qualified proto name ("pkg.Message").
-var (
-	protoTypedNils = make(map[string]Message)      // a map from proto names to typed nil pointers
-	protoMapTypes  = make(map[string]reflect.Type) // a map from proto names to map types
-	revProtoTypes  = make(map[reflect.Type]string)
-)
-
-// RegisterType is called from generated code and maps from the fully qualified
-// proto name to the type (pointer to struct) of the protocol buffer.
-func RegisterType(x Message, name string) {
-	if _, ok := protoTypedNils[name]; ok {
-		// TODO: Some day, make this a panic.
-		log.Printf("proto: duplicate proto type registered: %s", name)
-		return
-	}
-	t := reflect.TypeOf(x)
-	if v := reflect.ValueOf(x); v.Kind() == reflect.Ptr && v.Pointer() == 0 {
-		// Generated code always calls RegisterType with nil x.
-		// This check is just for extra safety.
-		protoTypedNils[name] = x
-	} else {
-		protoTypedNils[name] = reflect.Zero(t).Interface().(Message)
-	}
-	revProtoTypes[t] = name
-}
-
-// RegisterMapType is called from generated code and maps from the fully qualified
-// proto name to the native map type of the proto map definition.
-func RegisterMapType(x interface{}, name string) {
-	if reflect.TypeOf(x).Kind() != reflect.Map {
-		panic(fmt.Sprintf("RegisterMapType(%T, %q); want map", x, name))
-	}
-	if _, ok := protoMapTypes[name]; ok {
-		log.Printf("proto: duplicate proto type registered: %s", name)
-		return
-	}
-	t := reflect.TypeOf(x)
-	protoMapTypes[name] = t
-	revProtoTypes[t] = name
-}
-
-// MessageName returns the fully-qualified proto name for the given message type.
-func MessageName(x Message) string {
-	type xname interface {
-		XXX_MessageName() string
-	}
-	if m, ok := x.(xname); ok {
-		return m.XXX_MessageName()
-	}
-	return revProtoTypes[reflect.TypeOf(x)]
-}
-
-// MessageType returns the message type (pointer to struct) for a named message.
-// The type is not guaranteed to implement proto.Message if the name refers to a
-// map entry.
-func MessageType(name string) reflect.Type {
-	if t, ok := protoTypedNils[name]; ok {
-		return reflect.TypeOf(t)
-	}
-	return protoMapTypes[name]
-}
-
-// A registry of all linked proto files.
-var (
-	protoFiles = make(map[string][]byte) // file name => fileDescriptor
-)
-
-// RegisterFile is called from generated code and maps from the
-// full file name of a .proto file to its compressed FileDescriptorProto.
-func RegisterFile(filename string, fileDescriptor []byte) {
-	protoFiles[filename] = fileDescriptor
-}
-
-// FileDescriptor returns the compressed FileDescriptorProto for a .proto file.
-func FileDescriptor(filename string) []byte { return protoFiles[filename] }
+func (sp *StructProperties) Len() int           { return len(sp.Prop) }
+func (sp *StructProperties) Less(i, j int) bool { return false }
+func (sp *StructProperties) Swap(i, j int)      { return }
diff --git a/vendor/github.com/golang/protobuf/proto/proto.go b/vendor/github.com/golang/protobuf/proto/proto.go
new file mode 100644
index 0000000..5aee89c
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/proto.go
@@ -0,0 +1,167 @@
+// 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 proto provides functionality for handling protocol buffer messages.
+// In particular, it provides marshaling and unmarshaling between a protobuf
+// message and the binary wire format.
+//
+// See https://developers.google.com/protocol-buffers/docs/gotutorial for
+// more information.
+//
+// Deprecated: Use the "google.golang.org/protobuf/proto" package instead.
+package proto
+
+import (
+	protoV2 "google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+	"google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+	ProtoPackageIsVersion1 = true
+	ProtoPackageIsVersion2 = true
+	ProtoPackageIsVersion3 = true
+	ProtoPackageIsVersion4 = true
+)
+
+// GeneratedEnum is any enum type generated by protoc-gen-go
+// which is a named int32 kind.
+// This type exists for documentation purposes.
+type GeneratedEnum interface{}
+
+// GeneratedMessage is any message type generated by protoc-gen-go
+// which is a pointer to a named struct kind.
+// This type exists for documentation purposes.
+type GeneratedMessage interface{}
+
+// Message is a protocol buffer message.
+//
+// This is the v1 version of the message interface and is marginally better
+// than an empty interface as it lacks any method to programatically interact
+// with the contents of the message.
+//
+// A v2 message is declared in "google.golang.org/protobuf/proto".Message and
+// exposes protobuf reflection as a first-class feature of the interface.
+//
+// To convert a v1 message to a v2 message, use the MessageV2 function.
+// To convert a v2 message to a v1 message, use the MessageV1 function.
+type Message = protoiface.MessageV1
+
+// MessageV1 converts either a v1 or v2 message to a v1 message.
+// It returns nil if m is nil.
+func MessageV1(m GeneratedMessage) protoiface.MessageV1 {
+	return protoimpl.X.ProtoMessageV1Of(m)
+}
+
+// MessageV2 converts either a v1 or v2 message to a v2 message.
+// It returns nil if m is nil.
+func MessageV2(m GeneratedMessage) protoV2.Message {
+	return protoimpl.X.ProtoMessageV2Of(m)
+}
+
+// MessageReflect returns a reflective view for a message.
+// It returns nil if m is nil.
+func MessageReflect(m Message) protoreflect.Message {
+	return protoimpl.X.MessageOf(m)
+}
+
+// Marshaler is implemented by messages that can marshal themselves.
+// This interface is used by the following functions: Size, Marshal,
+// Buffer.Marshal, and Buffer.EncodeMessage.
+//
+// Deprecated: Do not implement.
+type Marshaler interface {
+	// Marshal formats the encoded bytes of the message.
+	// It should be deterministic and emit valid protobuf wire data.
+	// The caller takes ownership of the returned buffer.
+	Marshal() ([]byte, error)
+}
+
+// Unmarshaler is implemented by messages that can unmarshal themselves.
+// This interface is used by the following functions: Unmarshal, UnmarshalMerge,
+// Buffer.Unmarshal, Buffer.DecodeMessage, and Buffer.DecodeGroup.
+//
+// Deprecated: Do not implement.
+type Unmarshaler interface {
+	// Unmarshal parses the encoded bytes of the protobuf wire input.
+	// The provided buffer is only valid for during method call.
+	// It should not reset the receiver message.
+	Unmarshal([]byte) error
+}
+
+// Merger is implemented by messages that can merge themselves.
+// This interface is used by the following functions: Clone and Merge.
+//
+// Deprecated: Do not implement.
+type Merger interface {
+	// Merge merges the contents of src into the receiver message.
+	// It clones all data structures in src such that it aliases no mutable
+	// memory referenced by src.
+	Merge(src Message)
+}
+
+// RequiredNotSetError is an error type returned when
+// marshaling or unmarshaling a message with missing required fields.
+type RequiredNotSetError struct {
+	err error
+}
+
+func (e *RequiredNotSetError) Error() string {
+	if e.err != nil {
+		return e.err.Error()
+	}
+	return "proto: required field not set"
+}
+func (e *RequiredNotSetError) RequiredNotSet() bool {
+	return true
+}
+
+func checkRequiredNotSet(m protoV2.Message) error {
+	if err := protoV2.CheckInitialized(m); err != nil {
+		return &RequiredNotSetError{err: err}
+	}
+	return nil
+}
+
+// Clone returns a deep copy of src.
+func Clone(src Message) Message {
+	return MessageV1(protoV2.Clone(MessageV2(src)))
+}
+
+// Merge merges src into dst, which must be messages of the same type.
+//
+// Populated scalar fields in src are copied to dst, while populated
+// singular messages in src are merged into dst by recursively calling Merge.
+// The elements of every list field in src is appended to the corresponded
+// list fields in dst. The entries of every map field in src is copied into
+// the corresponding map field in dst, possibly replacing existing entries.
+// The unknown fields of src are appended to the unknown fields of dst.
+func Merge(dst, src Message) {
+	protoV2.Merge(MessageV2(dst), MessageV2(src))
+}
+
+// Equal reports whether two messages are equal.
+// If two messages marshal to the same bytes under deterministic serialization,
+// then Equal is guaranteed to report true.
+//
+// Two messages are equal if they are the same protobuf message type,
+// have the same set of populated known and extension field values,
+// and the same set of unknown fields values.
+//
+// Scalar values are compared with the equivalent of the == operator in Go,
+// except bytes values which are compared using bytes.Equal and
+// floating point values which specially treat NaNs as equal.
+// Message values are compared by recursively calling Equal.
+// Lists are equal if each element value is also equal.
+// Maps are equal if they have the same set of keys, where the pair of values
+// for each key is also equal.
+func Equal(x, y Message) bool {
+	return protoV2.Equal(MessageV2(x), MessageV2(y))
+}
+
+func isMessageSet(md protoreflect.MessageDescriptor) bool {
+	ms, ok := md.(interface{ IsMessageSet() bool })
+	return ok && ms.IsMessageSet()
+}
diff --git a/vendor/github.com/golang/protobuf/proto/registry.go b/vendor/github.com/golang/protobuf/proto/registry.go
new file mode 100644
index 0000000..1e7ff64
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/registry.go
@@ -0,0 +1,323 @@
+// 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 proto
+
+import (
+	"bytes"
+	"compress/gzip"
+	"fmt"
+	"io/ioutil"
+	"reflect"
+	"strings"
+	"sync"
+
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+	"google.golang.org/protobuf/runtime/protoimpl"
+)
+
+// filePath is the path to the proto source file.
+type filePath = string // e.g., "google/protobuf/descriptor.proto"
+
+// fileDescGZIP is the compressed contents of the encoded FileDescriptorProto.
+type fileDescGZIP = []byte
+
+var fileCache sync.Map // map[filePath]fileDescGZIP
+
+// RegisterFile is called from generated code to register the compressed
+// FileDescriptorProto with the file path for a proto source file.
+//
+// Deprecated: Use protoregistry.GlobalFiles.RegisterFile instead.
+func RegisterFile(s filePath, d fileDescGZIP) {
+	// Decompress the descriptor.
+	zr, err := gzip.NewReader(bytes.NewReader(d))
+	if err != nil {
+		panic(fmt.Sprintf("proto: invalid compressed file descriptor: %v", err))
+	}
+	b, err := ioutil.ReadAll(zr)
+	if err != nil {
+		panic(fmt.Sprintf("proto: invalid compressed file descriptor: %v", err))
+	}
+
+	// Construct a protoreflect.FileDescriptor from the raw descriptor.
+	// Note that DescBuilder.Build automatically registers the constructed
+	// file descriptor with the v2 registry.
+	protoimpl.DescBuilder{RawDescriptor: b}.Build()
+
+	// Locally cache the raw descriptor form for the file.
+	fileCache.Store(s, d)
+}
+
+// FileDescriptor returns the compressed FileDescriptorProto given the file path
+// for a proto source file. It returns nil if not found.
+//
+// Deprecated: Use protoregistry.GlobalFiles.FindFileByPath instead.
+func FileDescriptor(s filePath) fileDescGZIP {
+	if v, ok := fileCache.Load(s); ok {
+		return v.(fileDescGZIP)
+	}
+
+	// Find the descriptor in the v2 registry.
+	var b []byte
+	if fd, _ := protoregistry.GlobalFiles.FindFileByPath(s); fd != nil {
+		if fd, ok := fd.(interface{ ProtoLegacyRawDesc() []byte }); ok {
+			b = fd.ProtoLegacyRawDesc()
+		} else {
+			// TODO: Use protodesc.ToFileDescriptorProto to construct
+			// a descriptorpb.FileDescriptorProto and marshal it.
+			// However, doing so causes the proto package to have a dependency
+			// on descriptorpb, leading to cyclic dependency issues.
+		}
+	}
+
+	// Locally cache the raw descriptor form for the file.
+	if len(b) > 0 {
+		v, _ := fileCache.LoadOrStore(s, protoimpl.X.CompressGZIP(b))
+		return v.(fileDescGZIP)
+	}
+	return nil
+}
+
+// enumName is the name of an enum. For historical reasons, the enum name is
+// neither the full Go name nor the full protobuf name of the enum.
+// The name is the dot-separated combination of just the proto package that the
+// enum is declared within followed by the Go type name of the generated enum.
+type enumName = string // e.g., "my.proto.package.GoMessage_GoEnum"
+
+// enumsByName maps enum values by name to their numeric counterpart.
+type enumsByName = map[string]int32
+
+// enumsByNumber maps enum values by number to their name counterpart.
+type enumsByNumber = map[int32]string
+
+var enumCache sync.Map     // map[enumName]enumsByName
+var numFilesCache sync.Map // map[protoreflect.FullName]int
+
+// RegisterEnum is called from the generated code to register the mapping of
+// enum value names to enum numbers for the enum identified by s.
+//
+// Deprecated: Use protoregistry.GlobalTypes.RegisterEnum instead.
+func RegisterEnum(s enumName, _ enumsByNumber, m enumsByName) {
+	if _, ok := enumCache.Load(s); ok {
+		panic("proto: duplicate enum registered: " + s)
+	}
+	enumCache.Store(s, m)
+
+	// This does not forward registration to the v2 registry since this API
+	// lacks sufficient information to construct a complete v2 enum descriptor.
+}
+
+// EnumValueMap returns the mapping from enum value names to enum numbers for
+// the enum of the given name. It returns nil if not found.
+//
+// Deprecated: Use protoregistry.GlobalTypes.FindEnumByName instead.
+func EnumValueMap(s enumName) enumsByName {
+	if v, ok := enumCache.Load(s); ok {
+		return v.(enumsByName)
+	}
+
+	// Check whether the cache is stale. If the number of files in the current
+	// package differs, then it means that some enums may have been recently
+	// registered upstream that we do not know about.
+	var protoPkg protoreflect.FullName
+	if i := strings.LastIndexByte(s, '.'); i >= 0 {
+		protoPkg = protoreflect.FullName(s[:i])
+	}
+	v, _ := numFilesCache.Load(protoPkg)
+	numFiles, _ := v.(int)
+	if protoregistry.GlobalFiles.NumFilesByPackage(protoPkg) == numFiles {
+		return nil // cache is up-to-date; was not found earlier
+	}
+
+	// Update the enum cache for all enums declared in the given proto package.
+	numFiles = 0
+	protoregistry.GlobalFiles.RangeFilesByPackage(protoPkg, func(fd protoreflect.FileDescriptor) bool {
+		walkEnums(fd, func(ed protoreflect.EnumDescriptor) {
+			name := protoimpl.X.LegacyEnumName(ed)
+			if _, ok := enumCache.Load(name); !ok {
+				m := make(enumsByName)
+				evs := ed.Values()
+				for i := evs.Len() - 1; i >= 0; i-- {
+					ev := evs.Get(i)
+					m[string(ev.Name())] = int32(ev.Number())
+				}
+				enumCache.LoadOrStore(name, m)
+			}
+		})
+		numFiles++
+		return true
+	})
+	numFilesCache.Store(protoPkg, numFiles)
+
+	// Check cache again for enum map.
+	if v, ok := enumCache.Load(s); ok {
+		return v.(enumsByName)
+	}
+	return nil
+}
+
+// walkEnums recursively walks all enums declared in d.
+func walkEnums(d interface {
+	Enums() protoreflect.EnumDescriptors
+	Messages() protoreflect.MessageDescriptors
+}, f func(protoreflect.EnumDescriptor)) {
+	eds := d.Enums()
+	for i := eds.Len() - 1; i >= 0; i-- {
+		f(eds.Get(i))
+	}
+	mds := d.Messages()
+	for i := mds.Len() - 1; i >= 0; i-- {
+		walkEnums(mds.Get(i), f)
+	}
+}
+
+// messageName is the full name of protobuf message.
+type messageName = string
+
+var messageTypeCache sync.Map // map[messageName]reflect.Type
+
+// RegisterType is called from generated code to register the message Go type
+// for a message of the given name.
+//
+// Deprecated: Use protoregistry.GlobalTypes.RegisterMessage instead.
+func RegisterType(m Message, s messageName) {
+	mt := protoimpl.X.LegacyMessageTypeOf(m, protoreflect.FullName(s))
+	if err := protoregistry.GlobalTypes.RegisterMessage(mt); err != nil {
+		panic(err)
+	}
+	messageTypeCache.Store(s, reflect.TypeOf(m))
+}
+
+// RegisterMapType is called from generated code to register the Go map type
+// for a protobuf message representing a map entry.
+//
+// Deprecated: Do not use.
+func RegisterMapType(m interface{}, s messageName) {
+	t := reflect.TypeOf(m)
+	if t.Kind() != reflect.Map {
+		panic(fmt.Sprintf("invalid map kind: %v", t))
+	}
+	if _, ok := messageTypeCache.Load(s); ok {
+		panic(fmt.Errorf("proto: duplicate proto message registered: %s", s))
+	}
+	messageTypeCache.Store(s, t)
+}
+
+// MessageType returns the message type for a named message.
+// It returns nil if not found.
+//
+// Deprecated: Use protoregistry.GlobalTypes.FindMessageByName instead.
+func MessageType(s messageName) reflect.Type {
+	if v, ok := messageTypeCache.Load(s); ok {
+		return v.(reflect.Type)
+	}
+
+	// Derive the message type from the v2 registry.
+	var t reflect.Type
+	if mt, _ := protoregistry.GlobalTypes.FindMessageByName(protoreflect.FullName(s)); mt != nil {
+		t = messageGoType(mt)
+	}
+
+	// If we could not get a concrete type, it is possible that it is a
+	// pseudo-message for a map entry.
+	if t == nil {
+		d, _ := protoregistry.GlobalFiles.FindDescriptorByName(protoreflect.FullName(s))
+		if md, _ := d.(protoreflect.MessageDescriptor); md != nil && md.IsMapEntry() {
+			kt := goTypeForField(md.Fields().ByNumber(1))
+			vt := goTypeForField(md.Fields().ByNumber(2))
+			t = reflect.MapOf(kt, vt)
+		}
+	}
+
+	// Locally cache the message type for the given name.
+	if t != nil {
+		v, _ := messageTypeCache.LoadOrStore(s, t)
+		return v.(reflect.Type)
+	}
+	return nil
+}
+
+func goTypeForField(fd protoreflect.FieldDescriptor) reflect.Type {
+	switch k := fd.Kind(); k {
+	case protoreflect.EnumKind:
+		if et, _ := protoregistry.GlobalTypes.FindEnumByName(fd.Enum().FullName()); et != nil {
+			return enumGoType(et)
+		}
+		return reflect.TypeOf(protoreflect.EnumNumber(0))
+	case protoreflect.MessageKind, protoreflect.GroupKind:
+		if mt, _ := protoregistry.GlobalTypes.FindMessageByName(fd.Message().FullName()); mt != nil {
+			return messageGoType(mt)
+		}
+		return reflect.TypeOf((*protoreflect.Message)(nil)).Elem()
+	default:
+		return reflect.TypeOf(fd.Default().Interface())
+	}
+}
+
+func enumGoType(et protoreflect.EnumType) reflect.Type {
+	return reflect.TypeOf(et.New(0))
+}
+
+func messageGoType(mt protoreflect.MessageType) reflect.Type {
+	return reflect.TypeOf(MessageV1(mt.Zero().Interface()))
+}
+
+// MessageName returns the full protobuf name for the given message type.
+//
+// Deprecated: Use protoreflect.MessageDescriptor.FullName instead.
+func MessageName(m Message) messageName {
+	if m == nil {
+		return ""
+	}
+	if m, ok := m.(interface{ XXX_MessageName() messageName }); ok {
+		return m.XXX_MessageName()
+	}
+	return messageName(protoimpl.X.MessageDescriptorOf(m).FullName())
+}
+
+// RegisterExtension is called from the generated code to register
+// the extension descriptor.
+//
+// Deprecated: Use protoregistry.GlobalTypes.RegisterExtension instead.
+func RegisterExtension(d *ExtensionDesc) {
+	if err := protoregistry.GlobalTypes.RegisterExtension(d); err != nil {
+		panic(err)
+	}
+}
+
+type extensionsByNumber = map[int32]*ExtensionDesc
+
+var extensionCache sync.Map // map[messageName]extensionsByNumber
+
+// RegisteredExtensions returns a map of the registered extensions for the
+// provided protobuf message, indexed by the extension field number.
+//
+// Deprecated: Use protoregistry.GlobalTypes.RangeExtensionsByMessage instead.
+func RegisteredExtensions(m Message) extensionsByNumber {
+	// Check whether the cache is stale. If the number of extensions for
+	// the given message differs, then it means that some extensions were
+	// recently registered upstream that we do not know about.
+	s := MessageName(m)
+	v, _ := extensionCache.Load(s)
+	xs, _ := v.(extensionsByNumber)
+	if protoregistry.GlobalTypes.NumExtensionsByMessage(protoreflect.FullName(s)) == len(xs) {
+		return xs // cache is up-to-date
+	}
+
+	// Cache is stale, re-compute the extensions map.
+	xs = make(extensionsByNumber)
+	protoregistry.GlobalTypes.RangeExtensionsByMessage(protoreflect.FullName(s), func(xt protoreflect.ExtensionType) bool {
+		if xd, ok := xt.(*ExtensionDesc); ok {
+			xs[int32(xt.TypeDescriptor().Number())] = xd
+		} else {
+			// TODO: This implies that the protoreflect.ExtensionType is a
+			// custom type not generated by protoc-gen-go. We could try and
+			// convert the type to an ExtensionDesc.
+		}
+		return true
+	})
+	extensionCache.Store(s, xs)
+	return xs
+}
diff --git a/vendor/github.com/golang/protobuf/proto/table_marshal.go b/vendor/github.com/golang/protobuf/proto/table_marshal.go
deleted file mode 100644
index 5cb11fa..0000000
--- a/vendor/github.com/golang/protobuf/proto/table_marshal.go
+++ /dev/null
@@ -1,2776 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2016 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-import (
-	"errors"
-	"fmt"
-	"math"
-	"reflect"
-	"sort"
-	"strconv"
-	"strings"
-	"sync"
-	"sync/atomic"
-	"unicode/utf8"
-)
-
-// a sizer takes a pointer to a field and the size of its tag, computes the size of
-// the encoded data.
-type sizer func(pointer, int) int
-
-// a marshaler takes a byte slice, a pointer to a field, and its tag (in wire format),
-// marshals the field to the end of the slice, returns the slice and error (if any).
-type marshaler func(b []byte, ptr pointer, wiretag uint64, deterministic bool) ([]byte, error)
-
-// marshalInfo is the information used for marshaling a message.
-type marshalInfo struct {
-	typ          reflect.Type
-	fields       []*marshalFieldInfo
-	unrecognized field                      // offset of XXX_unrecognized
-	extensions   field                      // offset of XXX_InternalExtensions
-	v1extensions field                      // offset of XXX_extensions
-	sizecache    field                      // offset of XXX_sizecache
-	initialized  int32                      // 0 -- only typ is set, 1 -- fully initialized
-	messageset   bool                       // uses message set wire format
-	hasmarshaler bool                       // has custom marshaler
-	sync.RWMutex                            // protect extElems map, also for initialization
-	extElems     map[int32]*marshalElemInfo // info of extension elements
-}
-
-// marshalFieldInfo is the information used for marshaling a field of a message.
-type marshalFieldInfo struct {
-	field      field
-	wiretag    uint64 // tag in wire format
-	tagsize    int    // size of tag in wire format
-	sizer      sizer
-	marshaler  marshaler
-	isPointer  bool
-	required   bool                              // field is required
-	name       string                            // name of the field, for error reporting
-	oneofElems map[reflect.Type]*marshalElemInfo // info of oneof elements
-}
-
-// marshalElemInfo is the information used for marshaling an extension or oneof element.
-type marshalElemInfo struct {
-	wiretag   uint64 // tag in wire format
-	tagsize   int    // size of tag in wire format
-	sizer     sizer
-	marshaler marshaler
-	isptr     bool // elem is pointer typed, thus interface of this type is a direct interface (extension only)
-	deref     bool // dereference the pointer before operating on it; implies isptr
-}
-
-var (
-	marshalInfoMap  = map[reflect.Type]*marshalInfo{}
-	marshalInfoLock sync.Mutex
-)
-
-// getMarshalInfo returns the information to marshal a given type of message.
-// The info it returns may not necessarily initialized.
-// t is the type of the message (NOT the pointer to it).
-func getMarshalInfo(t reflect.Type) *marshalInfo {
-	marshalInfoLock.Lock()
-	u, ok := marshalInfoMap[t]
-	if !ok {
-		u = &marshalInfo{typ: t}
-		marshalInfoMap[t] = u
-	}
-	marshalInfoLock.Unlock()
-	return u
-}
-
-// Size is the entry point from generated code,
-// and should be ONLY called by generated code.
-// It computes the size of encoded data of msg.
-// a is a pointer to a place to store cached marshal info.
-func (a *InternalMessageInfo) Size(msg Message) int {
-	u := getMessageMarshalInfo(msg, a)
-	ptr := toPointer(&msg)
-	if ptr.isNil() {
-		// We get here if msg is a typed nil ((*SomeMessage)(nil)),
-		// so it satisfies the interface, and msg == nil wouldn't
-		// catch it. We don't want crash in this case.
-		return 0
-	}
-	return u.size(ptr)
-}
-
-// Marshal is the entry point from generated code,
-// and should be ONLY called by generated code.
-// It marshals msg to the end of b.
-// a is a pointer to a place to store cached marshal info.
-func (a *InternalMessageInfo) Marshal(b []byte, msg Message, deterministic bool) ([]byte, error) {
-	u := getMessageMarshalInfo(msg, a)
-	ptr := toPointer(&msg)
-	if ptr.isNil() {
-		// We get here if msg is a typed nil ((*SomeMessage)(nil)),
-		// so it satisfies the interface, and msg == nil wouldn't
-		// catch it. We don't want crash in this case.
-		return b, ErrNil
-	}
-	return u.marshal(b, ptr, deterministic)
-}
-
-func getMessageMarshalInfo(msg interface{}, a *InternalMessageInfo) *marshalInfo {
-	// u := a.marshal, but atomically.
-	// We use an atomic here to ensure memory consistency.
-	u := atomicLoadMarshalInfo(&a.marshal)
-	if u == nil {
-		// Get marshal information from type of message.
-		t := reflect.ValueOf(msg).Type()
-		if t.Kind() != reflect.Ptr {
-			panic(fmt.Sprintf("cannot handle non-pointer message type %v", t))
-		}
-		u = getMarshalInfo(t.Elem())
-		// Store it in the cache for later users.
-		// a.marshal = u, but atomically.
-		atomicStoreMarshalInfo(&a.marshal, u)
-	}
-	return u
-}
-
-// size is the main function to compute the size of the encoded data of a message.
-// ptr is the pointer to the message.
-func (u *marshalInfo) size(ptr pointer) int {
-	if atomic.LoadInt32(&u.initialized) == 0 {
-		u.computeMarshalInfo()
-	}
-
-	// If the message can marshal itself, let it do it, for compatibility.
-	// NOTE: This is not efficient.
-	if u.hasmarshaler {
-		m := ptr.asPointerTo(u.typ).Interface().(Marshaler)
-		b, _ := m.Marshal()
-		return len(b)
-	}
-
-	n := 0
-	for _, f := range u.fields {
-		if f.isPointer && ptr.offset(f.field).getPointer().isNil() {
-			// nil pointer always marshals to nothing
-			continue
-		}
-		n += f.sizer(ptr.offset(f.field), f.tagsize)
-	}
-	if u.extensions.IsValid() {
-		e := ptr.offset(u.extensions).toExtensions()
-		if u.messageset {
-			n += u.sizeMessageSet(e)
-		} else {
-			n += u.sizeExtensions(e)
-		}
-	}
-	if u.v1extensions.IsValid() {
-		m := *ptr.offset(u.v1extensions).toOldExtensions()
-		n += u.sizeV1Extensions(m)
-	}
-	if u.unrecognized.IsValid() {
-		s := *ptr.offset(u.unrecognized).toBytes()
-		n += len(s)
-	}
-	// cache the result for use in marshal
-	if u.sizecache.IsValid() {
-		atomic.StoreInt32(ptr.offset(u.sizecache).toInt32(), int32(n))
-	}
-	return n
-}
-
-// cachedsize gets the size from cache. If there is no cache (i.e. message is not generated),
-// fall back to compute the size.
-func (u *marshalInfo) cachedsize(ptr pointer) int {
-	if u.sizecache.IsValid() {
-		return int(atomic.LoadInt32(ptr.offset(u.sizecache).toInt32()))
-	}
-	return u.size(ptr)
-}
-
-// marshal is the main function to marshal a message. It takes a byte slice and appends
-// the encoded data to the end of the slice, returns the slice and error (if any).
-// ptr is the pointer to the message.
-// If deterministic is true, map is marshaled in deterministic order.
-func (u *marshalInfo) marshal(b []byte, ptr pointer, deterministic bool) ([]byte, error) {
-	if atomic.LoadInt32(&u.initialized) == 0 {
-		u.computeMarshalInfo()
-	}
-
-	// If the message can marshal itself, let it do it, for compatibility.
-	// NOTE: This is not efficient.
-	if u.hasmarshaler {
-		m := ptr.asPointerTo(u.typ).Interface().(Marshaler)
-		b1, err := m.Marshal()
-		b = append(b, b1...)
-		return b, err
-	}
-
-	var err, errLater error
-	// The old marshaler encodes extensions at beginning.
-	if u.extensions.IsValid() {
-		e := ptr.offset(u.extensions).toExtensions()
-		if u.messageset {
-			b, err = u.appendMessageSet(b, e, deterministic)
-		} else {
-			b, err = u.appendExtensions(b, e, deterministic)
-		}
-		if err != nil {
-			return b, err
-		}
-	}
-	if u.v1extensions.IsValid() {
-		m := *ptr.offset(u.v1extensions).toOldExtensions()
-		b, err = u.appendV1Extensions(b, m, deterministic)
-		if err != nil {
-			return b, err
-		}
-	}
-	for _, f := range u.fields {
-		if f.required {
-			if ptr.offset(f.field).getPointer().isNil() {
-				// Required field is not set.
-				// We record the error but keep going, to give a complete marshaling.
-				if errLater == nil {
-					errLater = &RequiredNotSetError{f.name}
-				}
-				continue
-			}
-		}
-		if f.isPointer && ptr.offset(f.field).getPointer().isNil() {
-			// nil pointer always marshals to nothing
-			continue
-		}
-		b, err = f.marshaler(b, ptr.offset(f.field), f.wiretag, deterministic)
-		if err != nil {
-			if err1, ok := err.(*RequiredNotSetError); ok {
-				// Required field in submessage is not set.
-				// We record the error but keep going, to give a complete marshaling.
-				if errLater == nil {
-					errLater = &RequiredNotSetError{f.name + "." + err1.field}
-				}
-				continue
-			}
-			if err == errRepeatedHasNil {
-				err = errors.New("proto: repeated field " + f.name + " has nil element")
-			}
-			if err == errInvalidUTF8 {
-				if errLater == nil {
-					fullName := revProtoTypes[reflect.PtrTo(u.typ)] + "." + f.name
-					errLater = &invalidUTF8Error{fullName}
-				}
-				continue
-			}
-			return b, err
-		}
-	}
-	if u.unrecognized.IsValid() {
-		s := *ptr.offset(u.unrecognized).toBytes()
-		b = append(b, s...)
-	}
-	return b, errLater
-}
-
-// computeMarshalInfo initializes the marshal info.
-func (u *marshalInfo) computeMarshalInfo() {
-	u.Lock()
-	defer u.Unlock()
-	if u.initialized != 0 { // non-atomic read is ok as it is protected by the lock
-		return
-	}
-
-	t := u.typ
-	u.unrecognized = invalidField
-	u.extensions = invalidField
-	u.v1extensions = invalidField
-	u.sizecache = invalidField
-
-	// If the message can marshal itself, let it do it, for compatibility.
-	// NOTE: This is not efficient.
-	if reflect.PtrTo(t).Implements(marshalerType) {
-		u.hasmarshaler = true
-		atomic.StoreInt32(&u.initialized, 1)
-		return
-	}
-
-	// get oneof implementers
-	var oneofImplementers []interface{}
-	switch m := reflect.Zero(reflect.PtrTo(t)).Interface().(type) {
-	case oneofFuncsIface:
-		_, _, _, oneofImplementers = m.XXX_OneofFuncs()
-	case oneofWrappersIface:
-		oneofImplementers = m.XXX_OneofWrappers()
-	}
-
-	n := t.NumField()
-
-	// deal with XXX fields first
-	for i := 0; i < t.NumField(); i++ {
-		f := t.Field(i)
-		if !strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-		switch f.Name {
-		case "XXX_sizecache":
-			u.sizecache = toField(&f)
-		case "XXX_unrecognized":
-			u.unrecognized = toField(&f)
-		case "XXX_InternalExtensions":
-			u.extensions = toField(&f)
-			u.messageset = f.Tag.Get("protobuf_messageset") == "1"
-		case "XXX_extensions":
-			u.v1extensions = toField(&f)
-		case "XXX_NoUnkeyedLiteral":
-			// nothing to do
-		default:
-			panic("unknown XXX field: " + f.Name)
-		}
-		n--
-	}
-
-	// normal fields
-	fields := make([]marshalFieldInfo, n) // batch allocation
-	u.fields = make([]*marshalFieldInfo, 0, n)
-	for i, j := 0, 0; i < t.NumField(); i++ {
-		f := t.Field(i)
-
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-		field := &fields[j]
-		j++
-		field.name = f.Name
-		u.fields = append(u.fields, field)
-		if f.Tag.Get("protobuf_oneof") != "" {
-			field.computeOneofFieldInfo(&f, oneofImplementers)
-			continue
-		}
-		if f.Tag.Get("protobuf") == "" {
-			// field has no tag (not in generated message), ignore it
-			u.fields = u.fields[:len(u.fields)-1]
-			j--
-			continue
-		}
-		field.computeMarshalFieldInfo(&f)
-	}
-
-	// fields are marshaled in tag order on the wire.
-	sort.Sort(byTag(u.fields))
-
-	atomic.StoreInt32(&u.initialized, 1)
-}
-
-// helper for sorting fields by tag
-type byTag []*marshalFieldInfo
-
-func (a byTag) Len() int           { return len(a) }
-func (a byTag) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }
-func (a byTag) Less(i, j int) bool { return a[i].wiretag < a[j].wiretag }
-
-// getExtElemInfo returns the information to marshal an extension element.
-// The info it returns is initialized.
-func (u *marshalInfo) getExtElemInfo(desc *ExtensionDesc) *marshalElemInfo {
-	// get from cache first
-	u.RLock()
-	e, ok := u.extElems[desc.Field]
-	u.RUnlock()
-	if ok {
-		return e
-	}
-
-	t := reflect.TypeOf(desc.ExtensionType) // pointer or slice to basic type or struct
-	tags := strings.Split(desc.Tag, ",")
-	tag, err := strconv.Atoi(tags[1])
-	if err != nil {
-		panic("tag is not an integer")
-	}
-	wt := wiretype(tags[0])
-	if t.Kind() == reflect.Ptr && t.Elem().Kind() != reflect.Struct {
-		t = t.Elem()
-	}
-	sizer, marshaler := typeMarshaler(t, tags, false, false)
-	var deref bool
-	if t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8 {
-		t = reflect.PtrTo(t)
-		deref = true
-	}
-	e = &marshalElemInfo{
-		wiretag:   uint64(tag)<<3 | wt,
-		tagsize:   SizeVarint(uint64(tag) << 3),
-		sizer:     sizer,
-		marshaler: marshaler,
-		isptr:     t.Kind() == reflect.Ptr,
-		deref:     deref,
-	}
-
-	// update cache
-	u.Lock()
-	if u.extElems == nil {
-		u.extElems = make(map[int32]*marshalElemInfo)
-	}
-	u.extElems[desc.Field] = e
-	u.Unlock()
-	return e
-}
-
-// computeMarshalFieldInfo fills up the information to marshal a field.
-func (fi *marshalFieldInfo) computeMarshalFieldInfo(f *reflect.StructField) {
-	// parse protobuf tag of the field.
-	// tag has format of "bytes,49,opt,name=foo,def=hello!"
-	tags := strings.Split(f.Tag.Get("protobuf"), ",")
-	if tags[0] == "" {
-		return
-	}
-	tag, err := strconv.Atoi(tags[1])
-	if err != nil {
-		panic("tag is not an integer")
-	}
-	wt := wiretype(tags[0])
-	if tags[2] == "req" {
-		fi.required = true
-	}
-	fi.setTag(f, tag, wt)
-	fi.setMarshaler(f, tags)
-}
-
-func (fi *marshalFieldInfo) computeOneofFieldInfo(f *reflect.StructField, oneofImplementers []interface{}) {
-	fi.field = toField(f)
-	fi.wiretag = math.MaxInt32 // Use a large tag number, make oneofs sorted at the end. This tag will not appear on the wire.
-	fi.isPointer = true
-	fi.sizer, fi.marshaler = makeOneOfMarshaler(fi, f)
-	fi.oneofElems = make(map[reflect.Type]*marshalElemInfo)
-
-	ityp := f.Type // interface type
-	for _, o := range oneofImplementers {
-		t := reflect.TypeOf(o)
-		if !t.Implements(ityp) {
-			continue
-		}
-		sf := t.Elem().Field(0) // oneof implementer is a struct with a single field
-		tags := strings.Split(sf.Tag.Get("protobuf"), ",")
-		tag, err := strconv.Atoi(tags[1])
-		if err != nil {
-			panic("tag is not an integer")
-		}
-		wt := wiretype(tags[0])
-		sizer, marshaler := typeMarshaler(sf.Type, tags, false, true) // oneof should not omit any zero value
-		fi.oneofElems[t.Elem()] = &marshalElemInfo{
-			wiretag:   uint64(tag)<<3 | wt,
-			tagsize:   SizeVarint(uint64(tag) << 3),
-			sizer:     sizer,
-			marshaler: marshaler,
-		}
-	}
-}
-
-// wiretype returns the wire encoding of the type.
-func wiretype(encoding string) uint64 {
-	switch encoding {
-	case "fixed32":
-		return WireFixed32
-	case "fixed64":
-		return WireFixed64
-	case "varint", "zigzag32", "zigzag64":
-		return WireVarint
-	case "bytes":
-		return WireBytes
-	case "group":
-		return WireStartGroup
-	}
-	panic("unknown wire type " + encoding)
-}
-
-// setTag fills up the tag (in wire format) and its size in the info of a field.
-func (fi *marshalFieldInfo) setTag(f *reflect.StructField, tag int, wt uint64) {
-	fi.field = toField(f)
-	fi.wiretag = uint64(tag)<<3 | wt
-	fi.tagsize = SizeVarint(uint64(tag) << 3)
-}
-
-// setMarshaler fills up the sizer and marshaler in the info of a field.
-func (fi *marshalFieldInfo) setMarshaler(f *reflect.StructField, tags []string) {
-	switch f.Type.Kind() {
-	case reflect.Map:
-		// map field
-		fi.isPointer = true
-		fi.sizer, fi.marshaler = makeMapMarshaler(f)
-		return
-	case reflect.Ptr, reflect.Slice:
-		fi.isPointer = true
-	}
-	fi.sizer, fi.marshaler = typeMarshaler(f.Type, tags, true, false)
-}
-
-// typeMarshaler returns the sizer and marshaler of a given field.
-// t is the type of the field.
-// tags is the generated "protobuf" tag of the field.
-// If nozero is true, zero value is not marshaled to the wire.
-// If oneof is true, it is a oneof field.
-func typeMarshaler(t reflect.Type, tags []string, nozero, oneof bool) (sizer, marshaler) {
-	encoding := tags[0]
-
-	pointer := false
-	slice := false
-	if t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8 {
-		slice = true
-		t = t.Elem()
-	}
-	if t.Kind() == reflect.Ptr {
-		pointer = true
-		t = t.Elem()
-	}
-
-	packed := false
-	proto3 := false
-	validateUTF8 := true
-	for i := 2; i < len(tags); i++ {
-		if tags[i] == "packed" {
-			packed = true
-		}
-		if tags[i] == "proto3" {
-			proto3 = true
-		}
-	}
-	validateUTF8 = validateUTF8 && proto3
-
-	switch t.Kind() {
-	case reflect.Bool:
-		if pointer {
-			return sizeBoolPtr, appendBoolPtr
-		}
-		if slice {
-			if packed {
-				return sizeBoolPackedSlice, appendBoolPackedSlice
-			}
-			return sizeBoolSlice, appendBoolSlice
-		}
-		if nozero {
-			return sizeBoolValueNoZero, appendBoolValueNoZero
-		}
-		return sizeBoolValue, appendBoolValue
-	case reflect.Uint32:
-		switch encoding {
-		case "fixed32":
-			if pointer {
-				return sizeFixed32Ptr, appendFixed32Ptr
-			}
-			if slice {
-				if packed {
-					return sizeFixed32PackedSlice, appendFixed32PackedSlice
-				}
-				return sizeFixed32Slice, appendFixed32Slice
-			}
-			if nozero {
-				return sizeFixed32ValueNoZero, appendFixed32ValueNoZero
-			}
-			return sizeFixed32Value, appendFixed32Value
-		case "varint":
-			if pointer {
-				return sizeVarint32Ptr, appendVarint32Ptr
-			}
-			if slice {
-				if packed {
-					return sizeVarint32PackedSlice, appendVarint32PackedSlice
-				}
-				return sizeVarint32Slice, appendVarint32Slice
-			}
-			if nozero {
-				return sizeVarint32ValueNoZero, appendVarint32ValueNoZero
-			}
-			return sizeVarint32Value, appendVarint32Value
-		}
-	case reflect.Int32:
-		switch encoding {
-		case "fixed32":
-			if pointer {
-				return sizeFixedS32Ptr, appendFixedS32Ptr
-			}
-			if slice {
-				if packed {
-					return sizeFixedS32PackedSlice, appendFixedS32PackedSlice
-				}
-				return sizeFixedS32Slice, appendFixedS32Slice
-			}
-			if nozero {
-				return sizeFixedS32ValueNoZero, appendFixedS32ValueNoZero
-			}
-			return sizeFixedS32Value, appendFixedS32Value
-		case "varint":
-			if pointer {
-				return sizeVarintS32Ptr, appendVarintS32Ptr
-			}
-			if slice {
-				if packed {
-					return sizeVarintS32PackedSlice, appendVarintS32PackedSlice
-				}
-				return sizeVarintS32Slice, appendVarintS32Slice
-			}
-			if nozero {
-				return sizeVarintS32ValueNoZero, appendVarintS32ValueNoZero
-			}
-			return sizeVarintS32Value, appendVarintS32Value
-		case "zigzag32":
-			if pointer {
-				return sizeZigzag32Ptr, appendZigzag32Ptr
-			}
-			if slice {
-				if packed {
-					return sizeZigzag32PackedSlice, appendZigzag32PackedSlice
-				}
-				return sizeZigzag32Slice, appendZigzag32Slice
-			}
-			if nozero {
-				return sizeZigzag32ValueNoZero, appendZigzag32ValueNoZero
-			}
-			return sizeZigzag32Value, appendZigzag32Value
-		}
-	case reflect.Uint64:
-		switch encoding {
-		case "fixed64":
-			if pointer {
-				return sizeFixed64Ptr, appendFixed64Ptr
-			}
-			if slice {
-				if packed {
-					return sizeFixed64PackedSlice, appendFixed64PackedSlice
-				}
-				return sizeFixed64Slice, appendFixed64Slice
-			}
-			if nozero {
-				return sizeFixed64ValueNoZero, appendFixed64ValueNoZero
-			}
-			return sizeFixed64Value, appendFixed64Value
-		case "varint":
-			if pointer {
-				return sizeVarint64Ptr, appendVarint64Ptr
-			}
-			if slice {
-				if packed {
-					return sizeVarint64PackedSlice, appendVarint64PackedSlice
-				}
-				return sizeVarint64Slice, appendVarint64Slice
-			}
-			if nozero {
-				return sizeVarint64ValueNoZero, appendVarint64ValueNoZero
-			}
-			return sizeVarint64Value, appendVarint64Value
-		}
-	case reflect.Int64:
-		switch encoding {
-		case "fixed64":
-			if pointer {
-				return sizeFixedS64Ptr, appendFixedS64Ptr
-			}
-			if slice {
-				if packed {
-					return sizeFixedS64PackedSlice, appendFixedS64PackedSlice
-				}
-				return sizeFixedS64Slice, appendFixedS64Slice
-			}
-			if nozero {
-				return sizeFixedS64ValueNoZero, appendFixedS64ValueNoZero
-			}
-			return sizeFixedS64Value, appendFixedS64Value
-		case "varint":
-			if pointer {
-				return sizeVarintS64Ptr, appendVarintS64Ptr
-			}
-			if slice {
-				if packed {
-					return sizeVarintS64PackedSlice, appendVarintS64PackedSlice
-				}
-				return sizeVarintS64Slice, appendVarintS64Slice
-			}
-			if nozero {
-				return sizeVarintS64ValueNoZero, appendVarintS64ValueNoZero
-			}
-			return sizeVarintS64Value, appendVarintS64Value
-		case "zigzag64":
-			if pointer {
-				return sizeZigzag64Ptr, appendZigzag64Ptr
-			}
-			if slice {
-				if packed {
-					return sizeZigzag64PackedSlice, appendZigzag64PackedSlice
-				}
-				return sizeZigzag64Slice, appendZigzag64Slice
-			}
-			if nozero {
-				return sizeZigzag64ValueNoZero, appendZigzag64ValueNoZero
-			}
-			return sizeZigzag64Value, appendZigzag64Value
-		}
-	case reflect.Float32:
-		if pointer {
-			return sizeFloat32Ptr, appendFloat32Ptr
-		}
-		if slice {
-			if packed {
-				return sizeFloat32PackedSlice, appendFloat32PackedSlice
-			}
-			return sizeFloat32Slice, appendFloat32Slice
-		}
-		if nozero {
-			return sizeFloat32ValueNoZero, appendFloat32ValueNoZero
-		}
-		return sizeFloat32Value, appendFloat32Value
-	case reflect.Float64:
-		if pointer {
-			return sizeFloat64Ptr, appendFloat64Ptr
-		}
-		if slice {
-			if packed {
-				return sizeFloat64PackedSlice, appendFloat64PackedSlice
-			}
-			return sizeFloat64Slice, appendFloat64Slice
-		}
-		if nozero {
-			return sizeFloat64ValueNoZero, appendFloat64ValueNoZero
-		}
-		return sizeFloat64Value, appendFloat64Value
-	case reflect.String:
-		if validateUTF8 {
-			if pointer {
-				return sizeStringPtr, appendUTF8StringPtr
-			}
-			if slice {
-				return sizeStringSlice, appendUTF8StringSlice
-			}
-			if nozero {
-				return sizeStringValueNoZero, appendUTF8StringValueNoZero
-			}
-			return sizeStringValue, appendUTF8StringValue
-		}
-		if pointer {
-			return sizeStringPtr, appendStringPtr
-		}
-		if slice {
-			return sizeStringSlice, appendStringSlice
-		}
-		if nozero {
-			return sizeStringValueNoZero, appendStringValueNoZero
-		}
-		return sizeStringValue, appendStringValue
-	case reflect.Slice:
-		if slice {
-			return sizeBytesSlice, appendBytesSlice
-		}
-		if oneof {
-			// Oneof bytes field may also have "proto3" tag.
-			// We want to marshal it as a oneof field. Do this
-			// check before the proto3 check.
-			return sizeBytesOneof, appendBytesOneof
-		}
-		if proto3 {
-			return sizeBytes3, appendBytes3
-		}
-		return sizeBytes, appendBytes
-	case reflect.Struct:
-		switch encoding {
-		case "group":
-			if slice {
-				return makeGroupSliceMarshaler(getMarshalInfo(t))
-			}
-			return makeGroupMarshaler(getMarshalInfo(t))
-		case "bytes":
-			if slice {
-				return makeMessageSliceMarshaler(getMarshalInfo(t))
-			}
-			return makeMessageMarshaler(getMarshalInfo(t))
-		}
-	}
-	panic(fmt.Sprintf("unknown or mismatched type: type: %v, wire type: %v", t, encoding))
-}
-
-// Below are functions to size/marshal a specific type of a field.
-// They are stored in the field's info, and called by function pointers.
-// They have type sizer or marshaler.
-
-func sizeFixed32Value(_ pointer, tagsize int) int {
-	return 4 + tagsize
-}
-func sizeFixed32ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toUint32()
-	if v == 0 {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFixed32Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toUint32Ptr()
-	if p == nil {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFixed32Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint32Slice()
-	return (4 + tagsize) * len(s)
-}
-func sizeFixed32PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 4*len(s) + SizeVarint(uint64(4*len(s))) + tagsize
-}
-func sizeFixedS32Value(_ pointer, tagsize int) int {
-	return 4 + tagsize
-}
-func sizeFixedS32ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFixedS32Ptr(ptr pointer, tagsize int) int {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFixedS32Slice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	return (4 + tagsize) * len(s)
-}
-func sizeFixedS32PackedSlice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 4*len(s) + SizeVarint(uint64(4*len(s))) + tagsize
-}
-func sizeFloat32Value(_ pointer, tagsize int) int {
-	return 4 + tagsize
-}
-func sizeFloat32ValueNoZero(ptr pointer, tagsize int) int {
-	v := math.Float32bits(*ptr.toFloat32())
-	if v == 0 {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFloat32Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toFloat32Ptr()
-	if p == nil {
-		return 0
-	}
-	return 4 + tagsize
-}
-func sizeFloat32Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toFloat32Slice()
-	return (4 + tagsize) * len(s)
-}
-func sizeFloat32PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toFloat32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 4*len(s) + SizeVarint(uint64(4*len(s))) + tagsize
-}
-func sizeFixed64Value(_ pointer, tagsize int) int {
-	return 8 + tagsize
-}
-func sizeFixed64ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toUint64()
-	if v == 0 {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFixed64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toUint64Ptr()
-	if p == nil {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFixed64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint64Slice()
-	return (8 + tagsize) * len(s)
-}
-func sizeFixed64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 8*len(s) + SizeVarint(uint64(8*len(s))) + tagsize
-}
-func sizeFixedS64Value(_ pointer, tagsize int) int {
-	return 8 + tagsize
-}
-func sizeFixedS64ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFixedS64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFixedS64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	return (8 + tagsize) * len(s)
-}
-func sizeFixedS64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 8*len(s) + SizeVarint(uint64(8*len(s))) + tagsize
-}
-func sizeFloat64Value(_ pointer, tagsize int) int {
-	return 8 + tagsize
-}
-func sizeFloat64ValueNoZero(ptr pointer, tagsize int) int {
-	v := math.Float64bits(*ptr.toFloat64())
-	if v == 0 {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFloat64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toFloat64Ptr()
-	if p == nil {
-		return 0
-	}
-	return 8 + tagsize
-}
-func sizeFloat64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toFloat64Slice()
-	return (8 + tagsize) * len(s)
-}
-func sizeFloat64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toFloat64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	return 8*len(s) + SizeVarint(uint64(8*len(s))) + tagsize
-}
-func sizeVarint32Value(ptr pointer, tagsize int) int {
-	v := *ptr.toUint32()
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarint32ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toUint32()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarint32Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toUint32Ptr()
-	if p == nil {
-		return 0
-	}
-	return SizeVarint(uint64(*p)) + tagsize
-}
-func sizeVarint32Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint32Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v)) + tagsize
-	}
-	return n
-}
-func sizeVarint32PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeVarintS32Value(ptr pointer, tagsize int) int {
-	v := *ptr.toInt32()
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarintS32ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarintS32Ptr(ptr pointer, tagsize int) int {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return 0
-	}
-	return SizeVarint(uint64(*p)) + tagsize
-}
-func sizeVarintS32Slice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v)) + tagsize
-	}
-	return n
-}
-func sizeVarintS32PackedSlice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeVarint64Value(ptr pointer, tagsize int) int {
-	v := *ptr.toUint64()
-	return SizeVarint(v) + tagsize
-}
-func sizeVarint64ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toUint64()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(v) + tagsize
-}
-func sizeVarint64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toUint64Ptr()
-	if p == nil {
-		return 0
-	}
-	return SizeVarint(*p) + tagsize
-}
-func sizeVarint64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint64Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(v) + tagsize
-	}
-	return n
-}
-func sizeVarint64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toUint64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(v)
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeVarintS64Value(ptr pointer, tagsize int) int {
-	v := *ptr.toInt64()
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarintS64ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(uint64(v)) + tagsize
-}
-func sizeVarintS64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return 0
-	}
-	return SizeVarint(uint64(*p)) + tagsize
-}
-func sizeVarintS64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v)) + tagsize
-	}
-	return n
-}
-func sizeVarintS64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeZigzag32Value(ptr pointer, tagsize int) int {
-	v := *ptr.toInt32()
-	return SizeVarint(uint64((uint32(v)<<1)^uint32((int32(v)>>31)))) + tagsize
-}
-func sizeZigzag32ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(uint64((uint32(v)<<1)^uint32((int32(v)>>31)))) + tagsize
-}
-func sizeZigzag32Ptr(ptr pointer, tagsize int) int {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return 0
-	}
-	v := *p
-	return SizeVarint(uint64((uint32(v)<<1)^uint32((int32(v)>>31)))) + tagsize
-}
-func sizeZigzag32Slice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64((uint32(v)<<1)^uint32((int32(v)>>31)))) + tagsize
-	}
-	return n
-}
-func sizeZigzag32PackedSlice(ptr pointer, tagsize int) int {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64((uint32(v) << 1) ^ uint32((int32(v) >> 31))))
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeZigzag64Value(ptr pointer, tagsize int) int {
-	v := *ptr.toInt64()
-	return SizeVarint(uint64(v<<1)^uint64((int64(v)>>63))) + tagsize
-}
-func sizeZigzag64ValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return 0
-	}
-	return SizeVarint(uint64(v<<1)^uint64((int64(v)>>63))) + tagsize
-}
-func sizeZigzag64Ptr(ptr pointer, tagsize int) int {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return 0
-	}
-	v := *p
-	return SizeVarint(uint64(v<<1)^uint64((int64(v)>>63))) + tagsize
-}
-func sizeZigzag64Slice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v<<1)^uint64((int64(v)>>63))) + tagsize
-	}
-	return n
-}
-func sizeZigzag64PackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return 0
-	}
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v<<1) ^ uint64((int64(v) >> 63)))
-	}
-	return n + SizeVarint(uint64(n)) + tagsize
-}
-func sizeBoolValue(_ pointer, tagsize int) int {
-	return 1 + tagsize
-}
-func sizeBoolValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toBool()
-	if !v {
-		return 0
-	}
-	return 1 + tagsize
-}
-func sizeBoolPtr(ptr pointer, tagsize int) int {
-	p := *ptr.toBoolPtr()
-	if p == nil {
-		return 0
-	}
-	return 1 + tagsize
-}
-func sizeBoolSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toBoolSlice()
-	return (1 + tagsize) * len(s)
-}
-func sizeBoolPackedSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toBoolSlice()
-	if len(s) == 0 {
-		return 0
-	}
-	return len(s) + SizeVarint(uint64(len(s))) + tagsize
-}
-func sizeStringValue(ptr pointer, tagsize int) int {
-	v := *ptr.toString()
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeStringValueNoZero(ptr pointer, tagsize int) int {
-	v := *ptr.toString()
-	if v == "" {
-		return 0
-	}
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeStringPtr(ptr pointer, tagsize int) int {
-	p := *ptr.toStringPtr()
-	if p == nil {
-		return 0
-	}
-	v := *p
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeStringSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toStringSlice()
-	n := 0
-	for _, v := range s {
-		n += len(v) + SizeVarint(uint64(len(v))) + tagsize
-	}
-	return n
-}
-func sizeBytes(ptr pointer, tagsize int) int {
-	v := *ptr.toBytes()
-	if v == nil {
-		return 0
-	}
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeBytes3(ptr pointer, tagsize int) int {
-	v := *ptr.toBytes()
-	if len(v) == 0 {
-		return 0
-	}
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeBytesOneof(ptr pointer, tagsize int) int {
-	v := *ptr.toBytes()
-	return len(v) + SizeVarint(uint64(len(v))) + tagsize
-}
-func sizeBytesSlice(ptr pointer, tagsize int) int {
-	s := *ptr.toBytesSlice()
-	n := 0
-	for _, v := range s {
-		n += len(v) + SizeVarint(uint64(len(v))) + tagsize
-	}
-	return n
-}
-
-// appendFixed32 appends an encoded fixed32 to b.
-func appendFixed32(b []byte, v uint32) []byte {
-	b = append(b,
-		byte(v),
-		byte(v>>8),
-		byte(v>>16),
-		byte(v>>24))
-	return b
-}
-
-// appendFixed64 appends an encoded fixed64 to b.
-func appendFixed64(b []byte, v uint64) []byte {
-	b = append(b,
-		byte(v),
-		byte(v>>8),
-		byte(v>>16),
-		byte(v>>24),
-		byte(v>>32),
-		byte(v>>40),
-		byte(v>>48),
-		byte(v>>56))
-	return b
-}
-
-// appendVarint appends an encoded varint to b.
-func appendVarint(b []byte, v uint64) []byte {
-	// TODO: make 1-byte (maybe 2-byte) case inline-able, once we
-	// have non-leaf inliner.
-	switch {
-	case v < 1<<7:
-		b = append(b, byte(v))
-	case v < 1<<14:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte(v>>7))
-	case v < 1<<21:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte(v>>14))
-	case v < 1<<28:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte(v>>21))
-	case v < 1<<35:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte(v>>28))
-	case v < 1<<42:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte((v>>28)&0x7f|0x80),
-			byte(v>>35))
-	case v < 1<<49:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte((v>>28)&0x7f|0x80),
-			byte((v>>35)&0x7f|0x80),
-			byte(v>>42))
-	case v < 1<<56:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte((v>>28)&0x7f|0x80),
-			byte((v>>35)&0x7f|0x80),
-			byte((v>>42)&0x7f|0x80),
-			byte(v>>49))
-	case v < 1<<63:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte((v>>28)&0x7f|0x80),
-			byte((v>>35)&0x7f|0x80),
-			byte((v>>42)&0x7f|0x80),
-			byte((v>>49)&0x7f|0x80),
-			byte(v>>56))
-	default:
-		b = append(b,
-			byte(v&0x7f|0x80),
-			byte((v>>7)&0x7f|0x80),
-			byte((v>>14)&0x7f|0x80),
-			byte((v>>21)&0x7f|0x80),
-			byte((v>>28)&0x7f|0x80),
-			byte((v>>35)&0x7f|0x80),
-			byte((v>>42)&0x7f|0x80),
-			byte((v>>49)&0x7f|0x80),
-			byte((v>>56)&0x7f|0x80),
-			1)
-	}
-	return b
-}
-
-func appendFixed32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint32()
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, v)
-	return b, nil
-}
-func appendFixed32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint32()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, v)
-	return b, nil
-}
-func appendFixed32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toUint32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, *p)
-	return b, nil
-}
-func appendFixed32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed32(b, v)
-	}
-	return b, nil
-}
-func appendFixed32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(4*len(s)))
-	for _, v := range s {
-		b = appendFixed32(b, v)
-	}
-	return b, nil
-}
-func appendFixedS32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, uint32(v))
-	return b, nil
-}
-func appendFixedS32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, uint32(v))
-	return b, nil
-}
-func appendFixedS32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, uint32(*p))
-	return b, nil
-}
-func appendFixedS32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed32(b, uint32(v))
-	}
-	return b, nil
-}
-func appendFixedS32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(4*len(s)))
-	for _, v := range s {
-		b = appendFixed32(b, uint32(v))
-	}
-	return b, nil
-}
-func appendFloat32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := math.Float32bits(*ptr.toFloat32())
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, v)
-	return b, nil
-}
-func appendFloat32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := math.Float32bits(*ptr.toFloat32())
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, v)
-	return b, nil
-}
-func appendFloat32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toFloat32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed32(b, math.Float32bits(*p))
-	return b, nil
-}
-func appendFloat32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toFloat32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed32(b, math.Float32bits(v))
-	}
-	return b, nil
-}
-func appendFloat32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toFloat32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(4*len(s)))
-	for _, v := range s {
-		b = appendFixed32(b, math.Float32bits(v))
-	}
-	return b, nil
-}
-func appendFixed64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint64()
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, v)
-	return b, nil
-}
-func appendFixed64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint64()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, v)
-	return b, nil
-}
-func appendFixed64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toUint64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, *p)
-	return b, nil
-}
-func appendFixed64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed64(b, v)
-	}
-	return b, nil
-}
-func appendFixed64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(8*len(s)))
-	for _, v := range s {
-		b = appendFixed64(b, v)
-	}
-	return b, nil
-}
-func appendFixedS64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, uint64(v))
-	return b, nil
-}
-func appendFixedS64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, uint64(v))
-	return b, nil
-}
-func appendFixedS64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, uint64(*p))
-	return b, nil
-}
-func appendFixedS64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed64(b, uint64(v))
-	}
-	return b, nil
-}
-func appendFixedS64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(8*len(s)))
-	for _, v := range s {
-		b = appendFixed64(b, uint64(v))
-	}
-	return b, nil
-}
-func appendFloat64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := math.Float64bits(*ptr.toFloat64())
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, v)
-	return b, nil
-}
-func appendFloat64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := math.Float64bits(*ptr.toFloat64())
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, v)
-	return b, nil
-}
-func appendFloat64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toFloat64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendFixed64(b, math.Float64bits(*p))
-	return b, nil
-}
-func appendFloat64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toFloat64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendFixed64(b, math.Float64bits(v))
-	}
-	return b, nil
-}
-func appendFloat64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toFloat64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(8*len(s)))
-	for _, v := range s {
-		b = appendFixed64(b, math.Float64bits(v))
-	}
-	return b, nil
-}
-func appendVarint32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint32()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarint32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint32()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarint32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toUint32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(*p))
-	return b, nil
-}
-func appendVarint32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendVarint32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendVarintS32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarintS32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarintS32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(*p))
-	return b, nil
-}
-func appendVarintS32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendVarintS32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendVarint64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint64()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, v)
-	return b, nil
-}
-func appendVarint64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toUint64()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, v)
-	return b, nil
-}
-func appendVarint64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toUint64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, *p)
-	return b, nil
-}
-func appendVarint64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, v)
-	}
-	return b, nil
-}
-func appendVarint64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toUint64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(v)
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, v)
-	}
-	return b, nil
-}
-func appendVarintS64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarintS64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v))
-	return b, nil
-}
-func appendVarintS64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(*p))
-	return b, nil
-}
-func appendVarintS64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendVarintS64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v))
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, uint64(v))
-	}
-	return b, nil
-}
-func appendZigzag32Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64((uint32(v)<<1)^uint32((int32(v)>>31))))
-	return b, nil
-}
-func appendZigzag32ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt32()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64((uint32(v)<<1)^uint32((int32(v)>>31))))
-	return b, nil
-}
-func appendZigzag32Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := ptr.getInt32Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	v := *p
-	b = appendVarint(b, uint64((uint32(v)<<1)^uint32((int32(v)>>31))))
-	return b, nil
-}
-func appendZigzag32Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64((uint32(v)<<1)^uint32((int32(v)>>31))))
-	}
-	return b, nil
-}
-func appendZigzag32PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := ptr.getInt32Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64((uint32(v) << 1) ^ uint32((int32(v) >> 31))))
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, uint64((uint32(v)<<1)^uint32((int32(v)>>31))))
-	}
-	return b, nil
-}
-func appendZigzag64Value(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v<<1)^uint64((int64(v)>>63)))
-	return b, nil
-}
-func appendZigzag64ValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toInt64()
-	if v == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(v<<1)^uint64((int64(v)>>63)))
-	return b, nil
-}
-func appendZigzag64Ptr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toInt64Ptr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	v := *p
-	b = appendVarint(b, uint64(v<<1)^uint64((int64(v)>>63)))
-	return b, nil
-}
-func appendZigzag64Slice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(v<<1)^uint64((int64(v)>>63)))
-	}
-	return b, nil
-}
-func appendZigzag64PackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toInt64Slice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	// compute size
-	n := 0
-	for _, v := range s {
-		n += SizeVarint(uint64(v<<1) ^ uint64((int64(v) >> 63)))
-	}
-	b = appendVarint(b, uint64(n))
-	for _, v := range s {
-		b = appendVarint(b, uint64(v<<1)^uint64((int64(v)>>63)))
-	}
-	return b, nil
-}
-func appendBoolValue(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toBool()
-	b = appendVarint(b, wiretag)
-	if v {
-		b = append(b, 1)
-	} else {
-		b = append(b, 0)
-	}
-	return b, nil
-}
-func appendBoolValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toBool()
-	if !v {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = append(b, 1)
-	return b, nil
-}
-
-func appendBoolPtr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toBoolPtr()
-	if p == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	if *p {
-		b = append(b, 1)
-	} else {
-		b = append(b, 0)
-	}
-	return b, nil
-}
-func appendBoolSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toBoolSlice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		if v {
-			b = append(b, 1)
-		} else {
-			b = append(b, 0)
-		}
-	}
-	return b, nil
-}
-func appendBoolPackedSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toBoolSlice()
-	if len(s) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag&^7|WireBytes)
-	b = appendVarint(b, uint64(len(s)))
-	for _, v := range s {
-		if v {
-			b = append(b, 1)
-		} else {
-			b = append(b, 0)
-		}
-	}
-	return b, nil
-}
-func appendStringValue(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toString()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendStringValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toString()
-	if v == "" {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendStringPtr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	p := *ptr.toStringPtr()
-	if p == nil {
-		return b, nil
-	}
-	v := *p
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendStringSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toStringSlice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(len(v)))
-		b = append(b, v...)
-	}
-	return b, nil
-}
-func appendUTF8StringValue(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	var invalidUTF8 bool
-	v := *ptr.toString()
-	if !utf8.ValidString(v) {
-		invalidUTF8 = true
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	if invalidUTF8 {
-		return b, errInvalidUTF8
-	}
-	return b, nil
-}
-func appendUTF8StringValueNoZero(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	var invalidUTF8 bool
-	v := *ptr.toString()
-	if v == "" {
-		return b, nil
-	}
-	if !utf8.ValidString(v) {
-		invalidUTF8 = true
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	if invalidUTF8 {
-		return b, errInvalidUTF8
-	}
-	return b, nil
-}
-func appendUTF8StringPtr(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	var invalidUTF8 bool
-	p := *ptr.toStringPtr()
-	if p == nil {
-		return b, nil
-	}
-	v := *p
-	if !utf8.ValidString(v) {
-		invalidUTF8 = true
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	if invalidUTF8 {
-		return b, errInvalidUTF8
-	}
-	return b, nil
-}
-func appendUTF8StringSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	var invalidUTF8 bool
-	s := *ptr.toStringSlice()
-	for _, v := range s {
-		if !utf8.ValidString(v) {
-			invalidUTF8 = true
-		}
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(len(v)))
-		b = append(b, v...)
-	}
-	if invalidUTF8 {
-		return b, errInvalidUTF8
-	}
-	return b, nil
-}
-func appendBytes(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toBytes()
-	if v == nil {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendBytes3(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toBytes()
-	if len(v) == 0 {
-		return b, nil
-	}
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendBytesOneof(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	v := *ptr.toBytes()
-	b = appendVarint(b, wiretag)
-	b = appendVarint(b, uint64(len(v)))
-	b = append(b, v...)
-	return b, nil
-}
-func appendBytesSlice(b []byte, ptr pointer, wiretag uint64, _ bool) ([]byte, error) {
-	s := *ptr.toBytesSlice()
-	for _, v := range s {
-		b = appendVarint(b, wiretag)
-		b = appendVarint(b, uint64(len(v)))
-		b = append(b, v...)
-	}
-	return b, nil
-}
-
-// makeGroupMarshaler returns the sizer and marshaler for a group.
-// u is the marshal info of the underlying message.
-func makeGroupMarshaler(u *marshalInfo) (sizer, marshaler) {
-	return func(ptr pointer, tagsize int) int {
-			p := ptr.getPointer()
-			if p.isNil() {
-				return 0
-			}
-			return u.size(p) + 2*tagsize
-		},
-		func(b []byte, ptr pointer, wiretag uint64, deterministic bool) ([]byte, error) {
-			p := ptr.getPointer()
-			if p.isNil() {
-				return b, nil
-			}
-			var err error
-			b = appendVarint(b, wiretag) // start group
-			b, err = u.marshal(b, p, deterministic)
-			b = appendVarint(b, wiretag+(WireEndGroup-WireStartGroup)) // end group
-			return b, err
-		}
-}
-
-// makeGroupSliceMarshaler returns the sizer and marshaler for a group slice.
-// u is the marshal info of the underlying message.
-func makeGroupSliceMarshaler(u *marshalInfo) (sizer, marshaler) {
-	return func(ptr pointer, tagsize int) int {
-			s := ptr.getPointerSlice()
-			n := 0
-			for _, v := range s {
-				if v.isNil() {
-					continue
-				}
-				n += u.size(v) + 2*tagsize
-			}
-			return n
-		},
-		func(b []byte, ptr pointer, wiretag uint64, deterministic bool) ([]byte, error) {
-			s := ptr.getPointerSlice()
-			var err error
-			var nerr nonFatal
-			for _, v := range s {
-				if v.isNil() {
-					return b, errRepeatedHasNil
-				}
-				b = appendVarint(b, wiretag) // start group
-				b, err = u.marshal(b, v, deterministic)
-				b = appendVarint(b, wiretag+(WireEndGroup-WireStartGroup)) // end group
-				if !nerr.Merge(err) {
-					if err == ErrNil {
-						err = errRepeatedHasNil
-					}
-					return b, err
-				}
-			}
-			return b, nerr.E
-		}
-}
-
-// makeMessageMarshaler returns the sizer and marshaler for a message field.
-// u is the marshal info of the message.
-func makeMessageMarshaler(u *marshalInfo) (sizer, marshaler) {
-	return func(ptr pointer, tagsize int) int {
-			p := ptr.getPointer()
-			if p.isNil() {
-				return 0
-			}
-			siz := u.size(p)
-			return siz + SizeVarint(uint64(siz)) + tagsize
-		},
-		func(b []byte, ptr pointer, wiretag uint64, deterministic bool) ([]byte, error) {
-			p := ptr.getPointer()
-			if p.isNil() {
-				return b, nil
-			}
-			b = appendVarint(b, wiretag)
-			siz := u.cachedsize(p)
-			b = appendVarint(b, uint64(siz))
-			return u.marshal(b, p, deterministic)
-		}
-}
-
-// makeMessageSliceMarshaler returns the sizer and marshaler for a message slice.
-// u is the marshal info of the message.
-func makeMessageSliceMarshaler(u *marshalInfo) (sizer, marshaler) {
-	return func(ptr pointer, tagsize int) int {
-			s := ptr.getPointerSlice()
-			n := 0
-			for _, v := range s {
-				if v.isNil() {
-					continue
-				}
-				siz := u.size(v)
-				n += siz + SizeVarint(uint64(siz)) + tagsize
-			}
-			return n
-		},
-		func(b []byte, ptr pointer, wiretag uint64, deterministic bool) ([]byte, error) {
-			s := ptr.getPointerSlice()
-			var err error
-			var nerr nonFatal
-			for _, v := range s {
-				if v.isNil() {
-					return b, errRepeatedHasNil
-				}
-				b = appendVarint(b, wiretag)
-				siz := u.cachedsize(v)
-				b = appendVarint(b, uint64(siz))
-				b, err = u.marshal(b, v, deterministic)
-
-				if !nerr.Merge(err) {
-					if err == ErrNil {
-						err = errRepeatedHasNil
-					}
-					return b, err
-				}
-			}
-			return b, nerr.E
-		}
-}
-
-// makeMapMarshaler returns the sizer and marshaler for a map field.
-// f is the pointer to the reflect data structure of the field.
-func makeMapMarshaler(f *reflect.StructField) (sizer, marshaler) {
-	// figure out key and value type
-	t := f.Type
-	keyType := t.Key()
-	valType := t.Elem()
-	keyTags := strings.Split(f.Tag.Get("protobuf_key"), ",")
-	valTags := strings.Split(f.Tag.Get("protobuf_val"), ",")
-	keySizer, keyMarshaler := typeMarshaler(keyType, keyTags, false, false) // don't omit zero value in map
-	valSizer, valMarshaler := typeMarshaler(valType, valTags, false, false) // don't omit zero value in map
-	keyWireTag := 1<<3 | wiretype(keyTags[0])
-	valWireTag := 2<<3 | wiretype(valTags[0])
-
-	// We create an interface to get the addresses of the map key and value.
-	// If value is pointer-typed, the interface is a direct interface, the
-	// idata itself is the value. Otherwise, the idata is the pointer to the
-	// value.
-	// Key cannot be pointer-typed.
-	valIsPtr := valType.Kind() == reflect.Ptr
-
-	// If value is a message with nested maps, calling
-	// valSizer in marshal may be quadratic. We should use
-	// cached version in marshal (but not in size).
-	// If value is not message type, we don't have size cache,
-	// but it cannot be nested either. Just use valSizer.
-	valCachedSizer := valSizer
-	if valIsPtr && valType.Elem().Kind() == reflect.Struct {
-		u := getMarshalInfo(valType.Elem())
-		valCachedSizer = func(ptr pointer, tagsize int) int {
-			// Same as message sizer, but use cache.
-			p := ptr.getPointer()
-			if p.isNil() {
-				return 0
-			}
-			siz := u.cachedsize(p)
-			return siz + SizeVarint(uint64(siz)) + tagsize
-		}
-	}
-	return func(ptr pointer, tagsize int) int {
-			m := ptr.asPointerTo(t).Elem() // the map
-			n := 0
-			for _, k := range m.MapKeys() {
-				ki := k.Interface()
-				vi := m.MapIndex(k).Interface()
-				kaddr := toAddrPointer(&ki, false, false)      // pointer to key
-				vaddr := toAddrPointer(&vi, valIsPtr, false)   // pointer to value
-				siz := keySizer(kaddr, 1) + valSizer(vaddr, 1) // tag of key = 1 (size=1), tag of val = 2 (size=1)
-				n += siz + SizeVarint(uint64(siz)) + tagsize
-			}
-			return n
-		},
-		func(b []byte, ptr pointer, tag uint64, deterministic bool) ([]byte, error) {
-			m := ptr.asPointerTo(t).Elem() // the map
-			var err error
-			keys := m.MapKeys()
-			if len(keys) > 1 && deterministic {
-				sort.Sort(mapKeys(keys))
-			}
-
-			var nerr nonFatal
-			for _, k := range keys {
-				ki := k.Interface()
-				vi := m.MapIndex(k).Interface()
-				kaddr := toAddrPointer(&ki, false, false)    // pointer to key
-				vaddr := toAddrPointer(&vi, valIsPtr, false) // pointer to value
-				b = appendVarint(b, tag)
-				siz := keySizer(kaddr, 1) + valCachedSizer(vaddr, 1) // tag of key = 1 (size=1), tag of val = 2 (size=1)
-				b = appendVarint(b, uint64(siz))
-				b, err = keyMarshaler(b, kaddr, keyWireTag, deterministic)
-				if !nerr.Merge(err) {
-					return b, err
-				}
-				b, err = valMarshaler(b, vaddr, valWireTag, deterministic)
-				if err != ErrNil && !nerr.Merge(err) { // allow nil value in map
-					return b, err
-				}
-			}
-			return b, nerr.E
-		}
-}
-
-// makeOneOfMarshaler returns the sizer and marshaler for a oneof field.
-// fi is the marshal info of the field.
-// f is the pointer to the reflect data structure of the field.
-func makeOneOfMarshaler(fi *marshalFieldInfo, f *reflect.StructField) (sizer, marshaler) {
-	// Oneof field is an interface. We need to get the actual data type on the fly.
-	t := f.Type
-	return func(ptr pointer, _ int) int {
-			p := ptr.getInterfacePointer()
-			if p.isNil() {
-				return 0
-			}
-			v := ptr.asPointerTo(t).Elem().Elem().Elem() // *interface -> interface -> *struct -> struct
-			telem := v.Type()
-			e := fi.oneofElems[telem]
-			return e.sizer(p, e.tagsize)
-		},
-		func(b []byte, ptr pointer, _ uint64, deterministic bool) ([]byte, error) {
-			p := ptr.getInterfacePointer()
-			if p.isNil() {
-				return b, nil
-			}
-			v := ptr.asPointerTo(t).Elem().Elem().Elem() // *interface -> interface -> *struct -> struct
-			telem := v.Type()
-			if telem.Field(0).Type.Kind() == reflect.Ptr && p.getPointer().isNil() {
-				return b, errOneofHasNil
-			}
-			e := fi.oneofElems[telem]
-			return e.marshaler(b, p, e.wiretag, deterministic)
-		}
-}
-
-// sizeExtensions computes the size of encoded data for a XXX_InternalExtensions field.
-func (u *marshalInfo) sizeExtensions(ext *XXX_InternalExtensions) int {
-	m, mu := ext.extensionsRead()
-	if m == nil {
-		return 0
-	}
-	mu.Lock()
-
-	n := 0
-	for _, e := range m {
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			n += len(e.enc)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		n += ei.sizer(p, ei.tagsize)
-	}
-	mu.Unlock()
-	return n
-}
-
-// appendExtensions marshals a XXX_InternalExtensions field to the end of byte slice b.
-func (u *marshalInfo) appendExtensions(b []byte, ext *XXX_InternalExtensions, deterministic bool) ([]byte, error) {
-	m, mu := ext.extensionsRead()
-	if m == nil {
-		return b, nil
-	}
-	mu.Lock()
-	defer mu.Unlock()
-
-	var err error
-	var nerr nonFatal
-
-	// Fast-path for common cases: zero or one extensions.
-	// Don't bother sorting the keys.
-	if len(m) <= 1 {
-		for _, e := range m {
-			if e.value == nil || e.desc == nil {
-				// Extension is only in its encoded form.
-				b = append(b, e.enc...)
-				continue
-			}
-
-			// We don't skip extensions that have an encoded form set,
-			// because the extension value may have been mutated after
-			// the last time this function was called.
-
-			ei := u.getExtElemInfo(e.desc)
-			v := e.value
-			p := toAddrPointer(&v, ei.isptr, ei.deref)
-			b, err = ei.marshaler(b, p, ei.wiretag, deterministic)
-			if !nerr.Merge(err) {
-				return b, err
-			}
-		}
-		return b, nerr.E
-	}
-
-	// Sort the keys to provide a deterministic encoding.
-	// Not sure this is required, but the old code does it.
-	keys := make([]int, 0, len(m))
-	for k := range m {
-		keys = append(keys, int(k))
-	}
-	sort.Ints(keys)
-
-	for _, k := range keys {
-		e := m[int32(k)]
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			b = append(b, e.enc...)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		b, err = ei.marshaler(b, p, ei.wiretag, deterministic)
-		if !nerr.Merge(err) {
-			return b, err
-		}
-	}
-	return b, nerr.E
-}
-
-// message set format is:
-//   message MessageSet {
-//     repeated group Item = 1 {
-//       required int32 type_id = 2;
-//       required string message = 3;
-//     };
-//   }
-
-// sizeMessageSet computes the size of encoded data for a XXX_InternalExtensions field
-// in message set format (above).
-func (u *marshalInfo) sizeMessageSet(ext *XXX_InternalExtensions) int {
-	m, mu := ext.extensionsRead()
-	if m == nil {
-		return 0
-	}
-	mu.Lock()
-
-	n := 0
-	for id, e := range m {
-		n += 2                          // start group, end group. tag = 1 (size=1)
-		n += SizeVarint(uint64(id)) + 1 // type_id, tag = 2 (size=1)
-
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			msgWithLen := skipVarint(e.enc) // skip old tag, but leave the length varint
-			siz := len(msgWithLen)
-			n += siz + 1 // message, tag = 3 (size=1)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		n += ei.sizer(p, 1) // message, tag = 3 (size=1)
-	}
-	mu.Unlock()
-	return n
-}
-
-// appendMessageSet marshals a XXX_InternalExtensions field in message set format (above)
-// to the end of byte slice b.
-func (u *marshalInfo) appendMessageSet(b []byte, ext *XXX_InternalExtensions, deterministic bool) ([]byte, error) {
-	m, mu := ext.extensionsRead()
-	if m == nil {
-		return b, nil
-	}
-	mu.Lock()
-	defer mu.Unlock()
-
-	var err error
-	var nerr nonFatal
-
-	// Fast-path for common cases: zero or one extensions.
-	// Don't bother sorting the keys.
-	if len(m) <= 1 {
-		for id, e := range m {
-			b = append(b, 1<<3|WireStartGroup)
-			b = append(b, 2<<3|WireVarint)
-			b = appendVarint(b, uint64(id))
-
-			if e.value == nil || e.desc == nil {
-				// Extension is only in its encoded form.
-				msgWithLen := skipVarint(e.enc) // skip old tag, but leave the length varint
-				b = append(b, 3<<3|WireBytes)
-				b = append(b, msgWithLen...)
-				b = append(b, 1<<3|WireEndGroup)
-				continue
-			}
-
-			// We don't skip extensions that have an encoded form set,
-			// because the extension value may have been mutated after
-			// the last time this function was called.
-
-			ei := u.getExtElemInfo(e.desc)
-			v := e.value
-			p := toAddrPointer(&v, ei.isptr, ei.deref)
-			b, err = ei.marshaler(b, p, 3<<3|WireBytes, deterministic)
-			if !nerr.Merge(err) {
-				return b, err
-			}
-			b = append(b, 1<<3|WireEndGroup)
-		}
-		return b, nerr.E
-	}
-
-	// Sort the keys to provide a deterministic encoding.
-	keys := make([]int, 0, len(m))
-	for k := range m {
-		keys = append(keys, int(k))
-	}
-	sort.Ints(keys)
-
-	for _, id := range keys {
-		e := m[int32(id)]
-		b = append(b, 1<<3|WireStartGroup)
-		b = append(b, 2<<3|WireVarint)
-		b = appendVarint(b, uint64(id))
-
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			msgWithLen := skipVarint(e.enc) // skip old tag, but leave the length varint
-			b = append(b, 3<<3|WireBytes)
-			b = append(b, msgWithLen...)
-			b = append(b, 1<<3|WireEndGroup)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		b, err = ei.marshaler(b, p, 3<<3|WireBytes, deterministic)
-		b = append(b, 1<<3|WireEndGroup)
-		if !nerr.Merge(err) {
-			return b, err
-		}
-	}
-	return b, nerr.E
-}
-
-// sizeV1Extensions computes the size of encoded data for a V1-API extension field.
-func (u *marshalInfo) sizeV1Extensions(m map[int32]Extension) int {
-	if m == nil {
-		return 0
-	}
-
-	n := 0
-	for _, e := range m {
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			n += len(e.enc)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		n += ei.sizer(p, ei.tagsize)
-	}
-	return n
-}
-
-// appendV1Extensions marshals a V1-API extension field to the end of byte slice b.
-func (u *marshalInfo) appendV1Extensions(b []byte, m map[int32]Extension, deterministic bool) ([]byte, error) {
-	if m == nil {
-		return b, nil
-	}
-
-	// Sort the keys to provide a deterministic encoding.
-	keys := make([]int, 0, len(m))
-	for k := range m {
-		keys = append(keys, int(k))
-	}
-	sort.Ints(keys)
-
-	var err error
-	var nerr nonFatal
-	for _, k := range keys {
-		e := m[int32(k)]
-		if e.value == nil || e.desc == nil {
-			// Extension is only in its encoded form.
-			b = append(b, e.enc...)
-			continue
-		}
-
-		// We don't skip extensions that have an encoded form set,
-		// because the extension value may have been mutated after
-		// the last time this function was called.
-
-		ei := u.getExtElemInfo(e.desc)
-		v := e.value
-		p := toAddrPointer(&v, ei.isptr, ei.deref)
-		b, err = ei.marshaler(b, p, ei.wiretag, deterministic)
-		if !nerr.Merge(err) {
-			return b, err
-		}
-	}
-	return b, nerr.E
-}
-
-// newMarshaler is the interface representing objects that can marshal themselves.
-//
-// This exists to support protoc-gen-go generated messages.
-// The proto package will stop type-asserting to this interface in the future.
-//
-// DO NOT DEPEND ON THIS.
-type newMarshaler interface {
-	XXX_Size() int
-	XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
-}
-
-// Size returns the encoded size of a protocol buffer message.
-// This is the main entry point.
-func Size(pb Message) int {
-	if m, ok := pb.(newMarshaler); ok {
-		return m.XXX_Size()
-	}
-	if m, ok := pb.(Marshaler); ok {
-		// If the message can marshal itself, let it do it, for compatibility.
-		// NOTE: This is not efficient.
-		b, _ := m.Marshal()
-		return len(b)
-	}
-	// in case somehow we didn't generate the wrapper
-	if pb == nil {
-		return 0
-	}
-	var info InternalMessageInfo
-	return info.Size(pb)
-}
-
-// Marshal takes a protocol buffer message
-// and encodes it into the wire format, returning the data.
-// This is the main entry point.
-func Marshal(pb Message) ([]byte, error) {
-	if m, ok := pb.(newMarshaler); ok {
-		siz := m.XXX_Size()
-		b := make([]byte, 0, siz)
-		return m.XXX_Marshal(b, false)
-	}
-	if m, ok := pb.(Marshaler); ok {
-		// If the message can marshal itself, let it do it, for compatibility.
-		// NOTE: This is not efficient.
-		return m.Marshal()
-	}
-	// in case somehow we didn't generate the wrapper
-	if pb == nil {
-		return nil, ErrNil
-	}
-	var info InternalMessageInfo
-	siz := info.Size(pb)
-	b := make([]byte, 0, siz)
-	return info.Marshal(b, pb, false)
-}
-
-// Marshal takes a protocol buffer message
-// and encodes it into the wire format, writing the result to the
-// Buffer.
-// This is an alternative entry point. It is not necessary to use
-// a Buffer for most applications.
-func (p *Buffer) Marshal(pb Message) error {
-	var err error
-	if m, ok := pb.(newMarshaler); ok {
-		siz := m.XXX_Size()
-		p.grow(siz) // make sure buf has enough capacity
-		p.buf, err = m.XXX_Marshal(p.buf, p.deterministic)
-		return err
-	}
-	if m, ok := pb.(Marshaler); ok {
-		// If the message can marshal itself, let it do it, for compatibility.
-		// NOTE: This is not efficient.
-		b, err := m.Marshal()
-		p.buf = append(p.buf, b...)
-		return err
-	}
-	// in case somehow we didn't generate the wrapper
-	if pb == nil {
-		return ErrNil
-	}
-	var info InternalMessageInfo
-	siz := info.Size(pb)
-	p.grow(siz) // make sure buf has enough capacity
-	p.buf, err = info.Marshal(p.buf, pb, p.deterministic)
-	return err
-}
-
-// grow grows the buffer's capacity, if necessary, to guarantee space for
-// another n bytes. After grow(n), at least n bytes can be written to the
-// buffer without another allocation.
-func (p *Buffer) grow(n int) {
-	need := len(p.buf) + n
-	if need <= cap(p.buf) {
-		return
-	}
-	newCap := len(p.buf) * 2
-	if newCap < need {
-		newCap = need
-	}
-	p.buf = append(make([]byte, 0, newCap), p.buf...)
-}
diff --git a/vendor/github.com/golang/protobuf/proto/table_merge.go b/vendor/github.com/golang/protobuf/proto/table_merge.go
deleted file mode 100644
index 5525def..0000000
--- a/vendor/github.com/golang/protobuf/proto/table_merge.go
+++ /dev/null
@@ -1,654 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2016 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-import (
-	"fmt"
-	"reflect"
-	"strings"
-	"sync"
-	"sync/atomic"
-)
-
-// Merge merges the src message into dst.
-// This assumes that dst and src of the same type and are non-nil.
-func (a *InternalMessageInfo) Merge(dst, src Message) {
-	mi := atomicLoadMergeInfo(&a.merge)
-	if mi == nil {
-		mi = getMergeInfo(reflect.TypeOf(dst).Elem())
-		atomicStoreMergeInfo(&a.merge, mi)
-	}
-	mi.merge(toPointer(&dst), toPointer(&src))
-}
-
-type mergeInfo struct {
-	typ reflect.Type
-
-	initialized int32 // 0: only typ is valid, 1: everything is valid
-	lock        sync.Mutex
-
-	fields       []mergeFieldInfo
-	unrecognized field // Offset of XXX_unrecognized
-}
-
-type mergeFieldInfo struct {
-	field field // Offset of field, guaranteed to be valid
-
-	// isPointer reports whether the value in the field is a pointer.
-	// This is true for the following situations:
-	//	* Pointer to struct
-	//	* Pointer to basic type (proto2 only)
-	//	* Slice (first value in slice header is a pointer)
-	//	* String (first value in string header is a pointer)
-	isPointer bool
-
-	// basicWidth reports the width of the field assuming that it is directly
-	// embedded in the struct (as is the case for basic types in proto3).
-	// The possible values are:
-	// 	0: invalid
-	//	1: bool
-	//	4: int32, uint32, float32
-	//	8: int64, uint64, float64
-	basicWidth int
-
-	// Where dst and src are pointers to the types being merged.
-	merge func(dst, src pointer)
-}
-
-var (
-	mergeInfoMap  = map[reflect.Type]*mergeInfo{}
-	mergeInfoLock sync.Mutex
-)
-
-func getMergeInfo(t reflect.Type) *mergeInfo {
-	mergeInfoLock.Lock()
-	defer mergeInfoLock.Unlock()
-	mi := mergeInfoMap[t]
-	if mi == nil {
-		mi = &mergeInfo{typ: t}
-		mergeInfoMap[t] = mi
-	}
-	return mi
-}
-
-// merge merges src into dst assuming they are both of type *mi.typ.
-func (mi *mergeInfo) merge(dst, src pointer) {
-	if dst.isNil() {
-		panic("proto: nil destination")
-	}
-	if src.isNil() {
-		return // Nothing to do.
-	}
-
-	if atomic.LoadInt32(&mi.initialized) == 0 {
-		mi.computeMergeInfo()
-	}
-
-	for _, fi := range mi.fields {
-		sfp := src.offset(fi.field)
-
-		// As an optimization, we can avoid the merge function call cost
-		// if we know for sure that the source will have no effect
-		// by checking if it is the zero value.
-		if unsafeAllowed {
-			if fi.isPointer && sfp.getPointer().isNil() { // Could be slice or string
-				continue
-			}
-			if fi.basicWidth > 0 {
-				switch {
-				case fi.basicWidth == 1 && !*sfp.toBool():
-					continue
-				case fi.basicWidth == 4 && *sfp.toUint32() == 0:
-					continue
-				case fi.basicWidth == 8 && *sfp.toUint64() == 0:
-					continue
-				}
-			}
-		}
-
-		dfp := dst.offset(fi.field)
-		fi.merge(dfp, sfp)
-	}
-
-	// TODO: Make this faster?
-	out := dst.asPointerTo(mi.typ).Elem()
-	in := src.asPointerTo(mi.typ).Elem()
-	if emIn, err := extendable(in.Addr().Interface()); err == nil {
-		emOut, _ := extendable(out.Addr().Interface())
-		mIn, muIn := emIn.extensionsRead()
-		if mIn != nil {
-			mOut := emOut.extensionsWrite()
-			muIn.Lock()
-			mergeExtension(mOut, mIn)
-			muIn.Unlock()
-		}
-	}
-
-	if mi.unrecognized.IsValid() {
-		if b := *src.offset(mi.unrecognized).toBytes(); len(b) > 0 {
-			*dst.offset(mi.unrecognized).toBytes() = append([]byte(nil), b...)
-		}
-	}
-}
-
-func (mi *mergeInfo) computeMergeInfo() {
-	mi.lock.Lock()
-	defer mi.lock.Unlock()
-	if mi.initialized != 0 {
-		return
-	}
-	t := mi.typ
-	n := t.NumField()
-
-	props := GetProperties(t)
-	for i := 0; i < n; i++ {
-		f := t.Field(i)
-		if strings.HasPrefix(f.Name, "XXX_") {
-			continue
-		}
-
-		mfi := mergeFieldInfo{field: toField(&f)}
-		tf := f.Type
-
-		// As an optimization, we can avoid the merge function call cost
-		// if we know for sure that the source will have no effect
-		// by checking if it is the zero value.
-		if unsafeAllowed {
-			switch tf.Kind() {
-			case reflect.Ptr, reflect.Slice, reflect.String:
-				// As a special case, we assume slices and strings are pointers
-				// since we know that the first field in the SliceSlice or
-				// StringHeader is a data pointer.
-				mfi.isPointer = true
-			case reflect.Bool:
-				mfi.basicWidth = 1
-			case reflect.Int32, reflect.Uint32, reflect.Float32:
-				mfi.basicWidth = 4
-			case reflect.Int64, reflect.Uint64, reflect.Float64:
-				mfi.basicWidth = 8
-			}
-		}
-
-		// Unwrap tf to get at its most basic type.
-		var isPointer, isSlice bool
-		if tf.Kind() == reflect.Slice && tf.Elem().Kind() != reflect.Uint8 {
-			isSlice = true
-			tf = tf.Elem()
-		}
-		if tf.Kind() == reflect.Ptr {
-			isPointer = true
-			tf = tf.Elem()
-		}
-		if isPointer && isSlice && tf.Kind() != reflect.Struct {
-			panic("both pointer and slice for basic type in " + tf.Name())
-		}
-
-		switch tf.Kind() {
-		case reflect.Int32:
-			switch {
-			case isSlice: // E.g., []int32
-				mfi.merge = func(dst, src pointer) {
-					// NOTE: toInt32Slice is not defined (see pointer_reflect.go).
-					/*
-						sfsp := src.toInt32Slice()
-						if *sfsp != nil {
-							dfsp := dst.toInt32Slice()
-							*dfsp = append(*dfsp, *sfsp...)
-							if *dfsp == nil {
-								*dfsp = []int64{}
-							}
-						}
-					*/
-					sfs := src.getInt32Slice()
-					if sfs != nil {
-						dfs := dst.getInt32Slice()
-						dfs = append(dfs, sfs...)
-						if dfs == nil {
-							dfs = []int32{}
-						}
-						dst.setInt32Slice(dfs)
-					}
-				}
-			case isPointer: // E.g., *int32
-				mfi.merge = func(dst, src pointer) {
-					// NOTE: toInt32Ptr is not defined (see pointer_reflect.go).
-					/*
-						sfpp := src.toInt32Ptr()
-						if *sfpp != nil {
-							dfpp := dst.toInt32Ptr()
-							if *dfpp == nil {
-								*dfpp = Int32(**sfpp)
-							} else {
-								**dfpp = **sfpp
-							}
-						}
-					*/
-					sfp := src.getInt32Ptr()
-					if sfp != nil {
-						dfp := dst.getInt32Ptr()
-						if dfp == nil {
-							dst.setInt32Ptr(*sfp)
-						} else {
-							*dfp = *sfp
-						}
-					}
-				}
-			default: // E.g., int32
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toInt32(); v != 0 {
-						*dst.toInt32() = v
-					}
-				}
-			}
-		case reflect.Int64:
-			switch {
-			case isSlice: // E.g., []int64
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toInt64Slice()
-					if *sfsp != nil {
-						dfsp := dst.toInt64Slice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []int64{}
-						}
-					}
-				}
-			case isPointer: // E.g., *int64
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toInt64Ptr()
-					if *sfpp != nil {
-						dfpp := dst.toInt64Ptr()
-						if *dfpp == nil {
-							*dfpp = Int64(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., int64
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toInt64(); v != 0 {
-						*dst.toInt64() = v
-					}
-				}
-			}
-		case reflect.Uint32:
-			switch {
-			case isSlice: // E.g., []uint32
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toUint32Slice()
-					if *sfsp != nil {
-						dfsp := dst.toUint32Slice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []uint32{}
-						}
-					}
-				}
-			case isPointer: // E.g., *uint32
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toUint32Ptr()
-					if *sfpp != nil {
-						dfpp := dst.toUint32Ptr()
-						if *dfpp == nil {
-							*dfpp = Uint32(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., uint32
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toUint32(); v != 0 {
-						*dst.toUint32() = v
-					}
-				}
-			}
-		case reflect.Uint64:
-			switch {
-			case isSlice: // E.g., []uint64
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toUint64Slice()
-					if *sfsp != nil {
-						dfsp := dst.toUint64Slice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []uint64{}
-						}
-					}
-				}
-			case isPointer: // E.g., *uint64
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toUint64Ptr()
-					if *sfpp != nil {
-						dfpp := dst.toUint64Ptr()
-						if *dfpp == nil {
-							*dfpp = Uint64(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., uint64
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toUint64(); v != 0 {
-						*dst.toUint64() = v
-					}
-				}
-			}
-		case reflect.Float32:
-			switch {
-			case isSlice: // E.g., []float32
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toFloat32Slice()
-					if *sfsp != nil {
-						dfsp := dst.toFloat32Slice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []float32{}
-						}
-					}
-				}
-			case isPointer: // E.g., *float32
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toFloat32Ptr()
-					if *sfpp != nil {
-						dfpp := dst.toFloat32Ptr()
-						if *dfpp == nil {
-							*dfpp = Float32(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., float32
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toFloat32(); v != 0 {
-						*dst.toFloat32() = v
-					}
-				}
-			}
-		case reflect.Float64:
-			switch {
-			case isSlice: // E.g., []float64
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toFloat64Slice()
-					if *sfsp != nil {
-						dfsp := dst.toFloat64Slice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []float64{}
-						}
-					}
-				}
-			case isPointer: // E.g., *float64
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toFloat64Ptr()
-					if *sfpp != nil {
-						dfpp := dst.toFloat64Ptr()
-						if *dfpp == nil {
-							*dfpp = Float64(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., float64
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toFloat64(); v != 0 {
-						*dst.toFloat64() = v
-					}
-				}
-			}
-		case reflect.Bool:
-			switch {
-			case isSlice: // E.g., []bool
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toBoolSlice()
-					if *sfsp != nil {
-						dfsp := dst.toBoolSlice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []bool{}
-						}
-					}
-				}
-			case isPointer: // E.g., *bool
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toBoolPtr()
-					if *sfpp != nil {
-						dfpp := dst.toBoolPtr()
-						if *dfpp == nil {
-							*dfpp = Bool(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., bool
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toBool(); v {
-						*dst.toBool() = v
-					}
-				}
-			}
-		case reflect.String:
-			switch {
-			case isSlice: // E.g., []string
-				mfi.merge = func(dst, src pointer) {
-					sfsp := src.toStringSlice()
-					if *sfsp != nil {
-						dfsp := dst.toStringSlice()
-						*dfsp = append(*dfsp, *sfsp...)
-						if *dfsp == nil {
-							*dfsp = []string{}
-						}
-					}
-				}
-			case isPointer: // E.g., *string
-				mfi.merge = func(dst, src pointer) {
-					sfpp := src.toStringPtr()
-					if *sfpp != nil {
-						dfpp := dst.toStringPtr()
-						if *dfpp == nil {
-							*dfpp = String(**sfpp)
-						} else {
-							**dfpp = **sfpp
-						}
-					}
-				}
-			default: // E.g., string
-				mfi.merge = func(dst, src pointer) {
-					if v := *src.toString(); v != "" {
-						*dst.toString() = v
-					}
-				}
-			}
-		case reflect.Slice:
-			isProto3 := props.Prop[i].proto3
-			switch {
-			case isPointer:
-				panic("bad pointer in byte slice case in " + tf.Name())
-			case tf.Elem().Kind() != reflect.Uint8:
-				panic("bad element kind in byte slice case in " + tf.Name())
-			case isSlice: // E.g., [][]byte
-				mfi.merge = func(dst, src pointer) {
-					sbsp := src.toBytesSlice()
-					if *sbsp != nil {
-						dbsp := dst.toBytesSlice()
-						for _, sb := range *sbsp {
-							if sb == nil {
-								*dbsp = append(*dbsp, nil)
-							} else {
-								*dbsp = append(*dbsp, append([]byte{}, sb...))
-							}
-						}
-						if *dbsp == nil {
-							*dbsp = [][]byte{}
-						}
-					}
-				}
-			default: // E.g., []byte
-				mfi.merge = func(dst, src pointer) {
-					sbp := src.toBytes()
-					if *sbp != nil {
-						dbp := dst.toBytes()
-						if !isProto3 || len(*sbp) > 0 {
-							*dbp = append([]byte{}, *sbp...)
-						}
-					}
-				}
-			}
-		case reflect.Struct:
-			switch {
-			case !isPointer:
-				panic(fmt.Sprintf("message field %s without pointer", tf))
-			case isSlice: // E.g., []*pb.T
-				mi := getMergeInfo(tf)
-				mfi.merge = func(dst, src pointer) {
-					sps := src.getPointerSlice()
-					if sps != nil {
-						dps := dst.getPointerSlice()
-						for _, sp := range sps {
-							var dp pointer
-							if !sp.isNil() {
-								dp = valToPointer(reflect.New(tf))
-								mi.merge(dp, sp)
-							}
-							dps = append(dps, dp)
-						}
-						if dps == nil {
-							dps = []pointer{}
-						}
-						dst.setPointerSlice(dps)
-					}
-				}
-			default: // E.g., *pb.T
-				mi := getMergeInfo(tf)
-				mfi.merge = func(dst, src pointer) {
-					sp := src.getPointer()
-					if !sp.isNil() {
-						dp := dst.getPointer()
-						if dp.isNil() {
-							dp = valToPointer(reflect.New(tf))
-							dst.setPointer(dp)
-						}
-						mi.merge(dp, sp)
-					}
-				}
-			}
-		case reflect.Map:
-			switch {
-			case isPointer || isSlice:
-				panic("bad pointer or slice in map case in " + tf.Name())
-			default: // E.g., map[K]V
-				mfi.merge = func(dst, src pointer) {
-					sm := src.asPointerTo(tf).Elem()
-					if sm.Len() == 0 {
-						return
-					}
-					dm := dst.asPointerTo(tf).Elem()
-					if dm.IsNil() {
-						dm.Set(reflect.MakeMap(tf))
-					}
-
-					switch tf.Elem().Kind() {
-					case reflect.Ptr: // Proto struct (e.g., *T)
-						for _, key := range sm.MapKeys() {
-							val := sm.MapIndex(key)
-							val = reflect.ValueOf(Clone(val.Interface().(Message)))
-							dm.SetMapIndex(key, val)
-						}
-					case reflect.Slice: // E.g. Bytes type (e.g., []byte)
-						for _, key := range sm.MapKeys() {
-							val := sm.MapIndex(key)
-							val = reflect.ValueOf(append([]byte{}, val.Bytes()...))
-							dm.SetMapIndex(key, val)
-						}
-					default: // Basic type (e.g., string)
-						for _, key := range sm.MapKeys() {
-							val := sm.MapIndex(key)
-							dm.SetMapIndex(key, val)
-						}
-					}
-				}
-			}
-		case reflect.Interface:
-			// Must be oneof field.
-			switch {
-			case isPointer || isSlice:
-				panic("bad pointer or slice in interface case in " + tf.Name())
-			default: // E.g., interface{}
-				// TODO: Make this faster?
-				mfi.merge = func(dst, src pointer) {
-					su := src.asPointerTo(tf).Elem()
-					if !su.IsNil() {
-						du := dst.asPointerTo(tf).Elem()
-						typ := su.Elem().Type()
-						if du.IsNil() || du.Elem().Type() != typ {
-							du.Set(reflect.New(typ.Elem())) // Initialize interface if empty
-						}
-						sv := su.Elem().Elem().Field(0)
-						if sv.Kind() == reflect.Ptr && sv.IsNil() {
-							return
-						}
-						dv := du.Elem().Elem().Field(0)
-						if dv.Kind() == reflect.Ptr && dv.IsNil() {
-							dv.Set(reflect.New(sv.Type().Elem())) // Initialize proto message if empty
-						}
-						switch sv.Type().Kind() {
-						case reflect.Ptr: // Proto struct (e.g., *T)
-							Merge(dv.Interface().(Message), sv.Interface().(Message))
-						case reflect.Slice: // E.g. Bytes type (e.g., []byte)
-							dv.Set(reflect.ValueOf(append([]byte{}, sv.Bytes()...)))
-						default: // Basic type (e.g., string)
-							dv.Set(sv)
-						}
-					}
-				}
-			}
-		default:
-			panic(fmt.Sprintf("merger not found for type:%s", tf))
-		}
-		mi.fields = append(mi.fields, mfi)
-	}
-
-	mi.unrecognized = invalidField
-	if f, ok := t.FieldByName("XXX_unrecognized"); ok {
-		if f.Type != reflect.TypeOf([]byte{}) {
-			panic("expected XXX_unrecognized to be of type []byte")
-		}
-		mi.unrecognized = toField(&f)
-	}
-
-	atomic.StoreInt32(&mi.initialized, 1)
-}
diff --git a/vendor/github.com/golang/protobuf/proto/table_unmarshal.go b/vendor/github.com/golang/protobuf/proto/table_unmarshal.go
deleted file mode 100644
index acee2fc..0000000
--- a/vendor/github.com/golang/protobuf/proto/table_unmarshal.go
+++ /dev/null
@@ -1,2053 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2016 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-import (
-	"errors"
-	"fmt"
-	"io"
-	"math"
-	"reflect"
-	"strconv"
-	"strings"
-	"sync"
-	"sync/atomic"
-	"unicode/utf8"
-)
-
-// Unmarshal is the entry point from the generated .pb.go files.
-// This function is not intended to be used by non-generated code.
-// This function is not subject to any compatibility guarantee.
-// msg contains a pointer to a protocol buffer struct.
-// b is the data to be unmarshaled into the protocol buffer.
-// a is a pointer to a place to store cached unmarshal information.
-func (a *InternalMessageInfo) Unmarshal(msg Message, b []byte) error {
-	// Load the unmarshal information for this message type.
-	// The atomic load ensures memory consistency.
-	u := atomicLoadUnmarshalInfo(&a.unmarshal)
-	if u == nil {
-		// Slow path: find unmarshal info for msg, update a with it.
-		u = getUnmarshalInfo(reflect.TypeOf(msg).Elem())
-		atomicStoreUnmarshalInfo(&a.unmarshal, u)
-	}
-	// Then do the unmarshaling.
-	err := u.unmarshal(toPointer(&msg), b)
-	return err
-}
-
-type unmarshalInfo struct {
-	typ reflect.Type // type of the protobuf struct
-
-	// 0 = only typ field is initialized
-	// 1 = completely initialized
-	initialized     int32
-	lock            sync.Mutex                    // prevents double initialization
-	dense           []unmarshalFieldInfo          // fields indexed by tag #
-	sparse          map[uint64]unmarshalFieldInfo // fields indexed by tag #
-	reqFields       []string                      // names of required fields
-	reqMask         uint64                        // 1<<len(reqFields)-1
-	unrecognized    field                         // offset of []byte to put unrecognized data (or invalidField if we should throw it away)
-	extensions      field                         // offset of extensions field (of type proto.XXX_InternalExtensions), or invalidField if it does not exist
-	oldExtensions   field                         // offset of old-form extensions field (of type map[int]Extension)
-	extensionRanges []ExtensionRange              // if non-nil, implies extensions field is valid
-	isMessageSet    bool                          // if true, implies extensions field is valid
-}
-
-// An unmarshaler takes a stream of bytes and a pointer to a field of a message.
-// It decodes the field, stores it at f, and returns the unused bytes.
-// w is the wire encoding.
-// b is the data after the tag and wire encoding have been read.
-type unmarshaler func(b []byte, f pointer, w int) ([]byte, error)
-
-type unmarshalFieldInfo struct {
-	// location of the field in the proto message structure.
-	field field
-
-	// function to unmarshal the data for the field.
-	unmarshal unmarshaler
-
-	// if a required field, contains a single set bit at this field's index in the required field list.
-	reqMask uint64
-
-	name string // name of the field, for error reporting
-}
-
-var (
-	unmarshalInfoMap  = map[reflect.Type]*unmarshalInfo{}
-	unmarshalInfoLock sync.Mutex
-)
-
-// getUnmarshalInfo returns the data structure which can be
-// subsequently used to unmarshal a message of the given type.
-// t is the type of the message (note: not pointer to message).
-func getUnmarshalInfo(t reflect.Type) *unmarshalInfo {
-	// It would be correct to return a new unmarshalInfo
-	// unconditionally. We would end up allocating one
-	// per occurrence of that type as a message or submessage.
-	// We use a cache here just to reduce memory usage.
-	unmarshalInfoLock.Lock()
-	defer unmarshalInfoLock.Unlock()
-	u := unmarshalInfoMap[t]
-	if u == nil {
-		u = &unmarshalInfo{typ: t}
-		// Note: we just set the type here. The rest of the fields
-		// will be initialized on first use.
-		unmarshalInfoMap[t] = u
-	}
-	return u
-}
-
-// unmarshal does the main work of unmarshaling a message.
-// u provides type information used to unmarshal the message.
-// m is a pointer to a protocol buffer message.
-// b is a byte stream to unmarshal into m.
-// This is top routine used when recursively unmarshaling submessages.
-func (u *unmarshalInfo) unmarshal(m pointer, b []byte) error {
-	if atomic.LoadInt32(&u.initialized) == 0 {
-		u.computeUnmarshalInfo()
-	}
-	if u.isMessageSet {
-		return unmarshalMessageSet(b, m.offset(u.extensions).toExtensions())
-	}
-	var reqMask uint64 // bitmask of required fields we've seen.
-	var errLater error
-	for len(b) > 0 {
-		// Read tag and wire type.
-		// Special case 1 and 2 byte varints.
-		var x uint64
-		if b[0] < 128 {
-			x = uint64(b[0])
-			b = b[1:]
-		} else if len(b) >= 2 && b[1] < 128 {
-			x = uint64(b[0]&0x7f) + uint64(b[1])<<7
-			b = b[2:]
-		} else {
-			var n int
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-		}
-		tag := x >> 3
-		wire := int(x) & 7
-
-		// Dispatch on the tag to one of the unmarshal* functions below.
-		var f unmarshalFieldInfo
-		if tag < uint64(len(u.dense)) {
-			f = u.dense[tag]
-		} else {
-			f = u.sparse[tag]
-		}
-		if fn := f.unmarshal; fn != nil {
-			var err error
-			b, err = fn(b, m.offset(f.field), wire)
-			if err == nil {
-				reqMask |= f.reqMask
-				continue
-			}
-			if r, ok := err.(*RequiredNotSetError); ok {
-				// Remember this error, but keep parsing. We need to produce
-				// a full parse even if a required field is missing.
-				if errLater == nil {
-					errLater = r
-				}
-				reqMask |= f.reqMask
-				continue
-			}
-			if err != errInternalBadWireType {
-				if err == errInvalidUTF8 {
-					if errLater == nil {
-						fullName := revProtoTypes[reflect.PtrTo(u.typ)] + "." + f.name
-						errLater = &invalidUTF8Error{fullName}
-					}
-					continue
-				}
-				return err
-			}
-			// Fragments with bad wire type are treated as unknown fields.
-		}
-
-		// Unknown tag.
-		if !u.unrecognized.IsValid() {
-			// Don't keep unrecognized data; just skip it.
-			var err error
-			b, err = skipField(b, wire)
-			if err != nil {
-				return err
-			}
-			continue
-		}
-		// Keep unrecognized data around.
-		// maybe in extensions, maybe in the unrecognized field.
-		z := m.offset(u.unrecognized).toBytes()
-		var emap map[int32]Extension
-		var e Extension
-		for _, r := range u.extensionRanges {
-			if uint64(r.Start) <= tag && tag <= uint64(r.End) {
-				if u.extensions.IsValid() {
-					mp := m.offset(u.extensions).toExtensions()
-					emap = mp.extensionsWrite()
-					e = emap[int32(tag)]
-					z = &e.enc
-					break
-				}
-				if u.oldExtensions.IsValid() {
-					p := m.offset(u.oldExtensions).toOldExtensions()
-					emap = *p
-					if emap == nil {
-						emap = map[int32]Extension{}
-						*p = emap
-					}
-					e = emap[int32(tag)]
-					z = &e.enc
-					break
-				}
-				panic("no extensions field available")
-			}
-		}
-
-		// Use wire type to skip data.
-		var err error
-		b0 := b
-		b, err = skipField(b, wire)
-		if err != nil {
-			return err
-		}
-		*z = encodeVarint(*z, tag<<3|uint64(wire))
-		*z = append(*z, b0[:len(b0)-len(b)]...)
-
-		if emap != nil {
-			emap[int32(tag)] = e
-		}
-	}
-	if reqMask != u.reqMask && errLater == nil {
-		// A required field of this message is missing.
-		for _, n := range u.reqFields {
-			if reqMask&1 == 0 {
-				errLater = &RequiredNotSetError{n}
-			}
-			reqMask >>= 1
-		}
-	}
-	return errLater
-}
-
-// computeUnmarshalInfo fills in u with information for use
-// in unmarshaling protocol buffers of type u.typ.
-func (u *unmarshalInfo) computeUnmarshalInfo() {
-	u.lock.Lock()
-	defer u.lock.Unlock()
-	if u.initialized != 0 {
-		return
-	}
-	t := u.typ
-	n := t.NumField()
-
-	// Set up the "not found" value for the unrecognized byte buffer.
-	// This is the default for proto3.
-	u.unrecognized = invalidField
-	u.extensions = invalidField
-	u.oldExtensions = invalidField
-
-	// List of the generated type and offset for each oneof field.
-	type oneofField struct {
-		ityp  reflect.Type // interface type of oneof field
-		field field        // offset in containing message
-	}
-	var oneofFields []oneofField
-
-	for i := 0; i < n; i++ {
-		f := t.Field(i)
-		if f.Name == "XXX_unrecognized" {
-			// The byte slice used to hold unrecognized input is special.
-			if f.Type != reflect.TypeOf(([]byte)(nil)) {
-				panic("bad type for XXX_unrecognized field: " + f.Type.Name())
-			}
-			u.unrecognized = toField(&f)
-			continue
-		}
-		if f.Name == "XXX_InternalExtensions" {
-			// Ditto here.
-			if f.Type != reflect.TypeOf(XXX_InternalExtensions{}) {
-				panic("bad type for XXX_InternalExtensions field: " + f.Type.Name())
-			}
-			u.extensions = toField(&f)
-			if f.Tag.Get("protobuf_messageset") == "1" {
-				u.isMessageSet = true
-			}
-			continue
-		}
-		if f.Name == "XXX_extensions" {
-			// An older form of the extensions field.
-			if f.Type != reflect.TypeOf((map[int32]Extension)(nil)) {
-				panic("bad type for XXX_extensions field: " + f.Type.Name())
-			}
-			u.oldExtensions = toField(&f)
-			continue
-		}
-		if f.Name == "XXX_NoUnkeyedLiteral" || f.Name == "XXX_sizecache" {
-			continue
-		}
-
-		oneof := f.Tag.Get("protobuf_oneof")
-		if oneof != "" {
-			oneofFields = append(oneofFields, oneofField{f.Type, toField(&f)})
-			// The rest of oneof processing happens below.
-			continue
-		}
-
-		tags := f.Tag.Get("protobuf")
-		tagArray := strings.Split(tags, ",")
-		if len(tagArray) < 2 {
-			panic("protobuf tag not enough fields in " + t.Name() + "." + f.Name + ": " + tags)
-		}
-		tag, err := strconv.Atoi(tagArray[1])
-		if err != nil {
-			panic("protobuf tag field not an integer: " + tagArray[1])
-		}
-
-		name := ""
-		for _, tag := range tagArray[3:] {
-			if strings.HasPrefix(tag, "name=") {
-				name = tag[5:]
-			}
-		}
-
-		// Extract unmarshaling function from the field (its type and tags).
-		unmarshal := fieldUnmarshaler(&f)
-
-		// Required field?
-		var reqMask uint64
-		if tagArray[2] == "req" {
-			bit := len(u.reqFields)
-			u.reqFields = append(u.reqFields, name)
-			reqMask = uint64(1) << uint(bit)
-			// TODO: if we have more than 64 required fields, we end up
-			// not verifying that all required fields are present.
-			// Fix this, perhaps using a count of required fields?
-		}
-
-		// Store the info in the correct slot in the message.
-		u.setTag(tag, toField(&f), unmarshal, reqMask, name)
-	}
-
-	// Find any types associated with oneof fields.
-	var oneofImplementers []interface{}
-	switch m := reflect.Zero(reflect.PtrTo(t)).Interface().(type) {
-	case oneofFuncsIface:
-		_, _, _, oneofImplementers = m.XXX_OneofFuncs()
-	case oneofWrappersIface:
-		oneofImplementers = m.XXX_OneofWrappers()
-	}
-	for _, v := range oneofImplementers {
-		tptr := reflect.TypeOf(v) // *Msg_X
-		typ := tptr.Elem()        // Msg_X
-
-		f := typ.Field(0) // oneof implementers have one field
-		baseUnmarshal := fieldUnmarshaler(&f)
-		tags := strings.Split(f.Tag.Get("protobuf"), ",")
-		fieldNum, err := strconv.Atoi(tags[1])
-		if err != nil {
-			panic("protobuf tag field not an integer: " + tags[1])
-		}
-		var name string
-		for _, tag := range tags {
-			if strings.HasPrefix(tag, "name=") {
-				name = strings.TrimPrefix(tag, "name=")
-				break
-			}
-		}
-
-		// Find the oneof field that this struct implements.
-		// Might take O(n^2) to process all of the oneofs, but who cares.
-		for _, of := range oneofFields {
-			if tptr.Implements(of.ityp) {
-				// We have found the corresponding interface for this struct.
-				// That lets us know where this struct should be stored
-				// when we encounter it during unmarshaling.
-				unmarshal := makeUnmarshalOneof(typ, of.ityp, baseUnmarshal)
-				u.setTag(fieldNum, of.field, unmarshal, 0, name)
-			}
-		}
-
-	}
-
-	// Get extension ranges, if any.
-	fn := reflect.Zero(reflect.PtrTo(t)).MethodByName("ExtensionRangeArray")
-	if fn.IsValid() {
-		if !u.extensions.IsValid() && !u.oldExtensions.IsValid() {
-			panic("a message with extensions, but no extensions field in " + t.Name())
-		}
-		u.extensionRanges = fn.Call(nil)[0].Interface().([]ExtensionRange)
-	}
-
-	// Explicitly disallow tag 0. This will ensure we flag an error
-	// when decoding a buffer of all zeros. Without this code, we
-	// would decode and skip an all-zero buffer of even length.
-	// [0 0] is [tag=0/wiretype=varint varint-encoded-0].
-	u.setTag(0, zeroField, func(b []byte, f pointer, w int) ([]byte, error) {
-		return nil, fmt.Errorf("proto: %s: illegal tag 0 (wire type %d)", t, w)
-	}, 0, "")
-
-	// Set mask for required field check.
-	u.reqMask = uint64(1)<<uint(len(u.reqFields)) - 1
-
-	atomic.StoreInt32(&u.initialized, 1)
-}
-
-// setTag stores the unmarshal information for the given tag.
-// tag = tag # for field
-// field/unmarshal = unmarshal info for that field.
-// reqMask = if required, bitmask for field position in required field list. 0 otherwise.
-// name = short name of the field.
-func (u *unmarshalInfo) setTag(tag int, field field, unmarshal unmarshaler, reqMask uint64, name string) {
-	i := unmarshalFieldInfo{field: field, unmarshal: unmarshal, reqMask: reqMask, name: name}
-	n := u.typ.NumField()
-	if tag >= 0 && (tag < 16 || tag < 2*n) { // TODO: what are the right numbers here?
-		for len(u.dense) <= tag {
-			u.dense = append(u.dense, unmarshalFieldInfo{})
-		}
-		u.dense[tag] = i
-		return
-	}
-	if u.sparse == nil {
-		u.sparse = map[uint64]unmarshalFieldInfo{}
-	}
-	u.sparse[uint64(tag)] = i
-}
-
-// fieldUnmarshaler returns an unmarshaler for the given field.
-func fieldUnmarshaler(f *reflect.StructField) unmarshaler {
-	if f.Type.Kind() == reflect.Map {
-		return makeUnmarshalMap(f)
-	}
-	return typeUnmarshaler(f.Type, f.Tag.Get("protobuf"))
-}
-
-// typeUnmarshaler returns an unmarshaler for the given field type / field tag pair.
-func typeUnmarshaler(t reflect.Type, tags string) unmarshaler {
-	tagArray := strings.Split(tags, ",")
-	encoding := tagArray[0]
-	name := "unknown"
-	proto3 := false
-	validateUTF8 := true
-	for _, tag := range tagArray[3:] {
-		if strings.HasPrefix(tag, "name=") {
-			name = tag[5:]
-		}
-		if tag == "proto3" {
-			proto3 = true
-		}
-	}
-	validateUTF8 = validateUTF8 && proto3
-
-	// Figure out packaging (pointer, slice, or both)
-	slice := false
-	pointer := false
-	if t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8 {
-		slice = true
-		t = t.Elem()
-	}
-	if t.Kind() == reflect.Ptr {
-		pointer = true
-		t = t.Elem()
-	}
-
-	// We'll never have both pointer and slice for basic types.
-	if pointer && slice && t.Kind() != reflect.Struct {
-		panic("both pointer and slice for basic type in " + t.Name())
-	}
-
-	switch t.Kind() {
-	case reflect.Bool:
-		if pointer {
-			return unmarshalBoolPtr
-		}
-		if slice {
-			return unmarshalBoolSlice
-		}
-		return unmarshalBoolValue
-	case reflect.Int32:
-		switch encoding {
-		case "fixed32":
-			if pointer {
-				return unmarshalFixedS32Ptr
-			}
-			if slice {
-				return unmarshalFixedS32Slice
-			}
-			return unmarshalFixedS32Value
-		case "varint":
-			// this could be int32 or enum
-			if pointer {
-				return unmarshalInt32Ptr
-			}
-			if slice {
-				return unmarshalInt32Slice
-			}
-			return unmarshalInt32Value
-		case "zigzag32":
-			if pointer {
-				return unmarshalSint32Ptr
-			}
-			if slice {
-				return unmarshalSint32Slice
-			}
-			return unmarshalSint32Value
-		}
-	case reflect.Int64:
-		switch encoding {
-		case "fixed64":
-			if pointer {
-				return unmarshalFixedS64Ptr
-			}
-			if slice {
-				return unmarshalFixedS64Slice
-			}
-			return unmarshalFixedS64Value
-		case "varint":
-			if pointer {
-				return unmarshalInt64Ptr
-			}
-			if slice {
-				return unmarshalInt64Slice
-			}
-			return unmarshalInt64Value
-		case "zigzag64":
-			if pointer {
-				return unmarshalSint64Ptr
-			}
-			if slice {
-				return unmarshalSint64Slice
-			}
-			return unmarshalSint64Value
-		}
-	case reflect.Uint32:
-		switch encoding {
-		case "fixed32":
-			if pointer {
-				return unmarshalFixed32Ptr
-			}
-			if slice {
-				return unmarshalFixed32Slice
-			}
-			return unmarshalFixed32Value
-		case "varint":
-			if pointer {
-				return unmarshalUint32Ptr
-			}
-			if slice {
-				return unmarshalUint32Slice
-			}
-			return unmarshalUint32Value
-		}
-	case reflect.Uint64:
-		switch encoding {
-		case "fixed64":
-			if pointer {
-				return unmarshalFixed64Ptr
-			}
-			if slice {
-				return unmarshalFixed64Slice
-			}
-			return unmarshalFixed64Value
-		case "varint":
-			if pointer {
-				return unmarshalUint64Ptr
-			}
-			if slice {
-				return unmarshalUint64Slice
-			}
-			return unmarshalUint64Value
-		}
-	case reflect.Float32:
-		if pointer {
-			return unmarshalFloat32Ptr
-		}
-		if slice {
-			return unmarshalFloat32Slice
-		}
-		return unmarshalFloat32Value
-	case reflect.Float64:
-		if pointer {
-			return unmarshalFloat64Ptr
-		}
-		if slice {
-			return unmarshalFloat64Slice
-		}
-		return unmarshalFloat64Value
-	case reflect.Map:
-		panic("map type in typeUnmarshaler in " + t.Name())
-	case reflect.Slice:
-		if pointer {
-			panic("bad pointer in slice case in " + t.Name())
-		}
-		if slice {
-			return unmarshalBytesSlice
-		}
-		return unmarshalBytesValue
-	case reflect.String:
-		if validateUTF8 {
-			if pointer {
-				return unmarshalUTF8StringPtr
-			}
-			if slice {
-				return unmarshalUTF8StringSlice
-			}
-			return unmarshalUTF8StringValue
-		}
-		if pointer {
-			return unmarshalStringPtr
-		}
-		if slice {
-			return unmarshalStringSlice
-		}
-		return unmarshalStringValue
-	case reflect.Struct:
-		// message or group field
-		if !pointer {
-			panic(fmt.Sprintf("message/group field %s:%s without pointer", t, encoding))
-		}
-		switch encoding {
-		case "bytes":
-			if slice {
-				return makeUnmarshalMessageSlicePtr(getUnmarshalInfo(t), name)
-			}
-			return makeUnmarshalMessagePtr(getUnmarshalInfo(t), name)
-		case "group":
-			if slice {
-				return makeUnmarshalGroupSlicePtr(getUnmarshalInfo(t), name)
-			}
-			return makeUnmarshalGroupPtr(getUnmarshalInfo(t), name)
-		}
-	}
-	panic(fmt.Sprintf("unmarshaler not found type:%s encoding:%s", t, encoding))
-}
-
-// Below are all the unmarshalers for individual fields of various types.
-
-func unmarshalInt64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x)
-	*f.toInt64() = v
-	return b, nil
-}
-
-func unmarshalInt64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x)
-	*f.toInt64Ptr() = &v
-	return b, nil
-}
-
-func unmarshalInt64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := int64(x)
-			s := f.toInt64Slice()
-			*s = append(*s, v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x)
-	s := f.toInt64Slice()
-	*s = append(*s, v)
-	return b, nil
-}
-
-func unmarshalSint64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x>>1) ^ int64(x)<<63>>63
-	*f.toInt64() = v
-	return b, nil
-}
-
-func unmarshalSint64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x>>1) ^ int64(x)<<63>>63
-	*f.toInt64Ptr() = &v
-	return b, nil
-}
-
-func unmarshalSint64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := int64(x>>1) ^ int64(x)<<63>>63
-			s := f.toInt64Slice()
-			*s = append(*s, v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int64(x>>1) ^ int64(x)<<63>>63
-	s := f.toInt64Slice()
-	*s = append(*s, v)
-	return b, nil
-}
-
-func unmarshalUint64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint64(x)
-	*f.toUint64() = v
-	return b, nil
-}
-
-func unmarshalUint64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint64(x)
-	*f.toUint64Ptr() = &v
-	return b, nil
-}
-
-func unmarshalUint64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := uint64(x)
-			s := f.toUint64Slice()
-			*s = append(*s, v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint64(x)
-	s := f.toUint64Slice()
-	*s = append(*s, v)
-	return b, nil
-}
-
-func unmarshalInt32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x)
-	*f.toInt32() = v
-	return b, nil
-}
-
-func unmarshalInt32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x)
-	f.setInt32Ptr(v)
-	return b, nil
-}
-
-func unmarshalInt32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := int32(x)
-			f.appendInt32Slice(v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x)
-	f.appendInt32Slice(v)
-	return b, nil
-}
-
-func unmarshalSint32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x>>1) ^ int32(x)<<31>>31
-	*f.toInt32() = v
-	return b, nil
-}
-
-func unmarshalSint32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x>>1) ^ int32(x)<<31>>31
-	f.setInt32Ptr(v)
-	return b, nil
-}
-
-func unmarshalSint32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := int32(x>>1) ^ int32(x)<<31>>31
-			f.appendInt32Slice(v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := int32(x>>1) ^ int32(x)<<31>>31
-	f.appendInt32Slice(v)
-	return b, nil
-}
-
-func unmarshalUint32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint32(x)
-	*f.toUint32() = v
-	return b, nil
-}
-
-func unmarshalUint32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint32(x)
-	*f.toUint32Ptr() = &v
-	return b, nil
-}
-
-func unmarshalUint32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			b = b[n:]
-			v := uint32(x)
-			s := f.toUint32Slice()
-			*s = append(*s, v)
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	v := uint32(x)
-	s := f.toUint32Slice()
-	*s = append(*s, v)
-	return b, nil
-}
-
-func unmarshalFixed64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
-	*f.toUint64() = v
-	return b[8:], nil
-}
-
-func unmarshalFixed64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
-	*f.toUint64Ptr() = &v
-	return b[8:], nil
-}
-
-func unmarshalFixed64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 8 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
-			s := f.toUint64Slice()
-			*s = append(*s, v)
-			b = b[8:]
-		}
-		return res, nil
-	}
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
-	s := f.toUint64Slice()
-	*s = append(*s, v)
-	return b[8:], nil
-}
-
-func unmarshalFixedS64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int64(b[0]) | int64(b[1])<<8 | int64(b[2])<<16 | int64(b[3])<<24 | int64(b[4])<<32 | int64(b[5])<<40 | int64(b[6])<<48 | int64(b[7])<<56
-	*f.toInt64() = v
-	return b[8:], nil
-}
-
-func unmarshalFixedS64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int64(b[0]) | int64(b[1])<<8 | int64(b[2])<<16 | int64(b[3])<<24 | int64(b[4])<<32 | int64(b[5])<<40 | int64(b[6])<<48 | int64(b[7])<<56
-	*f.toInt64Ptr() = &v
-	return b[8:], nil
-}
-
-func unmarshalFixedS64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 8 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := int64(b[0]) | int64(b[1])<<8 | int64(b[2])<<16 | int64(b[3])<<24 | int64(b[4])<<32 | int64(b[5])<<40 | int64(b[6])<<48 | int64(b[7])<<56
-			s := f.toInt64Slice()
-			*s = append(*s, v)
-			b = b[8:]
-		}
-		return res, nil
-	}
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int64(b[0]) | int64(b[1])<<8 | int64(b[2])<<16 | int64(b[3])<<24 | int64(b[4])<<32 | int64(b[5])<<40 | int64(b[6])<<48 | int64(b[7])<<56
-	s := f.toInt64Slice()
-	*s = append(*s, v)
-	return b[8:], nil
-}
-
-func unmarshalFixed32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24
-	*f.toUint32() = v
-	return b[4:], nil
-}
-
-func unmarshalFixed32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24
-	*f.toUint32Ptr() = &v
-	return b[4:], nil
-}
-
-func unmarshalFixed32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 4 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24
-			s := f.toUint32Slice()
-			*s = append(*s, v)
-			b = b[4:]
-		}
-		return res, nil
-	}
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24
-	s := f.toUint32Slice()
-	*s = append(*s, v)
-	return b[4:], nil
-}
-
-func unmarshalFixedS32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int32(b[0]) | int32(b[1])<<8 | int32(b[2])<<16 | int32(b[3])<<24
-	*f.toInt32() = v
-	return b[4:], nil
-}
-
-func unmarshalFixedS32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int32(b[0]) | int32(b[1])<<8 | int32(b[2])<<16 | int32(b[3])<<24
-	f.setInt32Ptr(v)
-	return b[4:], nil
-}
-
-func unmarshalFixedS32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 4 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := int32(b[0]) | int32(b[1])<<8 | int32(b[2])<<16 | int32(b[3])<<24
-			f.appendInt32Slice(v)
-			b = b[4:]
-		}
-		return res, nil
-	}
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := int32(b[0]) | int32(b[1])<<8 | int32(b[2])<<16 | int32(b[3])<<24
-	f.appendInt32Slice(v)
-	return b[4:], nil
-}
-
-func unmarshalBoolValue(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	// Note: any length varint is allowed, even though any sane
-	// encoder will use one byte.
-	// See https://github.com/golang/protobuf/issues/76
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	// TODO: check if x>1? Tests seem to indicate no.
-	v := x != 0
-	*f.toBool() = v
-	return b[n:], nil
-}
-
-func unmarshalBoolPtr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := x != 0
-	*f.toBoolPtr() = &v
-	return b[n:], nil
-}
-
-func unmarshalBoolSlice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			x, n = decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := x != 0
-			s := f.toBoolSlice()
-			*s = append(*s, v)
-			b = b[n:]
-		}
-		return res, nil
-	}
-	if w != WireVarint {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := x != 0
-	s := f.toBoolSlice()
-	*s = append(*s, v)
-	return b[n:], nil
-}
-
-func unmarshalFloat64Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float64frombits(uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56)
-	*f.toFloat64() = v
-	return b[8:], nil
-}
-
-func unmarshalFloat64Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float64frombits(uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56)
-	*f.toFloat64Ptr() = &v
-	return b[8:], nil
-}
-
-func unmarshalFloat64Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 8 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := math.Float64frombits(uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56)
-			s := f.toFloat64Slice()
-			*s = append(*s, v)
-			b = b[8:]
-		}
-		return res, nil
-	}
-	if w != WireFixed64 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 8 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float64frombits(uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56)
-	s := f.toFloat64Slice()
-	*s = append(*s, v)
-	return b[8:], nil
-}
-
-func unmarshalFloat32Value(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float32frombits(uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24)
-	*f.toFloat32() = v
-	return b[4:], nil
-}
-
-func unmarshalFloat32Ptr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float32frombits(uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24)
-	*f.toFloat32Ptr() = &v
-	return b[4:], nil
-}
-
-func unmarshalFloat32Slice(b []byte, f pointer, w int) ([]byte, error) {
-	if w == WireBytes { // packed
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		res := b[x:]
-		b = b[:x]
-		for len(b) > 0 {
-			if len(b) < 4 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			v := math.Float32frombits(uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24)
-			s := f.toFloat32Slice()
-			*s = append(*s, v)
-			b = b[4:]
-		}
-		return res, nil
-	}
-	if w != WireFixed32 {
-		return b, errInternalBadWireType
-	}
-	if len(b) < 4 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := math.Float32frombits(uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24)
-	s := f.toFloat32Slice()
-	*s = append(*s, v)
-	return b[4:], nil
-}
-
-func unmarshalStringValue(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	*f.toString() = v
-	return b[x:], nil
-}
-
-func unmarshalStringPtr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	*f.toStringPtr() = &v
-	return b[x:], nil
-}
-
-func unmarshalStringSlice(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	s := f.toStringSlice()
-	*s = append(*s, v)
-	return b[x:], nil
-}
-
-func unmarshalUTF8StringValue(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	*f.toString() = v
-	if !utf8.ValidString(v) {
-		return b[x:], errInvalidUTF8
-	}
-	return b[x:], nil
-}
-
-func unmarshalUTF8StringPtr(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	*f.toStringPtr() = &v
-	if !utf8.ValidString(v) {
-		return b[x:], errInvalidUTF8
-	}
-	return b[x:], nil
-}
-
-func unmarshalUTF8StringSlice(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := string(b[:x])
-	s := f.toStringSlice()
-	*s = append(*s, v)
-	if !utf8.ValidString(v) {
-		return b[x:], errInvalidUTF8
-	}
-	return b[x:], nil
-}
-
-var emptyBuf [0]byte
-
-func unmarshalBytesValue(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	// The use of append here is a trick which avoids the zeroing
-	// that would be required if we used a make/copy pair.
-	// We append to emptyBuf instead of nil because we want
-	// a non-nil result even when the length is 0.
-	v := append(emptyBuf[:], b[:x]...)
-	*f.toBytes() = v
-	return b[x:], nil
-}
-
-func unmarshalBytesSlice(b []byte, f pointer, w int) ([]byte, error) {
-	if w != WireBytes {
-		return b, errInternalBadWireType
-	}
-	x, n := decodeVarint(b)
-	if n == 0 {
-		return nil, io.ErrUnexpectedEOF
-	}
-	b = b[n:]
-	if x > uint64(len(b)) {
-		return nil, io.ErrUnexpectedEOF
-	}
-	v := append(emptyBuf[:], b[:x]...)
-	s := f.toBytesSlice()
-	*s = append(*s, v)
-	return b[x:], nil
-}
-
-func makeUnmarshalMessagePtr(sub *unmarshalInfo, name string) unmarshaler {
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		if w != WireBytes {
-			return b, errInternalBadWireType
-		}
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		// First read the message field to see if something is there.
-		// The semantics of multiple submessages are weird.  Instead of
-		// the last one winning (as it is for all other fields), multiple
-		// submessages are merged.
-		v := f.getPointer()
-		if v.isNil() {
-			v = valToPointer(reflect.New(sub.typ))
-			f.setPointer(v)
-		}
-		err := sub.unmarshal(v, b[:x])
-		if err != nil {
-			if r, ok := err.(*RequiredNotSetError); ok {
-				r.field = name + "." + r.field
-			} else {
-				return nil, err
-			}
-		}
-		return b[x:], err
-	}
-}
-
-func makeUnmarshalMessageSlicePtr(sub *unmarshalInfo, name string) unmarshaler {
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		if w != WireBytes {
-			return b, errInternalBadWireType
-		}
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		v := valToPointer(reflect.New(sub.typ))
-		err := sub.unmarshal(v, b[:x])
-		if err != nil {
-			if r, ok := err.(*RequiredNotSetError); ok {
-				r.field = name + "." + r.field
-			} else {
-				return nil, err
-			}
-		}
-		f.appendPointer(v)
-		return b[x:], err
-	}
-}
-
-func makeUnmarshalGroupPtr(sub *unmarshalInfo, name string) unmarshaler {
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		if w != WireStartGroup {
-			return b, errInternalBadWireType
-		}
-		x, y := findEndGroup(b)
-		if x < 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		v := f.getPointer()
-		if v.isNil() {
-			v = valToPointer(reflect.New(sub.typ))
-			f.setPointer(v)
-		}
-		err := sub.unmarshal(v, b[:x])
-		if err != nil {
-			if r, ok := err.(*RequiredNotSetError); ok {
-				r.field = name + "." + r.field
-			} else {
-				return nil, err
-			}
-		}
-		return b[y:], err
-	}
-}
-
-func makeUnmarshalGroupSlicePtr(sub *unmarshalInfo, name string) unmarshaler {
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		if w != WireStartGroup {
-			return b, errInternalBadWireType
-		}
-		x, y := findEndGroup(b)
-		if x < 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		v := valToPointer(reflect.New(sub.typ))
-		err := sub.unmarshal(v, b[:x])
-		if err != nil {
-			if r, ok := err.(*RequiredNotSetError); ok {
-				r.field = name + "." + r.field
-			} else {
-				return nil, err
-			}
-		}
-		f.appendPointer(v)
-		return b[y:], err
-	}
-}
-
-func makeUnmarshalMap(f *reflect.StructField) unmarshaler {
-	t := f.Type
-	kt := t.Key()
-	vt := t.Elem()
-	unmarshalKey := typeUnmarshaler(kt, f.Tag.Get("protobuf_key"))
-	unmarshalVal := typeUnmarshaler(vt, f.Tag.Get("protobuf_val"))
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		// The map entry is a submessage. Figure out how big it is.
-		if w != WireBytes {
-			return nil, fmt.Errorf("proto: bad wiretype for map field: got %d want %d", w, WireBytes)
-		}
-		x, n := decodeVarint(b)
-		if n == 0 {
-			return nil, io.ErrUnexpectedEOF
-		}
-		b = b[n:]
-		if x > uint64(len(b)) {
-			return nil, io.ErrUnexpectedEOF
-		}
-		r := b[x:] // unused data to return
-		b = b[:x]  // data for map entry
-
-		// Note: we could use #keys * #values ~= 200 functions
-		// to do map decoding without reflection. Probably not worth it.
-		// Maps will be somewhat slow. Oh well.
-
-		// Read key and value from data.
-		var nerr nonFatal
-		k := reflect.New(kt)
-		v := reflect.New(vt)
-		for len(b) > 0 {
-			x, n := decodeVarint(b)
-			if n == 0 {
-				return nil, io.ErrUnexpectedEOF
-			}
-			wire := int(x) & 7
-			b = b[n:]
-
-			var err error
-			switch x >> 3 {
-			case 1:
-				b, err = unmarshalKey(b, valToPointer(k), wire)
-			case 2:
-				b, err = unmarshalVal(b, valToPointer(v), wire)
-			default:
-				err = errInternalBadWireType // skip unknown tag
-			}
-
-			if nerr.Merge(err) {
-				continue
-			}
-			if err != errInternalBadWireType {
-				return nil, err
-			}
-
-			// Skip past unknown fields.
-			b, err = skipField(b, wire)
-			if err != nil {
-				return nil, err
-			}
-		}
-
-		// Get map, allocate if needed.
-		m := f.asPointerTo(t).Elem() // an addressable map[K]T
-		if m.IsNil() {
-			m.Set(reflect.MakeMap(t))
-		}
-
-		// Insert into map.
-		m.SetMapIndex(k.Elem(), v.Elem())
-
-		return r, nerr.E
-	}
-}
-
-// makeUnmarshalOneof makes an unmarshaler for oneof fields.
-// for:
-// message Msg {
-//   oneof F {
-//     int64 X = 1;
-//     float64 Y = 2;
-//   }
-// }
-// typ is the type of the concrete entry for a oneof case (e.g. Msg_X).
-// ityp is the interface type of the oneof field (e.g. isMsg_F).
-// unmarshal is the unmarshaler for the base type of the oneof case (e.g. int64).
-// Note that this function will be called once for each case in the oneof.
-func makeUnmarshalOneof(typ, ityp reflect.Type, unmarshal unmarshaler) unmarshaler {
-	sf := typ.Field(0)
-	field0 := toField(&sf)
-	return func(b []byte, f pointer, w int) ([]byte, error) {
-		// Allocate holder for value.
-		v := reflect.New(typ)
-
-		// Unmarshal data into holder.
-		// We unmarshal into the first field of the holder object.
-		var err error
-		var nerr nonFatal
-		b, err = unmarshal(b, valToPointer(v).offset(field0), w)
-		if !nerr.Merge(err) {
-			return nil, err
-		}
-
-		// Write pointer to holder into target field.
-		f.asPointerTo(ityp).Elem().Set(v)
-
-		return b, nerr.E
-	}
-}
-
-// Error used by decode internally.
-var errInternalBadWireType = errors.New("proto: internal error: bad wiretype")
-
-// skipField skips past a field of type wire and returns the remaining bytes.
-func skipField(b []byte, wire int) ([]byte, error) {
-	switch wire {
-	case WireVarint:
-		_, k := decodeVarint(b)
-		if k == 0 {
-			return b, io.ErrUnexpectedEOF
-		}
-		b = b[k:]
-	case WireFixed32:
-		if len(b) < 4 {
-			return b, io.ErrUnexpectedEOF
-		}
-		b = b[4:]
-	case WireFixed64:
-		if len(b) < 8 {
-			return b, io.ErrUnexpectedEOF
-		}
-		b = b[8:]
-	case WireBytes:
-		m, k := decodeVarint(b)
-		if k == 0 || uint64(len(b)-k) < m {
-			return b, io.ErrUnexpectedEOF
-		}
-		b = b[uint64(k)+m:]
-	case WireStartGroup:
-		_, i := findEndGroup(b)
-		if i == -1 {
-			return b, io.ErrUnexpectedEOF
-		}
-		b = b[i:]
-	default:
-		return b, fmt.Errorf("proto: can't skip unknown wire type %d", wire)
-	}
-	return b, nil
-}
-
-// findEndGroup finds the index of the next EndGroup tag.
-// Groups may be nested, so the "next" EndGroup tag is the first
-// unpaired EndGroup.
-// findEndGroup returns the indexes of the start and end of the EndGroup tag.
-// Returns (-1,-1) if it can't find one.
-func findEndGroup(b []byte) (int, int) {
-	depth := 1
-	i := 0
-	for {
-		x, n := decodeVarint(b[i:])
-		if n == 0 {
-			return -1, -1
-		}
-		j := i
-		i += n
-		switch x & 7 {
-		case WireVarint:
-			_, k := decodeVarint(b[i:])
-			if k == 0 {
-				return -1, -1
-			}
-			i += k
-		case WireFixed32:
-			if len(b)-4 < i {
-				return -1, -1
-			}
-			i += 4
-		case WireFixed64:
-			if len(b)-8 < i {
-				return -1, -1
-			}
-			i += 8
-		case WireBytes:
-			m, k := decodeVarint(b[i:])
-			if k == 0 {
-				return -1, -1
-			}
-			i += k
-			if uint64(len(b)-i) < m {
-				return -1, -1
-			}
-			i += int(m)
-		case WireStartGroup:
-			depth++
-		case WireEndGroup:
-			depth--
-			if depth == 0 {
-				return j, i
-			}
-		default:
-			return -1, -1
-		}
-	}
-}
-
-// encodeVarint appends a varint-encoded integer to b and returns the result.
-func encodeVarint(b []byte, x uint64) []byte {
-	for x >= 1<<7 {
-		b = append(b, byte(x&0x7f|0x80))
-		x >>= 7
-	}
-	return append(b, byte(x))
-}
-
-// decodeVarint reads a varint-encoded integer from b.
-// Returns the decoded integer and the number of bytes read.
-// If there is an error, it returns 0,0.
-func decodeVarint(b []byte) (uint64, int) {
-	var x, y uint64
-	if len(b) == 0 {
-		goto bad
-	}
-	x = uint64(b[0])
-	if x < 0x80 {
-		return x, 1
-	}
-	x -= 0x80
-
-	if len(b) <= 1 {
-		goto bad
-	}
-	y = uint64(b[1])
-	x += y << 7
-	if y < 0x80 {
-		return x, 2
-	}
-	x -= 0x80 << 7
-
-	if len(b) <= 2 {
-		goto bad
-	}
-	y = uint64(b[2])
-	x += y << 14
-	if y < 0x80 {
-		return x, 3
-	}
-	x -= 0x80 << 14
-
-	if len(b) <= 3 {
-		goto bad
-	}
-	y = uint64(b[3])
-	x += y << 21
-	if y < 0x80 {
-		return x, 4
-	}
-	x -= 0x80 << 21
-
-	if len(b) <= 4 {
-		goto bad
-	}
-	y = uint64(b[4])
-	x += y << 28
-	if y < 0x80 {
-		return x, 5
-	}
-	x -= 0x80 << 28
-
-	if len(b) <= 5 {
-		goto bad
-	}
-	y = uint64(b[5])
-	x += y << 35
-	if y < 0x80 {
-		return x, 6
-	}
-	x -= 0x80 << 35
-
-	if len(b) <= 6 {
-		goto bad
-	}
-	y = uint64(b[6])
-	x += y << 42
-	if y < 0x80 {
-		return x, 7
-	}
-	x -= 0x80 << 42
-
-	if len(b) <= 7 {
-		goto bad
-	}
-	y = uint64(b[7])
-	x += y << 49
-	if y < 0x80 {
-		return x, 8
-	}
-	x -= 0x80 << 49
-
-	if len(b) <= 8 {
-		goto bad
-	}
-	y = uint64(b[8])
-	x += y << 56
-	if y < 0x80 {
-		return x, 9
-	}
-	x -= 0x80 << 56
-
-	if len(b) <= 9 {
-		goto bad
-	}
-	y = uint64(b[9])
-	x += y << 63
-	if y < 2 {
-		return x, 10
-	}
-
-bad:
-	return 0, 0
-}
diff --git a/vendor/github.com/golang/protobuf/proto/text.go b/vendor/github.com/golang/protobuf/proto/text.go
deleted file mode 100644
index 1aaee72..0000000
--- a/vendor/github.com/golang/protobuf/proto/text.go
+++ /dev/null
@@ -1,843 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-// Functions for writing the text protocol buffer format.
-
-import (
-	"bufio"
-	"bytes"
-	"encoding"
-	"errors"
-	"fmt"
-	"io"
-	"log"
-	"math"
-	"reflect"
-	"sort"
-	"strings"
-)
-
-var (
-	newline         = []byte("\n")
-	spaces          = []byte("                                        ")
-	endBraceNewline = []byte("}\n")
-	backslashN      = []byte{'\\', 'n'}
-	backslashR      = []byte{'\\', 'r'}
-	backslashT      = []byte{'\\', 't'}
-	backslashDQ     = []byte{'\\', '"'}
-	backslashBS     = []byte{'\\', '\\'}
-	posInf          = []byte("inf")
-	negInf          = []byte("-inf")
-	nan             = []byte("nan")
-)
-
-type writer interface {
-	io.Writer
-	WriteByte(byte) error
-}
-
-// textWriter is an io.Writer that tracks its indentation level.
-type textWriter struct {
-	ind      int
-	complete bool // if the current position is a complete line
-	compact  bool // whether to write out as a one-liner
-	w        writer
-}
-
-func (w *textWriter) WriteString(s string) (n int, err error) {
-	if !strings.Contains(s, "\n") {
-		if !w.compact && w.complete {
-			w.writeIndent()
-		}
-		w.complete = false
-		return io.WriteString(w.w, s)
-	}
-	// WriteString is typically called without newlines, so this
-	// codepath and its copy are rare.  We copy to avoid
-	// duplicating all of Write's logic here.
-	return w.Write([]byte(s))
-}
-
-func (w *textWriter) Write(p []byte) (n int, err error) {
-	newlines := bytes.Count(p, newline)
-	if newlines == 0 {
-		if !w.compact && w.complete {
-			w.writeIndent()
-		}
-		n, err = w.w.Write(p)
-		w.complete = false
-		return n, err
-	}
-
-	frags := bytes.SplitN(p, newline, newlines+1)
-	if w.compact {
-		for i, frag := range frags {
-			if i > 0 {
-				if err := w.w.WriteByte(' '); err != nil {
-					return n, err
-				}
-				n++
-			}
-			nn, err := w.w.Write(frag)
-			n += nn
-			if err != nil {
-				return n, err
-			}
-		}
-		return n, nil
-	}
-
-	for i, frag := range frags {
-		if w.complete {
-			w.writeIndent()
-		}
-		nn, err := w.w.Write(frag)
-		n += nn
-		if err != nil {
-			return n, err
-		}
-		if i+1 < len(frags) {
-			if err := w.w.WriteByte('\n'); err != nil {
-				return n, err
-			}
-			n++
-		}
-	}
-	w.complete = len(frags[len(frags)-1]) == 0
-	return n, nil
-}
-
-func (w *textWriter) WriteByte(c byte) error {
-	if w.compact && c == '\n' {
-		c = ' '
-	}
-	if !w.compact && w.complete {
-		w.writeIndent()
-	}
-	err := w.w.WriteByte(c)
-	w.complete = c == '\n'
-	return err
-}
-
-func (w *textWriter) indent() { w.ind++ }
-
-func (w *textWriter) unindent() {
-	if w.ind == 0 {
-		log.Print("proto: textWriter unindented too far")
-		return
-	}
-	w.ind--
-}
-
-func writeName(w *textWriter, props *Properties) error {
-	if _, err := w.WriteString(props.OrigName); err != nil {
-		return err
-	}
-	if props.Wire != "group" {
-		return w.WriteByte(':')
-	}
-	return nil
-}
-
-func requiresQuotes(u string) bool {
-	// When type URL contains any characters except [0-9A-Za-z./\-]*, it must be quoted.
-	for _, ch := range u {
-		switch {
-		case ch == '.' || ch == '/' || ch == '_':
-			continue
-		case '0' <= ch && ch <= '9':
-			continue
-		case 'A' <= ch && ch <= 'Z':
-			continue
-		case 'a' <= ch && ch <= 'z':
-			continue
-		default:
-			return true
-		}
-	}
-	return false
-}
-
-// isAny reports whether sv is a google.protobuf.Any message
-func isAny(sv reflect.Value) bool {
-	type wkt interface {
-		XXX_WellKnownType() string
-	}
-	t, ok := sv.Addr().Interface().(wkt)
-	return ok && t.XXX_WellKnownType() == "Any"
-}
-
-// writeProto3Any writes an expanded google.protobuf.Any message.
-//
-// It returns (false, nil) if sv value can't be unmarshaled (e.g. because
-// required messages are not linked in).
-//
-// It returns (true, error) when sv was written in expanded format or an error
-// was encountered.
-func (tm *TextMarshaler) writeProto3Any(w *textWriter, sv reflect.Value) (bool, error) {
-	turl := sv.FieldByName("TypeUrl")
-	val := sv.FieldByName("Value")
-	if !turl.IsValid() || !val.IsValid() {
-		return true, errors.New("proto: invalid google.protobuf.Any message")
-	}
-
-	b, ok := val.Interface().([]byte)
-	if !ok {
-		return true, errors.New("proto: invalid google.protobuf.Any message")
-	}
-
-	parts := strings.Split(turl.String(), "/")
-	mt := MessageType(parts[len(parts)-1])
-	if mt == nil {
-		return false, nil
-	}
-	m := reflect.New(mt.Elem())
-	if err := Unmarshal(b, m.Interface().(Message)); err != nil {
-		return false, nil
-	}
-	w.Write([]byte("["))
-	u := turl.String()
-	if requiresQuotes(u) {
-		writeString(w, u)
-	} else {
-		w.Write([]byte(u))
-	}
-	if w.compact {
-		w.Write([]byte("]:<"))
-	} else {
-		w.Write([]byte("]: <\n"))
-		w.ind++
-	}
-	if err := tm.writeStruct(w, m.Elem()); err != nil {
-		return true, err
-	}
-	if w.compact {
-		w.Write([]byte("> "))
-	} else {
-		w.ind--
-		w.Write([]byte(">\n"))
-	}
-	return true, nil
-}
-
-func (tm *TextMarshaler) writeStruct(w *textWriter, sv reflect.Value) error {
-	if tm.ExpandAny && isAny(sv) {
-		if canExpand, err := tm.writeProto3Any(w, sv); canExpand {
-			return err
-		}
-	}
-	st := sv.Type()
-	sprops := GetProperties(st)
-	for i := 0; i < sv.NumField(); i++ {
-		fv := sv.Field(i)
-		props := sprops.Prop[i]
-		name := st.Field(i).Name
-
-		if name == "XXX_NoUnkeyedLiteral" {
-			continue
-		}
-
-		if strings.HasPrefix(name, "XXX_") {
-			// There are two XXX_ fields:
-			//   XXX_unrecognized []byte
-			//   XXX_extensions   map[int32]proto.Extension
-			// The first is handled here;
-			// the second is handled at the bottom of this function.
-			if name == "XXX_unrecognized" && !fv.IsNil() {
-				if err := writeUnknownStruct(w, fv.Interface().([]byte)); err != nil {
-					return err
-				}
-			}
-			continue
-		}
-		if fv.Kind() == reflect.Ptr && fv.IsNil() {
-			// Field not filled in. This could be an optional field or
-			// a required field that wasn't filled in. Either way, there
-			// isn't anything we can show for it.
-			continue
-		}
-		if fv.Kind() == reflect.Slice && fv.IsNil() {
-			// Repeated field that is empty, or a bytes field that is unused.
-			continue
-		}
-
-		if props.Repeated && fv.Kind() == reflect.Slice {
-			// Repeated field.
-			for j := 0; j < fv.Len(); j++ {
-				if err := writeName(w, props); err != nil {
-					return err
-				}
-				if !w.compact {
-					if err := w.WriteByte(' '); err != nil {
-						return err
-					}
-				}
-				v := fv.Index(j)
-				if v.Kind() == reflect.Ptr && v.IsNil() {
-					// A nil message in a repeated field is not valid,
-					// but we can handle that more gracefully than panicking.
-					if _, err := w.Write([]byte("<nil>\n")); err != nil {
-						return err
-					}
-					continue
-				}
-				if err := tm.writeAny(w, v, props); err != nil {
-					return err
-				}
-				if err := w.WriteByte('\n'); err != nil {
-					return err
-				}
-			}
-			continue
-		}
-		if fv.Kind() == reflect.Map {
-			// Map fields are rendered as a repeated struct with key/value fields.
-			keys := fv.MapKeys()
-			sort.Sort(mapKeys(keys))
-			for _, key := range keys {
-				val := fv.MapIndex(key)
-				if err := writeName(w, props); err != nil {
-					return err
-				}
-				if !w.compact {
-					if err := w.WriteByte(' '); err != nil {
-						return err
-					}
-				}
-				// open struct
-				if err := w.WriteByte('<'); err != nil {
-					return err
-				}
-				if !w.compact {
-					if err := w.WriteByte('\n'); err != nil {
-						return err
-					}
-				}
-				w.indent()
-				// key
-				if _, err := w.WriteString("key:"); err != nil {
-					return err
-				}
-				if !w.compact {
-					if err := w.WriteByte(' '); err != nil {
-						return err
-					}
-				}
-				if err := tm.writeAny(w, key, props.MapKeyProp); err != nil {
-					return err
-				}
-				if err := w.WriteByte('\n'); err != nil {
-					return err
-				}
-				// nil values aren't legal, but we can avoid panicking because of them.
-				if val.Kind() != reflect.Ptr || !val.IsNil() {
-					// value
-					if _, err := w.WriteString("value:"); err != nil {
-						return err
-					}
-					if !w.compact {
-						if err := w.WriteByte(' '); err != nil {
-							return err
-						}
-					}
-					if err := tm.writeAny(w, val, props.MapValProp); err != nil {
-						return err
-					}
-					if err := w.WriteByte('\n'); err != nil {
-						return err
-					}
-				}
-				// close struct
-				w.unindent()
-				if err := w.WriteByte('>'); err != nil {
-					return err
-				}
-				if err := w.WriteByte('\n'); err != nil {
-					return err
-				}
-			}
-			continue
-		}
-		if props.proto3 && fv.Kind() == reflect.Slice && fv.Len() == 0 {
-			// empty bytes field
-			continue
-		}
-		if fv.Kind() != reflect.Ptr && fv.Kind() != reflect.Slice {
-			// proto3 non-repeated scalar field; skip if zero value
-			if isProto3Zero(fv) {
-				continue
-			}
-		}
-
-		if fv.Kind() == reflect.Interface {
-			// Check if it is a oneof.
-			if st.Field(i).Tag.Get("protobuf_oneof") != "" {
-				// fv is nil, or holds a pointer to generated struct.
-				// That generated struct has exactly one field,
-				// which has a protobuf struct tag.
-				if fv.IsNil() {
-					continue
-				}
-				inner := fv.Elem().Elem() // interface -> *T -> T
-				tag := inner.Type().Field(0).Tag.Get("protobuf")
-				props = new(Properties) // Overwrite the outer props var, but not its pointee.
-				props.Parse(tag)
-				// Write the value in the oneof, not the oneof itself.
-				fv = inner.Field(0)
-
-				// Special case to cope with malformed messages gracefully:
-				// If the value in the oneof is a nil pointer, don't panic
-				// in writeAny.
-				if fv.Kind() == reflect.Ptr && fv.IsNil() {
-					// Use errors.New so writeAny won't render quotes.
-					msg := errors.New("/* nil */")
-					fv = reflect.ValueOf(&msg).Elem()
-				}
-			}
-		}
-
-		if err := writeName(w, props); err != nil {
-			return err
-		}
-		if !w.compact {
-			if err := w.WriteByte(' '); err != nil {
-				return err
-			}
-		}
-
-		// Enums have a String method, so writeAny will work fine.
-		if err := tm.writeAny(w, fv, props); err != nil {
-			return err
-		}
-
-		if err := w.WriteByte('\n'); err != nil {
-			return err
-		}
-	}
-
-	// Extensions (the XXX_extensions field).
-	pv := sv.Addr()
-	if _, err := extendable(pv.Interface()); err == nil {
-		if err := tm.writeExtensions(w, pv); err != nil {
-			return err
-		}
-	}
-
-	return nil
-}
-
-// writeAny writes an arbitrary field.
-func (tm *TextMarshaler) writeAny(w *textWriter, v reflect.Value, props *Properties) error {
-	v = reflect.Indirect(v)
-
-	// Floats have special cases.
-	if v.Kind() == reflect.Float32 || v.Kind() == reflect.Float64 {
-		x := v.Float()
-		var b []byte
-		switch {
-		case math.IsInf(x, 1):
-			b = posInf
-		case math.IsInf(x, -1):
-			b = negInf
-		case math.IsNaN(x):
-			b = nan
-		}
-		if b != nil {
-			_, err := w.Write(b)
-			return err
-		}
-		// Other values are handled below.
-	}
-
-	// We don't attempt to serialise every possible value type; only those
-	// that can occur in protocol buffers.
-	switch v.Kind() {
-	case reflect.Slice:
-		// Should only be a []byte; repeated fields are handled in writeStruct.
-		if err := writeString(w, string(v.Bytes())); err != nil {
-			return err
-		}
-	case reflect.String:
-		if err := writeString(w, v.String()); err != nil {
-			return err
-		}
-	case reflect.Struct:
-		// Required/optional group/message.
-		var bra, ket byte = '<', '>'
-		if props != nil && props.Wire == "group" {
-			bra, ket = '{', '}'
-		}
-		if err := w.WriteByte(bra); err != nil {
-			return err
-		}
-		if !w.compact {
-			if err := w.WriteByte('\n'); err != nil {
-				return err
-			}
-		}
-		w.indent()
-		if v.CanAddr() {
-			// Calling v.Interface on a struct causes the reflect package to
-			// copy the entire struct. This is racy with the new Marshaler
-			// since we atomically update the XXX_sizecache.
-			//
-			// Thus, we retrieve a pointer to the struct if possible to avoid
-			// a race since v.Interface on the pointer doesn't copy the struct.
-			//
-			// If v is not addressable, then we are not worried about a race
-			// since it implies that the binary Marshaler cannot possibly be
-			// mutating this value.
-			v = v.Addr()
-		}
-		if etm, ok := v.Interface().(encoding.TextMarshaler); ok {
-			text, err := etm.MarshalText()
-			if err != nil {
-				return err
-			}
-			if _, err = w.Write(text); err != nil {
-				return err
-			}
-		} else {
-			if v.Kind() == reflect.Ptr {
-				v = v.Elem()
-			}
-			if err := tm.writeStruct(w, v); err != nil {
-				return err
-			}
-		}
-		w.unindent()
-		if err := w.WriteByte(ket); err != nil {
-			return err
-		}
-	default:
-		_, err := fmt.Fprint(w, v.Interface())
-		return err
-	}
-	return nil
-}
-
-// equivalent to C's isprint.
-func isprint(c byte) bool {
-	return c >= 0x20 && c < 0x7f
-}
-
-// writeString writes a string in the protocol buffer text format.
-// It is similar to strconv.Quote except we don't use Go escape sequences,
-// we treat the string as a byte sequence, and we use octal escapes.
-// These differences are to maintain interoperability with the other
-// languages' implementations of the text format.
-func writeString(w *textWriter, s string) error {
-	// use WriteByte here to get any needed indent
-	if err := w.WriteByte('"'); err != nil {
-		return err
-	}
-	// Loop over the bytes, not the runes.
-	for i := 0; i < len(s); i++ {
-		var err error
-		// Divergence from C++: we don't escape apostrophes.
-		// There's no need to escape them, and the C++ parser
-		// copes with a naked apostrophe.
-		switch c := s[i]; c {
-		case '\n':
-			_, err = w.w.Write(backslashN)
-		case '\r':
-			_, err = w.w.Write(backslashR)
-		case '\t':
-			_, err = w.w.Write(backslashT)
-		case '"':
-			_, err = w.w.Write(backslashDQ)
-		case '\\':
-			_, err = w.w.Write(backslashBS)
-		default:
-			if isprint(c) {
-				err = w.w.WriteByte(c)
-			} else {
-				_, err = fmt.Fprintf(w.w, "\\%03o", c)
-			}
-		}
-		if err != nil {
-			return err
-		}
-	}
-	return w.WriteByte('"')
-}
-
-func writeUnknownStruct(w *textWriter, data []byte) (err error) {
-	if !w.compact {
-		if _, err := fmt.Fprintf(w, "/* %d unknown bytes */\n", len(data)); err != nil {
-			return err
-		}
-	}
-	b := NewBuffer(data)
-	for b.index < len(b.buf) {
-		x, err := b.DecodeVarint()
-		if err != nil {
-			_, err := fmt.Fprintf(w, "/* %v */\n", err)
-			return err
-		}
-		wire, tag := x&7, x>>3
-		if wire == WireEndGroup {
-			w.unindent()
-			if _, err := w.Write(endBraceNewline); err != nil {
-				return err
-			}
-			continue
-		}
-		if _, err := fmt.Fprint(w, tag); err != nil {
-			return err
-		}
-		if wire != WireStartGroup {
-			if err := w.WriteByte(':'); err != nil {
-				return err
-			}
-		}
-		if !w.compact || wire == WireStartGroup {
-			if err := w.WriteByte(' '); err != nil {
-				return err
-			}
-		}
-		switch wire {
-		case WireBytes:
-			buf, e := b.DecodeRawBytes(false)
-			if e == nil {
-				_, err = fmt.Fprintf(w, "%q", buf)
-			} else {
-				_, err = fmt.Fprintf(w, "/* %v */", e)
-			}
-		case WireFixed32:
-			x, err = b.DecodeFixed32()
-			err = writeUnknownInt(w, x, err)
-		case WireFixed64:
-			x, err = b.DecodeFixed64()
-			err = writeUnknownInt(w, x, err)
-		case WireStartGroup:
-			err = w.WriteByte('{')
-			w.indent()
-		case WireVarint:
-			x, err = b.DecodeVarint()
-			err = writeUnknownInt(w, x, err)
-		default:
-			_, err = fmt.Fprintf(w, "/* unknown wire type %d */", wire)
-		}
-		if err != nil {
-			return err
-		}
-		if err = w.WriteByte('\n'); err != nil {
-			return err
-		}
-	}
-	return nil
-}
-
-func writeUnknownInt(w *textWriter, x uint64, err error) error {
-	if err == nil {
-		_, err = fmt.Fprint(w, x)
-	} else {
-		_, err = fmt.Fprintf(w, "/* %v */", err)
-	}
-	return err
-}
-
-type int32Slice []int32
-
-func (s int32Slice) Len() int           { return len(s) }
-func (s int32Slice) Less(i, j int) bool { return s[i] < s[j] }
-func (s int32Slice) Swap(i, j int)      { s[i], s[j] = s[j], s[i] }
-
-// writeExtensions writes all the extensions in pv.
-// pv is assumed to be a pointer to a protocol message struct that is extendable.
-func (tm *TextMarshaler) writeExtensions(w *textWriter, pv reflect.Value) error {
-	emap := extensionMaps[pv.Type().Elem()]
-	ep, _ := extendable(pv.Interface())
-
-	// Order the extensions by ID.
-	// This isn't strictly necessary, but it will give us
-	// canonical output, which will also make testing easier.
-	m, mu := ep.extensionsRead()
-	if m == nil {
-		return nil
-	}
-	mu.Lock()
-	ids := make([]int32, 0, len(m))
-	for id := range m {
-		ids = append(ids, id)
-	}
-	sort.Sort(int32Slice(ids))
-	mu.Unlock()
-
-	for _, extNum := range ids {
-		ext := m[extNum]
-		var desc *ExtensionDesc
-		if emap != nil {
-			desc = emap[extNum]
-		}
-		if desc == nil {
-			// Unknown extension.
-			if err := writeUnknownStruct(w, ext.enc); err != nil {
-				return err
-			}
-			continue
-		}
-
-		pb, err := GetExtension(ep, desc)
-		if err != nil {
-			return fmt.Errorf("failed getting extension: %v", err)
-		}
-
-		// Repeated extensions will appear as a slice.
-		if !desc.repeated() {
-			if err := tm.writeExtension(w, desc.Name, pb); err != nil {
-				return err
-			}
-		} else {
-			v := reflect.ValueOf(pb)
-			for i := 0; i < v.Len(); i++ {
-				if err := tm.writeExtension(w, desc.Name, v.Index(i).Interface()); err != nil {
-					return err
-				}
-			}
-		}
-	}
-	return nil
-}
-
-func (tm *TextMarshaler) writeExtension(w *textWriter, name string, pb interface{}) error {
-	if _, err := fmt.Fprintf(w, "[%s]:", name); err != nil {
-		return err
-	}
-	if !w.compact {
-		if err := w.WriteByte(' '); err != nil {
-			return err
-		}
-	}
-	if err := tm.writeAny(w, reflect.ValueOf(pb), nil); err != nil {
-		return err
-	}
-	if err := w.WriteByte('\n'); err != nil {
-		return err
-	}
-	return nil
-}
-
-func (w *textWriter) writeIndent() {
-	if !w.complete {
-		return
-	}
-	remain := w.ind * 2
-	for remain > 0 {
-		n := remain
-		if n > len(spaces) {
-			n = len(spaces)
-		}
-		w.w.Write(spaces[:n])
-		remain -= n
-	}
-	w.complete = false
-}
-
-// TextMarshaler is a configurable text format marshaler.
-type TextMarshaler struct {
-	Compact   bool // use compact text format (one line).
-	ExpandAny bool // expand google.protobuf.Any messages of known types
-}
-
-// Marshal writes a given protocol buffer in text format.
-// The only errors returned are from w.
-func (tm *TextMarshaler) Marshal(w io.Writer, pb Message) error {
-	val := reflect.ValueOf(pb)
-	if pb == nil || val.IsNil() {
-		w.Write([]byte("<nil>"))
-		return nil
-	}
-	var bw *bufio.Writer
-	ww, ok := w.(writer)
-	if !ok {
-		bw = bufio.NewWriter(w)
-		ww = bw
-	}
-	aw := &textWriter{
-		w:        ww,
-		complete: true,
-		compact:  tm.Compact,
-	}
-
-	if etm, ok := pb.(encoding.TextMarshaler); ok {
-		text, err := etm.MarshalText()
-		if err != nil {
-			return err
-		}
-		if _, err = aw.Write(text); err != nil {
-			return err
-		}
-		if bw != nil {
-			return bw.Flush()
-		}
-		return nil
-	}
-	// Dereference the received pointer so we don't have outer < and >.
-	v := reflect.Indirect(val)
-	if err := tm.writeStruct(aw, v); err != nil {
-		return err
-	}
-	if bw != nil {
-		return bw.Flush()
-	}
-	return nil
-}
-
-// Text is the same as Marshal, but returns the string directly.
-func (tm *TextMarshaler) Text(pb Message) string {
-	var buf bytes.Buffer
-	tm.Marshal(&buf, pb)
-	return buf.String()
-}
-
-var (
-	defaultTextMarshaler = TextMarshaler{}
-	compactTextMarshaler = TextMarshaler{Compact: true}
-)
-
-// TODO: consider removing some of the Marshal functions below.
-
-// MarshalText writes a given protocol buffer in text format.
-// The only errors returned are from w.
-func MarshalText(w io.Writer, pb Message) error { return defaultTextMarshaler.Marshal(w, pb) }
-
-// MarshalTextString is the same as MarshalText, but returns the string directly.
-func MarshalTextString(pb Message) string { return defaultTextMarshaler.Text(pb) }
-
-// CompactText writes a given protocol buffer in compact text format (one line).
-func CompactText(w io.Writer, pb Message) error { return compactTextMarshaler.Marshal(w, pb) }
-
-// CompactTextString is the same as CompactText, but returns the string directly.
-func CompactTextString(pb Message) string { return compactTextMarshaler.Text(pb) }
diff --git a/vendor/github.com/golang/protobuf/proto/text_decode.go b/vendor/github.com/golang/protobuf/proto/text_decode.go
new file mode 100644
index 0000000..47eb3e4
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/text_decode.go
@@ -0,0 +1,801 @@
+// Copyright 2010 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 proto
+
+import (
+	"encoding"
+	"errors"
+	"fmt"
+	"reflect"
+	"strconv"
+	"strings"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/prototext"
+	protoV2 "google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+const wrapTextUnmarshalV2 = false
+
+// ParseError is returned by UnmarshalText.
+type ParseError struct {
+	Message string
+
+	// Deprecated: Do not use.
+	Line, Offset int
+}
+
+func (e *ParseError) Error() string {
+	if wrapTextUnmarshalV2 {
+		return e.Message
+	}
+	if e.Line == 1 {
+		return fmt.Sprintf("line 1.%d: %v", e.Offset, e.Message)
+	}
+	return fmt.Sprintf("line %d: %v", e.Line, e.Message)
+}
+
+// UnmarshalText parses a proto text formatted string into m.
+func UnmarshalText(s string, m Message) error {
+	if u, ok := m.(encoding.TextUnmarshaler); ok {
+		return u.UnmarshalText([]byte(s))
+	}
+
+	m.Reset()
+	mi := MessageV2(m)
+
+	if wrapTextUnmarshalV2 {
+		err := prototext.UnmarshalOptions{
+			AllowPartial: true,
+		}.Unmarshal([]byte(s), mi)
+		if err != nil {
+			return &ParseError{Message: err.Error()}
+		}
+		return checkRequiredNotSet(mi)
+	} else {
+		if err := newTextParser(s).unmarshalMessage(mi.ProtoReflect(), ""); err != nil {
+			return err
+		}
+		return checkRequiredNotSet(mi)
+	}
+}
+
+type textParser struct {
+	s            string // remaining input
+	done         bool   // whether the parsing is finished (success or error)
+	backed       bool   // whether back() was called
+	offset, line int
+	cur          token
+}
+
+type token struct {
+	value    string
+	err      *ParseError
+	line     int    // line number
+	offset   int    // byte number from start of input, not start of line
+	unquoted string // the unquoted version of value, if it was a quoted string
+}
+
+func newTextParser(s string) *textParser {
+	p := new(textParser)
+	p.s = s
+	p.line = 1
+	p.cur.line = 1
+	return p
+}
+
+func (p *textParser) unmarshalMessage(m protoreflect.Message, terminator string) (err error) {
+	md := m.Descriptor()
+	fds := md.Fields()
+
+	// A struct is a sequence of "name: value", terminated by one of
+	// '>' or '}', or the end of the input.  A name may also be
+	// "[extension]" or "[type/url]".
+	//
+	// The whole struct can also be an expanded Any message, like:
+	// [type/url] < ... struct contents ... >
+	seen := make(map[protoreflect.FieldNumber]bool)
+	for {
+		tok := p.next()
+		if tok.err != nil {
+			return tok.err
+		}
+		if tok.value == terminator {
+			break
+		}
+		if tok.value == "[" {
+			if err := p.unmarshalExtensionOrAny(m, seen); err != nil {
+				return err
+			}
+			continue
+		}
+
+		// This is a normal, non-extension field.
+		name := protoreflect.Name(tok.value)
+		fd := fds.ByName(name)
+		switch {
+		case fd == nil:
+			gd := fds.ByName(protoreflect.Name(strings.ToLower(string(name))))
+			if gd != nil && gd.Kind() == protoreflect.GroupKind && gd.Message().Name() == name {
+				fd = gd
+			}
+		case fd.Kind() == protoreflect.GroupKind && fd.Message().Name() != name:
+			fd = nil
+		case fd.IsWeak() && fd.Message().IsPlaceholder():
+			fd = nil
+		}
+		if fd == nil {
+			typeName := string(md.FullName())
+			if m, ok := m.Interface().(Message); ok {
+				t := reflect.TypeOf(m)
+				if t.Kind() == reflect.Ptr {
+					typeName = t.Elem().String()
+				}
+			}
+			return p.errorf("unknown field name %q in %v", name, typeName)
+		}
+		if od := fd.ContainingOneof(); od != nil && m.WhichOneof(od) != nil {
+			return p.errorf("field '%s' would overwrite already parsed oneof '%s'", name, od.Name())
+		}
+		if fd.Cardinality() != protoreflect.Repeated && seen[fd.Number()] {
+			return p.errorf("non-repeated field %q was repeated", fd.Name())
+		}
+		seen[fd.Number()] = true
+
+		// Consume any colon.
+		if err := p.checkForColon(fd); err != nil {
+			return err
+		}
+
+		// Parse into the field.
+		v := m.Get(fd)
+		if !m.Has(fd) && (fd.IsList() || fd.IsMap() || fd.Message() != nil) {
+			v = m.Mutable(fd)
+		}
+		if v, err = p.unmarshalValue(v, fd); err != nil {
+			return err
+		}
+		m.Set(fd, v)
+
+		if err := p.consumeOptionalSeparator(); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+func (p *textParser) unmarshalExtensionOrAny(m protoreflect.Message, seen map[protoreflect.FieldNumber]bool) error {
+	name, err := p.consumeExtensionOrAnyName()
+	if err != nil {
+		return err
+	}
+
+	// If it contains a slash, it's an Any type URL.
+	if slashIdx := strings.LastIndex(name, "/"); slashIdx >= 0 {
+		tok := p.next()
+		if tok.err != nil {
+			return tok.err
+		}
+		// consume an optional colon
+		if tok.value == ":" {
+			tok = p.next()
+			if tok.err != nil {
+				return tok.err
+			}
+		}
+
+		var terminator string
+		switch tok.value {
+		case "<":
+			terminator = ">"
+		case "{":
+			terminator = "}"
+		default:
+			return p.errorf("expected '{' or '<', found %q", tok.value)
+		}
+
+		mt, err := protoregistry.GlobalTypes.FindMessageByURL(name)
+		if err != nil {
+			return p.errorf("unrecognized message %q in google.protobuf.Any", name[slashIdx+len("/"):])
+		}
+		m2 := mt.New()
+		if err := p.unmarshalMessage(m2, terminator); err != nil {
+			return err
+		}
+		b, err := protoV2.Marshal(m2.Interface())
+		if err != nil {
+			return p.errorf("failed to marshal message of type %q: %v", name[slashIdx+len("/"):], err)
+		}
+
+		urlFD := m.Descriptor().Fields().ByName("type_url")
+		valFD := m.Descriptor().Fields().ByName("value")
+		if seen[urlFD.Number()] {
+			return p.errorf("Any message unpacked multiple times, or %q already set", urlFD.Name())
+		}
+		if seen[valFD.Number()] {
+			return p.errorf("Any message unpacked multiple times, or %q already set", valFD.Name())
+		}
+		m.Set(urlFD, protoreflect.ValueOfString(name))
+		m.Set(valFD, protoreflect.ValueOfBytes(b))
+		seen[urlFD.Number()] = true
+		seen[valFD.Number()] = true
+		return nil
+	}
+
+	xname := protoreflect.FullName(name)
+	xt, _ := protoregistry.GlobalTypes.FindExtensionByName(xname)
+	if xt == nil && isMessageSet(m.Descriptor()) {
+		xt, _ = protoregistry.GlobalTypes.FindExtensionByName(xname.Append("message_set_extension"))
+	}
+	if xt == nil {
+		return p.errorf("unrecognized extension %q", name)
+	}
+	fd := xt.TypeDescriptor()
+	if fd.ContainingMessage().FullName() != m.Descriptor().FullName() {
+		return p.errorf("extension field %q does not extend message %q", name, m.Descriptor().FullName())
+	}
+
+	if err := p.checkForColon(fd); err != nil {
+		return err
+	}
+
+	v := m.Get(fd)
+	if !m.Has(fd) && (fd.IsList() || fd.IsMap() || fd.Message() != nil) {
+		v = m.Mutable(fd)
+	}
+	v, err = p.unmarshalValue(v, fd)
+	if err != nil {
+		return err
+	}
+	m.Set(fd, v)
+	return p.consumeOptionalSeparator()
+}
+
+func (p *textParser) unmarshalValue(v protoreflect.Value, fd protoreflect.FieldDescriptor) (protoreflect.Value, error) {
+	tok := p.next()
+	if tok.err != nil {
+		return v, tok.err
+	}
+	if tok.value == "" {
+		return v, p.errorf("unexpected EOF")
+	}
+
+	switch {
+	case fd.IsList():
+		lv := v.List()
+		var err error
+		if tok.value == "[" {
+			// Repeated field with list notation, like [1,2,3].
+			for {
+				vv := lv.NewElement()
+				vv, err = p.unmarshalSingularValue(vv, fd)
+				if err != nil {
+					return v, err
+				}
+				lv.Append(vv)
+
+				tok := p.next()
+				if tok.err != nil {
+					return v, tok.err
+				}
+				if tok.value == "]" {
+					break
+				}
+				if tok.value != "," {
+					return v, p.errorf("Expected ']' or ',' found %q", tok.value)
+				}
+			}
+			return v, nil
+		}
+
+		// One value of the repeated field.
+		p.back()
+		vv := lv.NewElement()
+		vv, err = p.unmarshalSingularValue(vv, fd)
+		if err != nil {
+			return v, err
+		}
+		lv.Append(vv)
+		return v, nil
+	case fd.IsMap():
+		// The map entry should be this sequence of tokens:
+		//	< key : KEY value : VALUE >
+		// However, implementations may omit key or value, and technically
+		// we should support them in any order.
+		var terminator string
+		switch tok.value {
+		case "<":
+			terminator = ">"
+		case "{":
+			terminator = "}"
+		default:
+			return v, p.errorf("expected '{' or '<', found %q", tok.value)
+		}
+
+		keyFD := fd.MapKey()
+		valFD := fd.MapValue()
+
+		mv := v.Map()
+		kv := keyFD.Default()
+		vv := mv.NewValue()
+		for {
+			tok := p.next()
+			if tok.err != nil {
+				return v, tok.err
+			}
+			if tok.value == terminator {
+				break
+			}
+			var err error
+			switch tok.value {
+			case "key":
+				if err := p.consumeToken(":"); err != nil {
+					return v, err
+				}
+				if kv, err = p.unmarshalSingularValue(kv, keyFD); err != nil {
+					return v, err
+				}
+				if err := p.consumeOptionalSeparator(); err != nil {
+					return v, err
+				}
+			case "value":
+				if err := p.checkForColon(valFD); err != nil {
+					return v, err
+				}
+				if vv, err = p.unmarshalSingularValue(vv, valFD); err != nil {
+					return v, err
+				}
+				if err := p.consumeOptionalSeparator(); err != nil {
+					return v, err
+				}
+			default:
+				p.back()
+				return v, p.errorf(`expected "key", "value", or %q, found %q`, terminator, tok.value)
+			}
+		}
+		mv.Set(kv.MapKey(), vv)
+		return v, nil
+	default:
+		p.back()
+		return p.unmarshalSingularValue(v, fd)
+	}
+}
+
+func (p *textParser) unmarshalSingularValue(v protoreflect.Value, fd protoreflect.FieldDescriptor) (protoreflect.Value, error) {
+	tok := p.next()
+	if tok.err != nil {
+		return v, tok.err
+	}
+	if tok.value == "" {
+		return v, p.errorf("unexpected EOF")
+	}
+
+	switch fd.Kind() {
+	case protoreflect.BoolKind:
+		switch tok.value {
+		case "true", "1", "t", "True":
+			return protoreflect.ValueOfBool(true), nil
+		case "false", "0", "f", "False":
+			return protoreflect.ValueOfBool(false), nil
+		}
+	case protoreflect.Int32Kind, protoreflect.Sint32Kind, protoreflect.Sfixed32Kind:
+		if x, err := strconv.ParseInt(tok.value, 0, 32); err == nil {
+			return protoreflect.ValueOfInt32(int32(x)), nil
+		}
+
+		// The C++ parser accepts large positive hex numbers that uses
+		// two's complement arithmetic to represent negative numbers.
+		// This feature is here for backwards compatibility with C++.
+		if strings.HasPrefix(tok.value, "0x") {
+			if x, err := strconv.ParseUint(tok.value, 0, 32); err == nil {
+				return protoreflect.ValueOfInt32(int32(-(int64(^x) + 1))), nil
+			}
+		}
+	case protoreflect.Int64Kind, protoreflect.Sint64Kind, protoreflect.Sfixed64Kind:
+		if x, err := strconv.ParseInt(tok.value, 0, 64); err == nil {
+			return protoreflect.ValueOfInt64(int64(x)), nil
+		}
+
+		// The C++ parser accepts large positive hex numbers that uses
+		// two's complement arithmetic to represent negative numbers.
+		// This feature is here for backwards compatibility with C++.
+		if strings.HasPrefix(tok.value, "0x") {
+			if x, err := strconv.ParseUint(tok.value, 0, 64); err == nil {
+				return protoreflect.ValueOfInt64(int64(-(int64(^x) + 1))), nil
+			}
+		}
+	case protoreflect.Uint32Kind, protoreflect.Fixed32Kind:
+		if x, err := strconv.ParseUint(tok.value, 0, 32); err == nil {
+			return protoreflect.ValueOfUint32(uint32(x)), nil
+		}
+	case protoreflect.Uint64Kind, protoreflect.Fixed64Kind:
+		if x, err := strconv.ParseUint(tok.value, 0, 64); err == nil {
+			return protoreflect.ValueOfUint64(uint64(x)), nil
+		}
+	case protoreflect.FloatKind:
+		// Ignore 'f' for compatibility with output generated by C++,
+		// but don't remove 'f' when the value is "-inf" or "inf".
+		v := tok.value
+		if strings.HasSuffix(v, "f") && v != "-inf" && v != "inf" {
+			v = v[:len(v)-len("f")]
+		}
+		if x, err := strconv.ParseFloat(v, 32); err == nil {
+			return protoreflect.ValueOfFloat32(float32(x)), nil
+		}
+	case protoreflect.DoubleKind:
+		// Ignore 'f' for compatibility with output generated by C++,
+		// but don't remove 'f' when the value is "-inf" or "inf".
+		v := tok.value
+		if strings.HasSuffix(v, "f") && v != "-inf" && v != "inf" {
+			v = v[:len(v)-len("f")]
+		}
+		if x, err := strconv.ParseFloat(v, 64); err == nil {
+			return protoreflect.ValueOfFloat64(float64(x)), nil
+		}
+	case protoreflect.StringKind:
+		if isQuote(tok.value[0]) {
+			return protoreflect.ValueOfString(tok.unquoted), nil
+		}
+	case protoreflect.BytesKind:
+		if isQuote(tok.value[0]) {
+			return protoreflect.ValueOfBytes([]byte(tok.unquoted)), nil
+		}
+	case protoreflect.EnumKind:
+		if x, err := strconv.ParseInt(tok.value, 0, 32); err == nil {
+			return protoreflect.ValueOfEnum(protoreflect.EnumNumber(x)), nil
+		}
+		vd := fd.Enum().Values().ByName(protoreflect.Name(tok.value))
+		if vd != nil {
+			return protoreflect.ValueOfEnum(vd.Number()), nil
+		}
+	case protoreflect.MessageKind, protoreflect.GroupKind:
+		var terminator string
+		switch tok.value {
+		case "{":
+			terminator = "}"
+		case "<":
+			terminator = ">"
+		default:
+			return v, p.errorf("expected '{' or '<', found %q", tok.value)
+		}
+		err := p.unmarshalMessage(v.Message(), terminator)
+		return v, err
+	default:
+		panic(fmt.Sprintf("invalid kind %v", fd.Kind()))
+	}
+	return v, p.errorf("invalid %v: %v", fd.Kind(), tok.value)
+}
+
+// Consume a ':' from the input stream (if the next token is a colon),
+// returning an error if a colon is needed but not present.
+func (p *textParser) checkForColon(fd protoreflect.FieldDescriptor) *ParseError {
+	tok := p.next()
+	if tok.err != nil {
+		return tok.err
+	}
+	if tok.value != ":" {
+		if fd.Message() == nil {
+			return p.errorf("expected ':', found %q", tok.value)
+		}
+		p.back()
+	}
+	return nil
+}
+
+// consumeExtensionOrAnyName consumes an extension name or an Any type URL and
+// the following ']'. It returns the name or URL consumed.
+func (p *textParser) consumeExtensionOrAnyName() (string, error) {
+	tok := p.next()
+	if tok.err != nil {
+		return "", tok.err
+	}
+
+	// If extension name or type url is quoted, it's a single token.
+	if len(tok.value) > 2 && isQuote(tok.value[0]) && tok.value[len(tok.value)-1] == tok.value[0] {
+		name, err := unquoteC(tok.value[1:len(tok.value)-1], rune(tok.value[0]))
+		if err != nil {
+			return "", err
+		}
+		return name, p.consumeToken("]")
+	}
+
+	// Consume everything up to "]"
+	var parts []string
+	for tok.value != "]" {
+		parts = append(parts, tok.value)
+		tok = p.next()
+		if tok.err != nil {
+			return "", p.errorf("unrecognized type_url or extension name: %s", tok.err)
+		}
+		if p.done && tok.value != "]" {
+			return "", p.errorf("unclosed type_url or extension name")
+		}
+	}
+	return strings.Join(parts, ""), nil
+}
+
+// consumeOptionalSeparator consumes an optional semicolon or comma.
+// It is used in unmarshalMessage to provide backward compatibility.
+func (p *textParser) consumeOptionalSeparator() error {
+	tok := p.next()
+	if tok.err != nil {
+		return tok.err
+	}
+	if tok.value != ";" && tok.value != "," {
+		p.back()
+	}
+	return nil
+}
+
+func (p *textParser) errorf(format string, a ...interface{}) *ParseError {
+	pe := &ParseError{fmt.Sprintf(format, a...), p.cur.line, p.cur.offset}
+	p.cur.err = pe
+	p.done = true
+	return pe
+}
+
+func (p *textParser) skipWhitespace() {
+	i := 0
+	for i < len(p.s) && (isWhitespace(p.s[i]) || p.s[i] == '#') {
+		if p.s[i] == '#' {
+			// comment; skip to end of line or input
+			for i < len(p.s) && p.s[i] != '\n' {
+				i++
+			}
+			if i == len(p.s) {
+				break
+			}
+		}
+		if p.s[i] == '\n' {
+			p.line++
+		}
+		i++
+	}
+	p.offset += i
+	p.s = p.s[i:len(p.s)]
+	if len(p.s) == 0 {
+		p.done = true
+	}
+}
+
+func (p *textParser) advance() {
+	// Skip whitespace
+	p.skipWhitespace()
+	if p.done {
+		return
+	}
+
+	// Start of non-whitespace
+	p.cur.err = nil
+	p.cur.offset, p.cur.line = p.offset, p.line
+	p.cur.unquoted = ""
+	switch p.s[0] {
+	case '<', '>', '{', '}', ':', '[', ']', ';', ',', '/':
+		// Single symbol
+		p.cur.value, p.s = p.s[0:1], p.s[1:len(p.s)]
+	case '"', '\'':
+		// Quoted string
+		i := 1
+		for i < len(p.s) && p.s[i] != p.s[0] && p.s[i] != '\n' {
+			if p.s[i] == '\\' && i+1 < len(p.s) {
+				// skip escaped char
+				i++
+			}
+			i++
+		}
+		if i >= len(p.s) || p.s[i] != p.s[0] {
+			p.errorf("unmatched quote")
+			return
+		}
+		unq, err := unquoteC(p.s[1:i], rune(p.s[0]))
+		if err != nil {
+			p.errorf("invalid quoted string %s: %v", p.s[0:i+1], err)
+			return
+		}
+		p.cur.value, p.s = p.s[0:i+1], p.s[i+1:len(p.s)]
+		p.cur.unquoted = unq
+	default:
+		i := 0
+		for i < len(p.s) && isIdentOrNumberChar(p.s[i]) {
+			i++
+		}
+		if i == 0 {
+			p.errorf("unexpected byte %#x", p.s[0])
+			return
+		}
+		p.cur.value, p.s = p.s[0:i], p.s[i:len(p.s)]
+	}
+	p.offset += len(p.cur.value)
+}
+
+// Back off the parser by one token. Can only be done between calls to next().
+// It makes the next advance() a no-op.
+func (p *textParser) back() { p.backed = true }
+
+// Advances the parser and returns the new current token.
+func (p *textParser) next() *token {
+	if p.backed || p.done {
+		p.backed = false
+		return &p.cur
+	}
+	p.advance()
+	if p.done {
+		p.cur.value = ""
+	} else if len(p.cur.value) > 0 && isQuote(p.cur.value[0]) {
+		// Look for multiple quoted strings separated by whitespace,
+		// and concatenate them.
+		cat := p.cur
+		for {
+			p.skipWhitespace()
+			if p.done || !isQuote(p.s[0]) {
+				break
+			}
+			p.advance()
+			if p.cur.err != nil {
+				return &p.cur
+			}
+			cat.value += " " + p.cur.value
+			cat.unquoted += p.cur.unquoted
+		}
+		p.done = false // parser may have seen EOF, but we want to return cat
+		p.cur = cat
+	}
+	return &p.cur
+}
+
+func (p *textParser) consumeToken(s string) error {
+	tok := p.next()
+	if tok.err != nil {
+		return tok.err
+	}
+	if tok.value != s {
+		p.back()
+		return p.errorf("expected %q, found %q", s, tok.value)
+	}
+	return nil
+}
+
+var errBadUTF8 = errors.New("proto: bad UTF-8")
+
+func unquoteC(s string, quote rune) (string, error) {
+	// This is based on C++'s tokenizer.cc.
+	// Despite its name, this is *not* parsing C syntax.
+	// For instance, "\0" is an invalid quoted string.
+
+	// Avoid allocation in trivial cases.
+	simple := true
+	for _, r := range s {
+		if r == '\\' || r == quote {
+			simple = false
+			break
+		}
+	}
+	if simple {
+		return s, nil
+	}
+
+	buf := make([]byte, 0, 3*len(s)/2)
+	for len(s) > 0 {
+		r, n := utf8.DecodeRuneInString(s)
+		if r == utf8.RuneError && n == 1 {
+			return "", errBadUTF8
+		}
+		s = s[n:]
+		if r != '\\' {
+			if r < utf8.RuneSelf {
+				buf = append(buf, byte(r))
+			} else {
+				buf = append(buf, string(r)...)
+			}
+			continue
+		}
+
+		ch, tail, err := unescape(s)
+		if err != nil {
+			return "", err
+		}
+		buf = append(buf, ch...)
+		s = tail
+	}
+	return string(buf), nil
+}
+
+func unescape(s string) (ch string, tail string, err error) {
+	r, n := utf8.DecodeRuneInString(s)
+	if r == utf8.RuneError && n == 1 {
+		return "", "", errBadUTF8
+	}
+	s = s[n:]
+	switch r {
+	case 'a':
+		return "\a", s, nil
+	case 'b':
+		return "\b", s, nil
+	case 'f':
+		return "\f", s, nil
+	case 'n':
+		return "\n", s, nil
+	case 'r':
+		return "\r", s, nil
+	case 't':
+		return "\t", s, nil
+	case 'v':
+		return "\v", s, nil
+	case '?':
+		return "?", s, nil // trigraph workaround
+	case '\'', '"', '\\':
+		return string(r), s, nil
+	case '0', '1', '2', '3', '4', '5', '6', '7':
+		if len(s) < 2 {
+			return "", "", fmt.Errorf(`\%c requires 2 following digits`, r)
+		}
+		ss := string(r) + s[:2]
+		s = s[2:]
+		i, err := strconv.ParseUint(ss, 8, 8)
+		if err != nil {
+			return "", "", fmt.Errorf(`\%s contains non-octal digits`, ss)
+		}
+		return string([]byte{byte(i)}), s, nil
+	case 'x', 'X', 'u', 'U':
+		var n int
+		switch r {
+		case 'x', 'X':
+			n = 2
+		case 'u':
+			n = 4
+		case 'U':
+			n = 8
+		}
+		if len(s) < n {
+			return "", "", fmt.Errorf(`\%c requires %d following digits`, r, n)
+		}
+		ss := s[:n]
+		s = s[n:]
+		i, err := strconv.ParseUint(ss, 16, 64)
+		if err != nil {
+			return "", "", fmt.Errorf(`\%c%s contains non-hexadecimal digits`, r, ss)
+		}
+		if r == 'x' || r == 'X' {
+			return string([]byte{byte(i)}), s, nil
+		}
+		if i > utf8.MaxRune {
+			return "", "", fmt.Errorf(`\%c%s is not a valid Unicode code point`, r, ss)
+		}
+		return string(rune(i)), s, nil
+	}
+	return "", "", fmt.Errorf(`unknown escape \%c`, r)
+}
+
+func isIdentOrNumberChar(c byte) bool {
+	switch {
+	case 'A' <= c && c <= 'Z', 'a' <= c && c <= 'z':
+		return true
+	case '0' <= c && c <= '9':
+		return true
+	}
+	switch c {
+	case '-', '+', '.', '_':
+		return true
+	}
+	return false
+}
+
+func isWhitespace(c byte) bool {
+	switch c {
+	case ' ', '\t', '\n', '\r':
+		return true
+	}
+	return false
+}
+
+func isQuote(c byte) bool {
+	switch c {
+	case '"', '\'':
+		return true
+	}
+	return false
+}
diff --git a/vendor/github.com/golang/protobuf/proto/text_encode.go b/vendor/github.com/golang/protobuf/proto/text_encode.go
new file mode 100644
index 0000000..a31134e
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/text_encode.go
@@ -0,0 +1,560 @@
+// Copyright 2010 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 proto
+
+import (
+	"bytes"
+	"encoding"
+	"fmt"
+	"io"
+	"math"
+	"sort"
+	"strings"
+
+	"google.golang.org/protobuf/encoding/prototext"
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+const wrapTextMarshalV2 = false
+
+// TextMarshaler is a configurable text format marshaler.
+type TextMarshaler struct {
+	Compact   bool // use compact text format (one line)
+	ExpandAny bool // expand google.protobuf.Any messages of known types
+}
+
+// Marshal writes the proto text format of m to w.
+func (tm *TextMarshaler) Marshal(w io.Writer, m Message) error {
+	b, err := tm.marshal(m)
+	if len(b) > 0 {
+		if _, err := w.Write(b); err != nil {
+			return err
+		}
+	}
+	return err
+}
+
+// Text returns a proto text formatted string of m.
+func (tm *TextMarshaler) Text(m Message) string {
+	b, _ := tm.marshal(m)
+	return string(b)
+}
+
+func (tm *TextMarshaler) marshal(m Message) ([]byte, error) {
+	mr := MessageReflect(m)
+	if mr == nil || !mr.IsValid() {
+		return []byte("<nil>"), nil
+	}
+
+	if wrapTextMarshalV2 {
+		if m, ok := m.(encoding.TextMarshaler); ok {
+			return m.MarshalText()
+		}
+
+		opts := prototext.MarshalOptions{
+			AllowPartial: true,
+			EmitUnknown:  true,
+		}
+		if !tm.Compact {
+			opts.Indent = "  "
+		}
+		if !tm.ExpandAny {
+			opts.Resolver = (*protoregistry.Types)(nil)
+		}
+		return opts.Marshal(mr.Interface())
+	} else {
+		w := &textWriter{
+			compact:   tm.Compact,
+			expandAny: tm.ExpandAny,
+			complete:  true,
+		}
+
+		if m, ok := m.(encoding.TextMarshaler); ok {
+			b, err := m.MarshalText()
+			if err != nil {
+				return nil, err
+			}
+			w.Write(b)
+			return w.buf, nil
+		}
+
+		err := w.writeMessage(mr)
+		return w.buf, err
+	}
+}
+
+var (
+	defaultTextMarshaler = TextMarshaler{}
+	compactTextMarshaler = TextMarshaler{Compact: true}
+)
+
+// MarshalText writes the proto text format of m to w.
+func MarshalText(w io.Writer, m Message) error { return defaultTextMarshaler.Marshal(w, m) }
+
+// MarshalTextString returns a proto text formatted string of m.
+func MarshalTextString(m Message) string { return defaultTextMarshaler.Text(m) }
+
+// CompactText writes the compact proto text format of m to w.
+func CompactText(w io.Writer, m Message) error { return compactTextMarshaler.Marshal(w, m) }
+
+// CompactTextString returns a compact proto text formatted string of m.
+func CompactTextString(m Message) string { return compactTextMarshaler.Text(m) }
+
+var (
+	newline         = []byte("\n")
+	endBraceNewline = []byte("}\n")
+	posInf          = []byte("inf")
+	negInf          = []byte("-inf")
+	nan             = []byte("nan")
+)
+
+// textWriter is an io.Writer that tracks its indentation level.
+type textWriter struct {
+	compact   bool // same as TextMarshaler.Compact
+	expandAny bool // same as TextMarshaler.ExpandAny
+	complete  bool // whether the current position is a complete line
+	indent    int  // indentation level; never negative
+	buf       []byte
+}
+
+func (w *textWriter) Write(p []byte) (n int, _ error) {
+	newlines := bytes.Count(p, newline)
+	if newlines == 0 {
+		if !w.compact && w.complete {
+			w.writeIndent()
+		}
+		w.buf = append(w.buf, p...)
+		w.complete = false
+		return len(p), nil
+	}
+
+	frags := bytes.SplitN(p, newline, newlines+1)
+	if w.compact {
+		for i, frag := range frags {
+			if i > 0 {
+				w.buf = append(w.buf, ' ')
+				n++
+			}
+			w.buf = append(w.buf, frag...)
+			n += len(frag)
+		}
+		return n, nil
+	}
+
+	for i, frag := range frags {
+		if w.complete {
+			w.writeIndent()
+		}
+		w.buf = append(w.buf, frag...)
+		n += len(frag)
+		if i+1 < len(frags) {
+			w.buf = append(w.buf, '\n')
+			n++
+		}
+	}
+	w.complete = len(frags[len(frags)-1]) == 0
+	return n, nil
+}
+
+func (w *textWriter) WriteByte(c byte) error {
+	if w.compact && c == '\n' {
+		c = ' '
+	}
+	if !w.compact && w.complete {
+		w.writeIndent()
+	}
+	w.buf = append(w.buf, c)
+	w.complete = c == '\n'
+	return nil
+}
+
+func (w *textWriter) writeName(fd protoreflect.FieldDescriptor) {
+	if !w.compact && w.complete {
+		w.writeIndent()
+	}
+	w.complete = false
+
+	if fd.Kind() != protoreflect.GroupKind {
+		w.buf = append(w.buf, fd.Name()...)
+		w.WriteByte(':')
+	} else {
+		// Use message type name for group field name.
+		w.buf = append(w.buf, fd.Message().Name()...)
+	}
+
+	if !w.compact {
+		w.WriteByte(' ')
+	}
+}
+
+func requiresQuotes(u string) bool {
+	// When type URL contains any characters except [0-9A-Za-z./\-]*, it must be quoted.
+	for _, ch := range u {
+		switch {
+		case ch == '.' || ch == '/' || ch == '_':
+			continue
+		case '0' <= ch && ch <= '9':
+			continue
+		case 'A' <= ch && ch <= 'Z':
+			continue
+		case 'a' <= ch && ch <= 'z':
+			continue
+		default:
+			return true
+		}
+	}
+	return false
+}
+
+// writeProto3Any writes an expanded google.protobuf.Any message.
+//
+// It returns (false, nil) if sv value can't be unmarshaled (e.g. because
+// required messages are not linked in).
+//
+// It returns (true, error) when sv was written in expanded format or an error
+// was encountered.
+func (w *textWriter) writeProto3Any(m protoreflect.Message) (bool, error) {
+	md := m.Descriptor()
+	fdURL := md.Fields().ByName("type_url")
+	fdVal := md.Fields().ByName("value")
+
+	url := m.Get(fdURL).String()
+	mt, err := protoregistry.GlobalTypes.FindMessageByURL(url)
+	if err != nil {
+		return false, nil
+	}
+
+	b := m.Get(fdVal).Bytes()
+	m2 := mt.New()
+	if err := proto.Unmarshal(b, m2.Interface()); err != nil {
+		return false, nil
+	}
+	w.Write([]byte("["))
+	if requiresQuotes(url) {
+		w.writeQuotedString(url)
+	} else {
+		w.Write([]byte(url))
+	}
+	if w.compact {
+		w.Write([]byte("]:<"))
+	} else {
+		w.Write([]byte("]: <\n"))
+		w.indent++
+	}
+	if err := w.writeMessage(m2); err != nil {
+		return true, err
+	}
+	if w.compact {
+		w.Write([]byte("> "))
+	} else {
+		w.indent--
+		w.Write([]byte(">\n"))
+	}
+	return true, nil
+}
+
+func (w *textWriter) writeMessage(m protoreflect.Message) error {
+	md := m.Descriptor()
+	if w.expandAny && md.FullName() == "google.protobuf.Any" {
+		if canExpand, err := w.writeProto3Any(m); canExpand {
+			return err
+		}
+	}
+
+	fds := md.Fields()
+	for i := 0; i < fds.Len(); {
+		fd := fds.Get(i)
+		if od := fd.ContainingOneof(); od != nil {
+			fd = m.WhichOneof(od)
+			i += od.Fields().Len()
+		} else {
+			i++
+		}
+		if fd == nil || !m.Has(fd) {
+			continue
+		}
+
+		switch {
+		case fd.IsList():
+			lv := m.Get(fd).List()
+			for j := 0; j < lv.Len(); j++ {
+				w.writeName(fd)
+				v := lv.Get(j)
+				if err := w.writeSingularValue(v, fd); err != nil {
+					return err
+				}
+				w.WriteByte('\n')
+			}
+		case fd.IsMap():
+			kfd := fd.MapKey()
+			vfd := fd.MapValue()
+			mv := m.Get(fd).Map()
+
+			type entry struct{ key, val protoreflect.Value }
+			var entries []entry
+			mv.Range(func(k protoreflect.MapKey, v protoreflect.Value) bool {
+				entries = append(entries, entry{k.Value(), v})
+				return true
+			})
+			sort.Slice(entries, func(i, j int) bool {
+				switch kfd.Kind() {
+				case protoreflect.BoolKind:
+					return !entries[i].key.Bool() && entries[j].key.Bool()
+				case protoreflect.Int32Kind, protoreflect.Sint32Kind, protoreflect.Sfixed32Kind, protoreflect.Int64Kind, protoreflect.Sint64Kind, protoreflect.Sfixed64Kind:
+					return entries[i].key.Int() < entries[j].key.Int()
+				case protoreflect.Uint32Kind, protoreflect.Fixed32Kind, protoreflect.Uint64Kind, protoreflect.Fixed64Kind:
+					return entries[i].key.Uint() < entries[j].key.Uint()
+				case protoreflect.StringKind:
+					return entries[i].key.String() < entries[j].key.String()
+				default:
+					panic("invalid kind")
+				}
+			})
+			for _, entry := range entries {
+				w.writeName(fd)
+				w.WriteByte('<')
+				if !w.compact {
+					w.WriteByte('\n')
+				}
+				w.indent++
+				w.writeName(kfd)
+				if err := w.writeSingularValue(entry.key, kfd); err != nil {
+					return err
+				}
+				w.WriteByte('\n')
+				w.writeName(vfd)
+				if err := w.writeSingularValue(entry.val, vfd); err != nil {
+					return err
+				}
+				w.WriteByte('\n')
+				w.indent--
+				w.WriteByte('>')
+				w.WriteByte('\n')
+			}
+		default:
+			w.writeName(fd)
+			if err := w.writeSingularValue(m.Get(fd), fd); err != nil {
+				return err
+			}
+			w.WriteByte('\n')
+		}
+	}
+
+	if b := m.GetUnknown(); len(b) > 0 {
+		w.writeUnknownFields(b)
+	}
+	return w.writeExtensions(m)
+}
+
+func (w *textWriter) writeSingularValue(v protoreflect.Value, fd protoreflect.FieldDescriptor) error {
+	switch fd.Kind() {
+	case protoreflect.FloatKind, protoreflect.DoubleKind:
+		switch vf := v.Float(); {
+		case math.IsInf(vf, +1):
+			w.Write(posInf)
+		case math.IsInf(vf, -1):
+			w.Write(negInf)
+		case math.IsNaN(vf):
+			w.Write(nan)
+		default:
+			fmt.Fprint(w, v.Interface())
+		}
+	case protoreflect.StringKind:
+		// NOTE: This does not validate UTF-8 for historical reasons.
+		w.writeQuotedString(string(v.String()))
+	case protoreflect.BytesKind:
+		w.writeQuotedString(string(v.Bytes()))
+	case protoreflect.MessageKind, protoreflect.GroupKind:
+		var bra, ket byte = '<', '>'
+		if fd.Kind() == protoreflect.GroupKind {
+			bra, ket = '{', '}'
+		}
+		w.WriteByte(bra)
+		if !w.compact {
+			w.WriteByte('\n')
+		}
+		w.indent++
+		m := v.Message()
+		if m2, ok := m.Interface().(encoding.TextMarshaler); ok {
+			b, err := m2.MarshalText()
+			if err != nil {
+				return err
+			}
+			w.Write(b)
+		} else {
+			w.writeMessage(m)
+		}
+		w.indent--
+		w.WriteByte(ket)
+	case protoreflect.EnumKind:
+		if ev := fd.Enum().Values().ByNumber(v.Enum()); ev != nil {
+			fmt.Fprint(w, ev.Name())
+		} else {
+			fmt.Fprint(w, v.Enum())
+		}
+	default:
+		fmt.Fprint(w, v.Interface())
+	}
+	return nil
+}
+
+// writeQuotedString writes a quoted string in the protocol buffer text format.
+func (w *textWriter) writeQuotedString(s string) {
+	w.WriteByte('"')
+	for i := 0; i < len(s); i++ {
+		switch c := s[i]; c {
+		case '\n':
+			w.buf = append(w.buf, `\n`...)
+		case '\r':
+			w.buf = append(w.buf, `\r`...)
+		case '\t':
+			w.buf = append(w.buf, `\t`...)
+		case '"':
+			w.buf = append(w.buf, `\"`...)
+		case '\\':
+			w.buf = append(w.buf, `\\`...)
+		default:
+			if isPrint := c >= 0x20 && c < 0x7f; isPrint {
+				w.buf = append(w.buf, c)
+			} else {
+				w.buf = append(w.buf, fmt.Sprintf(`\%03o`, c)...)
+			}
+		}
+	}
+	w.WriteByte('"')
+}
+
+func (w *textWriter) writeUnknownFields(b []byte) {
+	if !w.compact {
+		fmt.Fprintf(w, "/* %d unknown bytes */\n", len(b))
+	}
+
+	for len(b) > 0 {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return
+		}
+		b = b[n:]
+
+		if wtyp == protowire.EndGroupType {
+			w.indent--
+			w.Write(endBraceNewline)
+			continue
+		}
+		fmt.Fprint(w, num)
+		if wtyp != protowire.StartGroupType {
+			w.WriteByte(':')
+		}
+		if !w.compact || wtyp == protowire.StartGroupType {
+			w.WriteByte(' ')
+		}
+		switch wtyp {
+		case protowire.VarintType:
+			v, n := protowire.ConsumeVarint(b)
+			if n < 0 {
+				return
+			}
+			b = b[n:]
+			fmt.Fprint(w, v)
+		case protowire.Fixed32Type:
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return
+			}
+			b = b[n:]
+			fmt.Fprint(w, v)
+		case protowire.Fixed64Type:
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return
+			}
+			b = b[n:]
+			fmt.Fprint(w, v)
+		case protowire.BytesType:
+			v, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return
+			}
+			b = b[n:]
+			fmt.Fprintf(w, "%q", v)
+		case protowire.StartGroupType:
+			w.WriteByte('{')
+			w.indent++
+		default:
+			fmt.Fprintf(w, "/* unknown wire type %d */", wtyp)
+		}
+		w.WriteByte('\n')
+	}
+}
+
+// writeExtensions writes all the extensions in m.
+func (w *textWriter) writeExtensions(m protoreflect.Message) error {
+	md := m.Descriptor()
+	if md.ExtensionRanges().Len() == 0 {
+		return nil
+	}
+
+	type ext struct {
+		desc protoreflect.FieldDescriptor
+		val  protoreflect.Value
+	}
+	var exts []ext
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		if fd.IsExtension() {
+			exts = append(exts, ext{fd, v})
+		}
+		return true
+	})
+	sort.Slice(exts, func(i, j int) bool {
+		return exts[i].desc.Number() < exts[j].desc.Number()
+	})
+
+	for _, ext := range exts {
+		// For message set, use the name of the message as the extension name.
+		name := string(ext.desc.FullName())
+		if isMessageSet(ext.desc.ContainingMessage()) {
+			name = strings.TrimSuffix(name, ".message_set_extension")
+		}
+
+		if !ext.desc.IsList() {
+			if err := w.writeSingularExtension(name, ext.val, ext.desc); err != nil {
+				return err
+			}
+		} else {
+			lv := ext.val.List()
+			for i := 0; i < lv.Len(); i++ {
+				if err := w.writeSingularExtension(name, lv.Get(i), ext.desc); err != nil {
+					return err
+				}
+			}
+		}
+	}
+	return nil
+}
+
+func (w *textWriter) writeSingularExtension(name string, v protoreflect.Value, fd protoreflect.FieldDescriptor) error {
+	fmt.Fprintf(w, "[%s]:", name)
+	if !w.compact {
+		w.WriteByte(' ')
+	}
+	if err := w.writeSingularValue(v, fd); err != nil {
+		return err
+	}
+	w.WriteByte('\n')
+	return nil
+}
+
+func (w *textWriter) writeIndent() {
+	if !w.complete {
+		return
+	}
+	for i := 0; i < w.indent*2; i++ {
+		w.buf = append(w.buf, ' ')
+	}
+	w.complete = false
+}
diff --git a/vendor/github.com/golang/protobuf/proto/text_parser.go b/vendor/github.com/golang/protobuf/proto/text_parser.go
deleted file mode 100644
index bb55a3a..0000000
--- a/vendor/github.com/golang/protobuf/proto/text_parser.go
+++ /dev/null
@@ -1,880 +0,0 @@
-// Go support for Protocol Buffers - Google's data interchange format
-//
-// Copyright 2010 The Go Authors.  All rights reserved.
-// https://github.com/golang/protobuf
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-package proto
-
-// Functions for parsing the Text protocol buffer format.
-// TODO: message sets.
-
-import (
-	"encoding"
-	"errors"
-	"fmt"
-	"reflect"
-	"strconv"
-	"strings"
-	"unicode/utf8"
-)
-
-// Error string emitted when deserializing Any and fields are already set
-const anyRepeatedlyUnpacked = "Any message unpacked multiple times, or %q already set"
-
-type ParseError struct {
-	Message string
-	Line    int // 1-based line number
-	Offset  int // 0-based byte offset from start of input
-}
-
-func (p *ParseError) Error() string {
-	if p.Line == 1 {
-		// show offset only for first line
-		return fmt.Sprintf("line 1.%d: %v", p.Offset, p.Message)
-	}
-	return fmt.Sprintf("line %d: %v", p.Line, p.Message)
-}
-
-type token struct {
-	value    string
-	err      *ParseError
-	line     int    // line number
-	offset   int    // byte number from start of input, not start of line
-	unquoted string // the unquoted version of value, if it was a quoted string
-}
-
-func (t *token) String() string {
-	if t.err == nil {
-		return fmt.Sprintf("%q (line=%d, offset=%d)", t.value, t.line, t.offset)
-	}
-	return fmt.Sprintf("parse error: %v", t.err)
-}
-
-type textParser struct {
-	s            string // remaining input
-	done         bool   // whether the parsing is finished (success or error)
-	backed       bool   // whether back() was called
-	offset, line int
-	cur          token
-}
-
-func newTextParser(s string) *textParser {
-	p := new(textParser)
-	p.s = s
-	p.line = 1
-	p.cur.line = 1
-	return p
-}
-
-func (p *textParser) errorf(format string, a ...interface{}) *ParseError {
-	pe := &ParseError{fmt.Sprintf(format, a...), p.cur.line, p.cur.offset}
-	p.cur.err = pe
-	p.done = true
-	return pe
-}
-
-// Numbers and identifiers are matched by [-+._A-Za-z0-9]
-func isIdentOrNumberChar(c byte) bool {
-	switch {
-	case 'A' <= c && c <= 'Z', 'a' <= c && c <= 'z':
-		return true
-	case '0' <= c && c <= '9':
-		return true
-	}
-	switch c {
-	case '-', '+', '.', '_':
-		return true
-	}
-	return false
-}
-
-func isWhitespace(c byte) bool {
-	switch c {
-	case ' ', '\t', '\n', '\r':
-		return true
-	}
-	return false
-}
-
-func isQuote(c byte) bool {
-	switch c {
-	case '"', '\'':
-		return true
-	}
-	return false
-}
-
-func (p *textParser) skipWhitespace() {
-	i := 0
-	for i < len(p.s) && (isWhitespace(p.s[i]) || p.s[i] == '#') {
-		if p.s[i] == '#' {
-			// comment; skip to end of line or input
-			for i < len(p.s) && p.s[i] != '\n' {
-				i++
-			}
-			if i == len(p.s) {
-				break
-			}
-		}
-		if p.s[i] == '\n' {
-			p.line++
-		}
-		i++
-	}
-	p.offset += i
-	p.s = p.s[i:len(p.s)]
-	if len(p.s) == 0 {
-		p.done = true
-	}
-}
-
-func (p *textParser) advance() {
-	// Skip whitespace
-	p.skipWhitespace()
-	if p.done {
-		return
-	}
-
-	// Start of non-whitespace
-	p.cur.err = nil
-	p.cur.offset, p.cur.line = p.offset, p.line
-	p.cur.unquoted = ""
-	switch p.s[0] {
-	case '<', '>', '{', '}', ':', '[', ']', ';', ',', '/':
-		// Single symbol
-		p.cur.value, p.s = p.s[0:1], p.s[1:len(p.s)]
-	case '"', '\'':
-		// Quoted string
-		i := 1
-		for i < len(p.s) && p.s[i] != p.s[0] && p.s[i] != '\n' {
-			if p.s[i] == '\\' && i+1 < len(p.s) {
-				// skip escaped char
-				i++
-			}
-			i++
-		}
-		if i >= len(p.s) || p.s[i] != p.s[0] {
-			p.errorf("unmatched quote")
-			return
-		}
-		unq, err := unquoteC(p.s[1:i], rune(p.s[0]))
-		if err != nil {
-			p.errorf("invalid quoted string %s: %v", p.s[0:i+1], err)
-			return
-		}
-		p.cur.value, p.s = p.s[0:i+1], p.s[i+1:len(p.s)]
-		p.cur.unquoted = unq
-	default:
-		i := 0
-		for i < len(p.s) && isIdentOrNumberChar(p.s[i]) {
-			i++
-		}
-		if i == 0 {
-			p.errorf("unexpected byte %#x", p.s[0])
-			return
-		}
-		p.cur.value, p.s = p.s[0:i], p.s[i:len(p.s)]
-	}
-	p.offset += len(p.cur.value)
-}
-
-var (
-	errBadUTF8 = errors.New("proto: bad UTF-8")
-)
-
-func unquoteC(s string, quote rune) (string, error) {
-	// This is based on C++'s tokenizer.cc.
-	// Despite its name, this is *not* parsing C syntax.
-	// For instance, "\0" is an invalid quoted string.
-
-	// Avoid allocation in trivial cases.
-	simple := true
-	for _, r := range s {
-		if r == '\\' || r == quote {
-			simple = false
-			break
-		}
-	}
-	if simple {
-		return s, nil
-	}
-
-	buf := make([]byte, 0, 3*len(s)/2)
-	for len(s) > 0 {
-		r, n := utf8.DecodeRuneInString(s)
-		if r == utf8.RuneError && n == 1 {
-			return "", errBadUTF8
-		}
-		s = s[n:]
-		if r != '\\' {
-			if r < utf8.RuneSelf {
-				buf = append(buf, byte(r))
-			} else {
-				buf = append(buf, string(r)...)
-			}
-			continue
-		}
-
-		ch, tail, err := unescape(s)
-		if err != nil {
-			return "", err
-		}
-		buf = append(buf, ch...)
-		s = tail
-	}
-	return string(buf), nil
-}
-
-func unescape(s string) (ch string, tail string, err error) {
-	r, n := utf8.DecodeRuneInString(s)
-	if r == utf8.RuneError && n == 1 {
-		return "", "", errBadUTF8
-	}
-	s = s[n:]
-	switch r {
-	case 'a':
-		return "\a", s, nil
-	case 'b':
-		return "\b", s, nil
-	case 'f':
-		return "\f", s, nil
-	case 'n':
-		return "\n", s, nil
-	case 'r':
-		return "\r", s, nil
-	case 't':
-		return "\t", s, nil
-	case 'v':
-		return "\v", s, nil
-	case '?':
-		return "?", s, nil // trigraph workaround
-	case '\'', '"', '\\':
-		return string(r), s, nil
-	case '0', '1', '2', '3', '4', '5', '6', '7':
-		if len(s) < 2 {
-			return "", "", fmt.Errorf(`\%c requires 2 following digits`, r)
-		}
-		ss := string(r) + s[:2]
-		s = s[2:]
-		i, err := strconv.ParseUint(ss, 8, 8)
-		if err != nil {
-			return "", "", fmt.Errorf(`\%s contains non-octal digits`, ss)
-		}
-		return string([]byte{byte(i)}), s, nil
-	case 'x', 'X', 'u', 'U':
-		var n int
-		switch r {
-		case 'x', 'X':
-			n = 2
-		case 'u':
-			n = 4
-		case 'U':
-			n = 8
-		}
-		if len(s) < n {
-			return "", "", fmt.Errorf(`\%c requires %d following digits`, r, n)
-		}
-		ss := s[:n]
-		s = s[n:]
-		i, err := strconv.ParseUint(ss, 16, 64)
-		if err != nil {
-			return "", "", fmt.Errorf(`\%c%s contains non-hexadecimal digits`, r, ss)
-		}
-		if r == 'x' || r == 'X' {
-			return string([]byte{byte(i)}), s, nil
-		}
-		if i > utf8.MaxRune {
-			return "", "", fmt.Errorf(`\%c%s is not a valid Unicode code point`, r, ss)
-		}
-		return string(i), s, nil
-	}
-	return "", "", fmt.Errorf(`unknown escape \%c`, r)
-}
-
-// Back off the parser by one token. Can only be done between calls to next().
-// It makes the next advance() a no-op.
-func (p *textParser) back() { p.backed = true }
-
-// Advances the parser and returns the new current token.
-func (p *textParser) next() *token {
-	if p.backed || p.done {
-		p.backed = false
-		return &p.cur
-	}
-	p.advance()
-	if p.done {
-		p.cur.value = ""
-	} else if len(p.cur.value) > 0 && isQuote(p.cur.value[0]) {
-		// Look for multiple quoted strings separated by whitespace,
-		// and concatenate them.
-		cat := p.cur
-		for {
-			p.skipWhitespace()
-			if p.done || !isQuote(p.s[0]) {
-				break
-			}
-			p.advance()
-			if p.cur.err != nil {
-				return &p.cur
-			}
-			cat.value += " " + p.cur.value
-			cat.unquoted += p.cur.unquoted
-		}
-		p.done = false // parser may have seen EOF, but we want to return cat
-		p.cur = cat
-	}
-	return &p.cur
-}
-
-func (p *textParser) consumeToken(s string) error {
-	tok := p.next()
-	if tok.err != nil {
-		return tok.err
-	}
-	if tok.value != s {
-		p.back()
-		return p.errorf("expected %q, found %q", s, tok.value)
-	}
-	return nil
-}
-
-// Return a RequiredNotSetError indicating which required field was not set.
-func (p *textParser) missingRequiredFieldError(sv reflect.Value) *RequiredNotSetError {
-	st := sv.Type()
-	sprops := GetProperties(st)
-	for i := 0; i < st.NumField(); i++ {
-		if !isNil(sv.Field(i)) {
-			continue
-		}
-
-		props := sprops.Prop[i]
-		if props.Required {
-			return &RequiredNotSetError{fmt.Sprintf("%v.%v", st, props.OrigName)}
-		}
-	}
-	return &RequiredNotSetError{fmt.Sprintf("%v.<unknown field name>", st)} // should not happen
-}
-
-// Returns the index in the struct for the named field, as well as the parsed tag properties.
-func structFieldByName(sprops *StructProperties, name string) (int, *Properties, bool) {
-	i, ok := sprops.decoderOrigNames[name]
-	if ok {
-		return i, sprops.Prop[i], true
-	}
-	return -1, nil, false
-}
-
-// Consume a ':' from the input stream (if the next token is a colon),
-// returning an error if a colon is needed but not present.
-func (p *textParser) checkForColon(props *Properties, typ reflect.Type) *ParseError {
-	tok := p.next()
-	if tok.err != nil {
-		return tok.err
-	}
-	if tok.value != ":" {
-		// Colon is optional when the field is a group or message.
-		needColon := true
-		switch props.Wire {
-		case "group":
-			needColon = false
-		case "bytes":
-			// A "bytes" field is either a message, a string, or a repeated field;
-			// those three become *T, *string and []T respectively, so we can check for
-			// this field being a pointer to a non-string.
-			if typ.Kind() == reflect.Ptr {
-				// *T or *string
-				if typ.Elem().Kind() == reflect.String {
-					break
-				}
-			} else if typ.Kind() == reflect.Slice {
-				// []T or []*T
-				if typ.Elem().Kind() != reflect.Ptr {
-					break
-				}
-			} else if typ.Kind() == reflect.String {
-				// The proto3 exception is for a string field,
-				// which requires a colon.
-				break
-			}
-			needColon = false
-		}
-		if needColon {
-			return p.errorf("expected ':', found %q", tok.value)
-		}
-		p.back()
-	}
-	return nil
-}
-
-func (p *textParser) readStruct(sv reflect.Value, terminator string) error {
-	st := sv.Type()
-	sprops := GetProperties(st)
-	reqCount := sprops.reqCount
-	var reqFieldErr error
-	fieldSet := make(map[string]bool)
-	// A struct is a sequence of "name: value", terminated by one of
-	// '>' or '}', or the end of the input.  A name may also be
-	// "[extension]" or "[type/url]".
-	//
-	// The whole struct can also be an expanded Any message, like:
-	// [type/url] < ... struct contents ... >
-	for {
-		tok := p.next()
-		if tok.err != nil {
-			return tok.err
-		}
-		if tok.value == terminator {
-			break
-		}
-		if tok.value == "[" {
-			// Looks like an extension or an Any.
-			//
-			// TODO: Check whether we need to handle
-			// namespace rooted names (e.g. ".something.Foo").
-			extName, err := p.consumeExtName()
-			if err != nil {
-				return err
-			}
-
-			if s := strings.LastIndex(extName, "/"); s >= 0 {
-				// If it contains a slash, it's an Any type URL.
-				messageName := extName[s+1:]
-				mt := MessageType(messageName)
-				if mt == nil {
-					return p.errorf("unrecognized message %q in google.protobuf.Any", messageName)
-				}
-				tok = p.next()
-				if tok.err != nil {
-					return tok.err
-				}
-				// consume an optional colon
-				if tok.value == ":" {
-					tok = p.next()
-					if tok.err != nil {
-						return tok.err
-					}
-				}
-				var terminator string
-				switch tok.value {
-				case "<":
-					terminator = ">"
-				case "{":
-					terminator = "}"
-				default:
-					return p.errorf("expected '{' or '<', found %q", tok.value)
-				}
-				v := reflect.New(mt.Elem())
-				if pe := p.readStruct(v.Elem(), terminator); pe != nil {
-					return pe
-				}
-				b, err := Marshal(v.Interface().(Message))
-				if err != nil {
-					return p.errorf("failed to marshal message of type %q: %v", messageName, err)
-				}
-				if fieldSet["type_url"] {
-					return p.errorf(anyRepeatedlyUnpacked, "type_url")
-				}
-				if fieldSet["value"] {
-					return p.errorf(anyRepeatedlyUnpacked, "value")
-				}
-				sv.FieldByName("TypeUrl").SetString(extName)
-				sv.FieldByName("Value").SetBytes(b)
-				fieldSet["type_url"] = true
-				fieldSet["value"] = true
-				continue
-			}
-
-			var desc *ExtensionDesc
-			// This could be faster, but it's functional.
-			// TODO: Do something smarter than a linear scan.
-			for _, d := range RegisteredExtensions(reflect.New(st).Interface().(Message)) {
-				if d.Name == extName {
-					desc = d
-					break
-				}
-			}
-			if desc == nil {
-				return p.errorf("unrecognized extension %q", extName)
-			}
-
-			props := &Properties{}
-			props.Parse(desc.Tag)
-
-			typ := reflect.TypeOf(desc.ExtensionType)
-			if err := p.checkForColon(props, typ); err != nil {
-				return err
-			}
-
-			rep := desc.repeated()
-
-			// Read the extension structure, and set it in
-			// the value we're constructing.
-			var ext reflect.Value
-			if !rep {
-				ext = reflect.New(typ).Elem()
-			} else {
-				ext = reflect.New(typ.Elem()).Elem()
-			}
-			if err := p.readAny(ext, props); err != nil {
-				if _, ok := err.(*RequiredNotSetError); !ok {
-					return err
-				}
-				reqFieldErr = err
-			}
-			ep := sv.Addr().Interface().(Message)
-			if !rep {
-				SetExtension(ep, desc, ext.Interface())
-			} else {
-				old, err := GetExtension(ep, desc)
-				var sl reflect.Value
-				if err == nil {
-					sl = reflect.ValueOf(old) // existing slice
-				} else {
-					sl = reflect.MakeSlice(typ, 0, 1)
-				}
-				sl = reflect.Append(sl, ext)
-				SetExtension(ep, desc, sl.Interface())
-			}
-			if err := p.consumeOptionalSeparator(); err != nil {
-				return err
-			}
-			continue
-		}
-
-		// This is a normal, non-extension field.
-		name := tok.value
-		var dst reflect.Value
-		fi, props, ok := structFieldByName(sprops, name)
-		if ok {
-			dst = sv.Field(fi)
-		} else if oop, ok := sprops.OneofTypes[name]; ok {
-			// It is a oneof.
-			props = oop.Prop
-			nv := reflect.New(oop.Type.Elem())
-			dst = nv.Elem().Field(0)
-			field := sv.Field(oop.Field)
-			if !field.IsNil() {
-				return p.errorf("field '%s' would overwrite already parsed oneof '%s'", name, sv.Type().Field(oop.Field).Name)
-			}
-			field.Set(nv)
-		}
-		if !dst.IsValid() {
-			return p.errorf("unknown field name %q in %v", name, st)
-		}
-
-		if dst.Kind() == reflect.Map {
-			// Consume any colon.
-			if err := p.checkForColon(props, dst.Type()); err != nil {
-				return err
-			}
-
-			// Construct the map if it doesn't already exist.
-			if dst.IsNil() {
-				dst.Set(reflect.MakeMap(dst.Type()))
-			}
-			key := reflect.New(dst.Type().Key()).Elem()
-			val := reflect.New(dst.Type().Elem()).Elem()
-
-			// The map entry should be this sequence of tokens:
-			//	< key : KEY value : VALUE >
-			// However, implementations may omit key or value, and technically
-			// we should support them in any order.  See b/28924776 for a time
-			// this went wrong.
-
-			tok := p.next()
-			var terminator string
-			switch tok.value {
-			case "<":
-				terminator = ">"
-			case "{":
-				terminator = "}"
-			default:
-				return p.errorf("expected '{' or '<', found %q", tok.value)
-			}
-			for {
-				tok := p.next()
-				if tok.err != nil {
-					return tok.err
-				}
-				if tok.value == terminator {
-					break
-				}
-				switch tok.value {
-				case "key":
-					if err := p.consumeToken(":"); err != nil {
-						return err
-					}
-					if err := p.readAny(key, props.MapKeyProp); err != nil {
-						return err
-					}
-					if err := p.consumeOptionalSeparator(); err != nil {
-						return err
-					}
-				case "value":
-					if err := p.checkForColon(props.MapValProp, dst.Type().Elem()); err != nil {
-						return err
-					}
-					if err := p.readAny(val, props.MapValProp); err != nil {
-						return err
-					}
-					if err := p.consumeOptionalSeparator(); err != nil {
-						return err
-					}
-				default:
-					p.back()
-					return p.errorf(`expected "key", "value", or %q, found %q`, terminator, tok.value)
-				}
-			}
-
-			dst.SetMapIndex(key, val)
-			continue
-		}
-
-		// Check that it's not already set if it's not a repeated field.
-		if !props.Repeated && fieldSet[name] {
-			return p.errorf("non-repeated field %q was repeated", name)
-		}
-
-		if err := p.checkForColon(props, dst.Type()); err != nil {
-			return err
-		}
-
-		// Parse into the field.
-		fieldSet[name] = true
-		if err := p.readAny(dst, props); err != nil {
-			if _, ok := err.(*RequiredNotSetError); !ok {
-				return err
-			}
-			reqFieldErr = err
-		}
-		if props.Required {
-			reqCount--
-		}
-
-		if err := p.consumeOptionalSeparator(); err != nil {
-			return err
-		}
-
-	}
-
-	if reqCount > 0 {
-		return p.missingRequiredFieldError(sv)
-	}
-	return reqFieldErr
-}
-
-// consumeExtName consumes extension name or expanded Any type URL and the
-// following ']'. It returns the name or URL consumed.
-func (p *textParser) consumeExtName() (string, error) {
-	tok := p.next()
-	if tok.err != nil {
-		return "", tok.err
-	}
-
-	// If extension name or type url is quoted, it's a single token.
-	if len(tok.value) > 2 && isQuote(tok.value[0]) && tok.value[len(tok.value)-1] == tok.value[0] {
-		name, err := unquoteC(tok.value[1:len(tok.value)-1], rune(tok.value[0]))
-		if err != nil {
-			return "", err
-		}
-		return name, p.consumeToken("]")
-	}
-
-	// Consume everything up to "]"
-	var parts []string
-	for tok.value != "]" {
-		parts = append(parts, tok.value)
-		tok = p.next()
-		if tok.err != nil {
-			return "", p.errorf("unrecognized type_url or extension name: %s", tok.err)
-		}
-		if p.done && tok.value != "]" {
-			return "", p.errorf("unclosed type_url or extension name")
-		}
-	}
-	return strings.Join(parts, ""), nil
-}
-
-// consumeOptionalSeparator consumes an optional semicolon or comma.
-// It is used in readStruct to provide backward compatibility.
-func (p *textParser) consumeOptionalSeparator() error {
-	tok := p.next()
-	if tok.err != nil {
-		return tok.err
-	}
-	if tok.value != ";" && tok.value != "," {
-		p.back()
-	}
-	return nil
-}
-
-func (p *textParser) readAny(v reflect.Value, props *Properties) error {
-	tok := p.next()
-	if tok.err != nil {
-		return tok.err
-	}
-	if tok.value == "" {
-		return p.errorf("unexpected EOF")
-	}
-
-	switch fv := v; fv.Kind() {
-	case reflect.Slice:
-		at := v.Type()
-		if at.Elem().Kind() == reflect.Uint8 {
-			// Special case for []byte
-			if tok.value[0] != '"' && tok.value[0] != '\'' {
-				// Deliberately written out here, as the error after
-				// this switch statement would write "invalid []byte: ...",
-				// which is not as user-friendly.
-				return p.errorf("invalid string: %v", tok.value)
-			}
-			bytes := []byte(tok.unquoted)
-			fv.Set(reflect.ValueOf(bytes))
-			return nil
-		}
-		// Repeated field.
-		if tok.value == "[" {
-			// Repeated field with list notation, like [1,2,3].
-			for {
-				fv.Set(reflect.Append(fv, reflect.New(at.Elem()).Elem()))
-				err := p.readAny(fv.Index(fv.Len()-1), props)
-				if err != nil {
-					return err
-				}
-				tok := p.next()
-				if tok.err != nil {
-					return tok.err
-				}
-				if tok.value == "]" {
-					break
-				}
-				if tok.value != "," {
-					return p.errorf("Expected ']' or ',' found %q", tok.value)
-				}
-			}
-			return nil
-		}
-		// One value of the repeated field.
-		p.back()
-		fv.Set(reflect.Append(fv, reflect.New(at.Elem()).Elem()))
-		return p.readAny(fv.Index(fv.Len()-1), props)
-	case reflect.Bool:
-		// true/1/t/True or false/f/0/False.
-		switch tok.value {
-		case "true", "1", "t", "True":
-			fv.SetBool(true)
-			return nil
-		case "false", "0", "f", "False":
-			fv.SetBool(false)
-			return nil
-		}
-	case reflect.Float32, reflect.Float64:
-		v := tok.value
-		// Ignore 'f' for compatibility with output generated by C++, but don't
-		// remove 'f' when the value is "-inf" or "inf".
-		if strings.HasSuffix(v, "f") && tok.value != "-inf" && tok.value != "inf" {
-			v = v[:len(v)-1]
-		}
-		if f, err := strconv.ParseFloat(v, fv.Type().Bits()); err == nil {
-			fv.SetFloat(f)
-			return nil
-		}
-	case reflect.Int32:
-		if x, err := strconv.ParseInt(tok.value, 0, 32); err == nil {
-			fv.SetInt(x)
-			return nil
-		}
-
-		if len(props.Enum) == 0 {
-			break
-		}
-		m, ok := enumValueMaps[props.Enum]
-		if !ok {
-			break
-		}
-		x, ok := m[tok.value]
-		if !ok {
-			break
-		}
-		fv.SetInt(int64(x))
-		return nil
-	case reflect.Int64:
-		if x, err := strconv.ParseInt(tok.value, 0, 64); err == nil {
-			fv.SetInt(x)
-			return nil
-		}
-
-	case reflect.Ptr:
-		// A basic field (indirected through pointer), or a repeated message/group
-		p.back()
-		fv.Set(reflect.New(fv.Type().Elem()))
-		return p.readAny(fv.Elem(), props)
-	case reflect.String:
-		if tok.value[0] == '"' || tok.value[0] == '\'' {
-			fv.SetString(tok.unquoted)
-			return nil
-		}
-	case reflect.Struct:
-		var terminator string
-		switch tok.value {
-		case "{":
-			terminator = "}"
-		case "<":
-			terminator = ">"
-		default:
-			return p.errorf("expected '{' or '<', found %q", tok.value)
-		}
-		// TODO: Handle nested messages which implement encoding.TextUnmarshaler.
-		return p.readStruct(fv, terminator)
-	case reflect.Uint32:
-		if x, err := strconv.ParseUint(tok.value, 0, 32); err == nil {
-			fv.SetUint(uint64(x))
-			return nil
-		}
-	case reflect.Uint64:
-		if x, err := strconv.ParseUint(tok.value, 0, 64); err == nil {
-			fv.SetUint(x)
-			return nil
-		}
-	}
-	return p.errorf("invalid %v: %v", v.Type(), tok.value)
-}
-
-// UnmarshalText reads a protocol buffer in Text format. UnmarshalText resets pb
-// before starting to unmarshal, so any existing data in pb is always removed.
-// If a required field is not set and no other error occurs,
-// UnmarshalText returns *RequiredNotSetError.
-func UnmarshalText(s string, pb Message) error {
-	if um, ok := pb.(encoding.TextUnmarshaler); ok {
-		return um.UnmarshalText([]byte(s))
-	}
-	pb.Reset()
-	v := reflect.ValueOf(pb)
-	return newTextParser(s).readStruct(v.Elem(), "")
-}
diff --git a/vendor/github.com/golang/protobuf/proto/wire.go b/vendor/github.com/golang/protobuf/proto/wire.go
new file mode 100644
index 0000000..d7c28da
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/wire.go
@@ -0,0 +1,78 @@
+// 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 proto
+
+import (
+	protoV2 "google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// Size returns the size in bytes of the wire-format encoding of m.
+func Size(m Message) int {
+	if m == nil {
+		return 0
+	}
+	mi := MessageV2(m)
+	return protoV2.Size(mi)
+}
+
+// Marshal returns the wire-format encoding of m.
+func Marshal(m Message) ([]byte, error) {
+	b, err := marshalAppend(nil, m, false)
+	if b == nil {
+		b = zeroBytes
+	}
+	return b, err
+}
+
+var zeroBytes = make([]byte, 0, 0)
+
+func marshalAppend(buf []byte, m Message, deterministic bool) ([]byte, error) {
+	if m == nil {
+		return nil, ErrNil
+	}
+	mi := MessageV2(m)
+	nbuf, err := protoV2.MarshalOptions{
+		Deterministic: deterministic,
+		AllowPartial:  true,
+	}.MarshalAppend(buf, mi)
+	if err != nil {
+		return buf, err
+	}
+	if len(buf) == len(nbuf) {
+		if !mi.ProtoReflect().IsValid() {
+			return buf, ErrNil
+		}
+	}
+	return nbuf, checkRequiredNotSet(mi)
+}
+
+// Unmarshal parses a wire-format message in b and places the decoded results in m.
+//
+// Unmarshal resets m before starting to unmarshal, so any existing data in m is always
+// removed. Use UnmarshalMerge to preserve and append to existing data.
+func Unmarshal(b []byte, m Message) error {
+	m.Reset()
+	return UnmarshalMerge(b, m)
+}
+
+// UnmarshalMerge parses a wire-format message in b and places the decoded results in m.
+func UnmarshalMerge(b []byte, m Message) error {
+	mi := MessageV2(m)
+	out, err := protoV2.UnmarshalOptions{
+		AllowPartial: true,
+		Merge:        true,
+	}.UnmarshalState(protoiface.UnmarshalInput{
+		Buf:     b,
+		Message: mi.ProtoReflect(),
+	})
+	if err != nil {
+		return err
+	}
+	if out.Flags&protoiface.UnmarshalInitialized > 0 {
+		return nil
+	}
+	return checkRequiredNotSet(mi)
+}
diff --git a/vendor/github.com/golang/protobuf/proto/wrappers.go b/vendor/github.com/golang/protobuf/proto/wrappers.go
new file mode 100644
index 0000000..398e348
--- /dev/null
+++ b/vendor/github.com/golang/protobuf/proto/wrappers.go
@@ -0,0 +1,34 @@
+// 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 proto
+
+// Bool stores v in a new bool value and returns a pointer to it.
+func Bool(v bool) *bool { return &v }
+
+// Int stores v in a new int32 value and returns a pointer to it.
+//
+// Deprecated: Use Int32 instead.
+func Int(v int) *int32 { return Int32(int32(v)) }
+
+// Int32 stores v in a new int32 value and returns a pointer to it.
+func Int32(v int32) *int32 { return &v }
+
+// Int64 stores v in a new int64 value and returns a pointer to it.
+func Int64(v int64) *int64 { return &v }
+
+// Uint32 stores v in a new uint32 value and returns a pointer to it.
+func Uint32(v uint32) *uint32 { return &v }
+
+// Uint64 stores v in a new uint64 value and returns a pointer to it.
+func Uint64(v uint64) *uint64 { return &v }
+
+// Float32 stores v in a new float32 value and returns a pointer to it.
+func Float32(v float32) *float32 { return &v }
+
+// Float64 stores v in a new float64 value and returns a pointer to it.
+func Float64(v float64) *float64 { return &v }
+
+// String stores v in a new string value and returns a pointer to it.
+func String(v string) *string { return &v }
diff --git a/vendor/github.com/philhofer/fwd/reader.go b/vendor/github.com/philhofer/fwd/reader.go
index 75be62a..72cc112 100644
--- a/vendor/github.com/philhofer/fwd/reader.go
+++ b/vendor/github.com/philhofer/fwd/reader.go
@@ -34,7 +34,10 @@
 //
 package fwd
 
-import "io"
+import (
+	"io"
+	"os"
+)
 
 const (
 	// DefaultReaderSize is the default size of the read buffer
@@ -50,11 +53,24 @@ func NewReader(r io.Reader) *Reader {
 }
 
 // NewReaderSize returns a new *Reader that
-// reads from 'r' and has a buffer size 'n'
+// reads from 'r' and has a buffer size 'n'.
 func NewReaderSize(r io.Reader, n int) *Reader {
+	buf := make([]byte, 0, max(n, minReaderSize))
+	return NewReaderBuf(r, buf)
+}
+
+// NewReaderBuf returns a new *Reader that
+// reads from 'r' and uses 'buf' as a buffer.
+// 'buf' is not used when has smaller capacity than 16,
+// custom buffer is allocated instead.
+func NewReaderBuf(r io.Reader, buf []byte) *Reader {
+	if cap(buf) < minReaderSize {
+		buf = make([]byte, 0, minReaderSize)
+	}
+	buf = buf[:0]
 	rd := &Reader{
 		r:    r,
-		data: make([]byte, 0, max(minReaderSize, n)),
+		data: buf,
 	}
 	if s, ok := r.(io.Seeker); ok {
 		rd.rs = s
@@ -174,6 +190,19 @@ func (r *Reader) Peek(n int) ([]byte, error) {
 	return r.data[r.n : r.n+n], nil
 }
 
+// discard(n) discards up to 'n' buffered bytes, and
+// and returns the number of bytes discarded
+func (r *Reader) discard(n int) int {
+	inbuf := r.buffered()
+	if inbuf <= n {
+		r.n = 0
+		r.data = r.data[:0]
+		return inbuf
+	}
+	r.n += n
+	return n
+}
+
 // Skip moves the reader forward 'n' bytes.
 // Returns the number of bytes skipped and any
 // errors encountered. It is analogous to Seek(n, 1).
@@ -188,33 +217,25 @@ func (r *Reader) Peek(n int) ([]byte, error) {
 // will not return `io.EOF` until the next call
 // to Read.)
 func (r *Reader) Skip(n int) (int, error) {
-
-	// fast path
-	if r.buffered() >= n {
-		r.n += n
-		return n, nil
+	if n < 0 {
+		return 0, os.ErrInvalid
 	}
 
-	// use seeker implementation
-	// if we can
-	if r.rs != nil {
-		return r.skipSeek(n)
-	}
+	// discard some or all of the current buffer
+	skipped := r.discard(n)
 
-	// loop on filling
-	// and then erasing
-	o := n
-	for r.buffered() < n && r.state == nil {
+	// if we can Seek() through the remaining bytes, do that
+	if n > skipped && r.rs != nil {
+		nn, err := r.rs.Seek(int64(n-skipped), 1)
+		return int(nn) + skipped, err
+	}
+	// otherwise, keep filling the buffer
+	// and discarding it up to 'n'
+	for skipped < n && r.state == nil {
 		r.more()
-		// we can skip forward
-		// up to r.buffered() bytes
-		step := min(r.buffered(), n)
-		r.n += step
-		n -= step
+		skipped += r.discard(n - skipped)
 	}
-	// at this point, n should be
-	// 0 if everything went smoothly
-	return o - n, r.noEOF()
+	return skipped, r.noEOF()
 }
 
 // Next returns the next 'n' bytes in the stream.
@@ -249,20 +270,6 @@ func (r *Reader) Next(n int) ([]byte, error) {
 	return out, nil
 }
 
-// skipSeek uses the io.Seeker to seek forward.
-// only call this function when n > r.buffered()
-func (r *Reader) skipSeek(n int) (int, error) {
-	o := r.buffered()
-	// first, clear buffer
-	n -= o
-	r.n = 0
-	r.data = r.data[:0]
-
-	// then seek forward remaning bytes
-	i, err := r.rs.Seek(int64(n), 1)
-	return int(i) + o, err
-}
-
 // Read implements `io.Reader`
 func (r *Reader) Read(b []byte) (int, error) {
 	// if we have data in the buffer, just
@@ -368,13 +375,6 @@ func (r *Reader) WriteTo(w io.Writer) (int64, error) {
 	return i, nil
 }
 
-func min(a int, b int) int {
-	if a < b {
-		return a
-	}
-	return b
-}
-
 func max(a int, b int) int {
 	if a < b {
 		return b
diff --git a/vendor/github.com/philhofer/fwd/writer.go b/vendor/github.com/philhofer/fwd/writer.go
index 2dc392a..4d6ea15 100644
--- a/vendor/github.com/philhofer/fwd/writer.go
+++ b/vendor/github.com/philhofer/fwd/writer.go
@@ -29,16 +29,28 @@ func NewWriter(w io.Writer) *Writer {
 	}
 }
 
-// NewWriterSize returns a new writer
-// that writes to 'w' and has a buffer
-// that is 'size' bytes.
-func NewWriterSize(w io.Writer, size int) *Writer {
-	if wr, ok := w.(*Writer); ok && cap(wr.buf) >= size {
+// NewWriterSize returns a new writer that
+// writes to 'w' and has a buffer size 'n'.
+func NewWriterSize(w io.Writer, n int) *Writer {
+	if wr, ok := w.(*Writer); ok && cap(wr.buf) >= n {
 		return wr
 	}
+	buf := make([]byte, 0, max(n, minWriterSize))
+	return NewWriterBuf(w, buf)
+}
+
+// NewWriterBuf returns a new writer
+// that writes to 'w' and has 'buf' as a buffer.
+// 'buf' is not used when has smaller capacity than 18,
+// custom buffer is allocated instead.
+func NewWriterBuf(w io.Writer, buf []byte) *Writer {
+	if cap(buf) < minWriterSize {
+		buf = make([]byte, 0, minWriterSize)
+	}
+	buf = buf[:0]
 	return &Writer{
 		w:   w,
-		buf: make([]byte, 0, max(size, minWriterSize)),
+		buf: buf,
 	}
 }
 
diff --git a/vendor/github.com/tinylib/msgp/msgp/errors.go b/vendor/github.com/tinylib/msgp/msgp/errors.go
index cc78a98..921e855 100644
--- a/vendor/github.com/tinylib/msgp/msgp/errors.go
+++ b/vendor/github.com/tinylib/msgp/msgp/errors.go
@@ -123,6 +123,9 @@ func (e errWrapped) Resumable() bool {
 	return resumableDefault
 }
 
+// Unwrap returns the cause.
+func (e errWrapped) Unwrap() error { return e.cause }
+
 type errShort struct{}
 
 func (e errShort) Error() string   { return "msgp: too few bytes left to read object" }
diff --git a/vendor/github.com/tinylib/msgp/msgp/json.go b/vendor/github.com/tinylib/msgp/msgp/json.go
index 4325860..0e11e60 100644
--- a/vendor/github.com/tinylib/msgp/msgp/json.go
+++ b/vendor/github.com/tinylib/msgp/msgp/json.go
@@ -206,7 +206,7 @@ func rwFloat32(dst jsWriter, src *Reader) (int, error) {
 	if err != nil {
 		return 0, err
 	}
-	src.scratch = strconv.AppendFloat(src.scratch[:0], float64(f), 'f', -1, 64)
+	src.scratch = strconv.AppendFloat(src.scratch[:0], float64(f), 'f', -1, 32)
 	return dst.Write(src.scratch)
 }
 
@@ -215,7 +215,7 @@ func rwFloat64(dst jsWriter, src *Reader) (int, error) {
 	if err != nil {
 		return 0, err
 	}
-	src.scratch = strconv.AppendFloat(src.scratch[:0], f, 'f', -1, 32)
+	src.scratch = strconv.AppendFloat(src.scratch[:0], f, 'f', -1, 64)
 	return dst.Write(src.scratch)
 }
 
@@ -466,7 +466,23 @@ func rwquoted(dst jsWriter, s []byte) (n int, err error) {
 					return
 				}
 				n++
+			case '\t':
+				err = dst.WriteByte('\\')
+				if err != nil {
+					return
+				}
+				n++
+				err = dst.WriteByte('t')
+				if err != nil {
+					return
+				}
+				n++
 			default:
+				// This encodes bytes < 0x20 except for \t, \n and \r.
+				// It also escapes <, >, and &
+				// because they can lead to security holes when
+				// user-controlled strings are rendered into JSON
+				// and served to some browsers.
 				nn, err = dst.WriteString(`\u00`)
 				n += nn
 				if err != nil {
@@ -495,16 +511,23 @@ func rwquoted(dst jsWriter, s []byte) (n int, err error) {
 				if err != nil {
 					return
 				}
-				nn, err = dst.WriteString(`\ufffd`)
-				n += nn
-				if err != nil {
-					return
-				}
-				i += size
-				start = i
-				continue
 			}
+			nn, err = dst.WriteString(`\ufffd`)
+			n += nn
+			if err != nil {
+				return
+			}
+			i += size
+			start = i
+			continue
 		}
+		// U+2028 is LINE SEPARATOR.
+		// U+2029 is PARAGRAPH SEPARATOR.
+		// They are both technically valid characters in JSON strings,
+		// but don't work in JSONP, which has to be evaluated as JavaScript,
+		// and can lead to security holes there. It is valid JSON to
+		// escape them, so we do so unconditionally.
+		// See http://timelessrepo.com/json-isnt-a-javascript-subset for discussion.
 		if c == '\u2028' || c == '\u2029' {
 			if start < i {
 				nn, err = dst.Write(s[start:i])
@@ -512,17 +535,20 @@ func rwquoted(dst jsWriter, s []byte) (n int, err error) {
 				if err != nil {
 					return
 				}
-				nn, err = dst.WriteString(`\u202`)
-				n += nn
-				if err != nil {
-					return
-				}
-				err = dst.WriteByte(hex[c&0xF])
-				if err != nil {
-					return
-				}
-				n++
 			}
+			nn, err = dst.WriteString(`\u202`)
+			n += nn
+			if err != nil {
+				return
+			}
+			err = dst.WriteByte(hex[c&0xF])
+			if err != nil {
+				return
+			}
+			n++
+			i += size
+			start = i
+			continue
 		}
 		i += size
 	}
diff --git a/vendor/github.com/tinylib/msgp/msgp/read.go b/vendor/github.com/tinylib/msgp/msgp/read.go
index aa668c5..fe2de9e 100644
--- a/vendor/github.com/tinylib/msgp/msgp/read.go
+++ b/vendor/github.com/tinylib/msgp/msgp/read.go
@@ -126,6 +126,11 @@ func NewReaderSize(r io.Reader, sz int) *Reader {
 	return &Reader{R: fwd.NewReaderSize(r, sz)}
 }
 
+// NewReaderBuf returns a *Reader with a provided buffer.
+func NewReaderBuf(r io.Reader, buf []byte) *Reader {
+	return &Reader{R: fwd.NewReaderBuf(r, buf)}
+}
+
 // Reader wraps an io.Reader and provides
 // methods to read MessagePack-encoded values
 // from it. Readers are buffered.
diff --git a/vendor/github.com/tinylib/msgp/msgp/unsafe.go b/vendor/github.com/tinylib/msgp/msgp/unsafe.go
index 3978b6f..d9fb353 100644
--- a/vendor/github.com/tinylib/msgp/msgp/unsafe.go
+++ b/vendor/github.com/tinylib/msgp/msgp/unsafe.go
@@ -3,7 +3,6 @@
 package msgp
 
 import (
-	"reflect"
 	"unsafe"
 )
 
@@ -24,18 +23,14 @@ const (
 // THIS IS EVIL CODE.
 // YOU HAVE BEEN WARNED.
 func UnsafeString(b []byte) string {
-	sh := (*reflect.SliceHeader)(unsafe.Pointer(&b))
-	return *(*string)(unsafe.Pointer(&reflect.StringHeader{Data: sh.Data, Len: sh.Len}))
+	return *(*string)(unsafe.Pointer(&b))
 }
 
 // UnsafeBytes returns the string as a byte slice
-// THIS SHOULD ONLY BE USED BY THE CODE GENERATOR.
-// THIS IS EVIL CODE.
-// YOU HAVE BEEN WARNED.
+//
+// Deprecated:
+// Since this code is no longer used by the code generator,
+// UnsafeBytes(s) is precisely equivalent to []byte(s)
 func UnsafeBytes(s string) []byte {
-	return *(*[]byte)(unsafe.Pointer(&reflect.SliceHeader{
-		Len:  len(s),
-		Cap:  len(s),
-		Data: (*(*reflect.StringHeader)(unsafe.Pointer(&s))).Data,
-	}))
+	return []byte(s)
 }
diff --git a/vendor/github.com/tinylib/msgp/msgp/write.go b/vendor/github.com/tinylib/msgp/msgp/write.go
index fb1947c..407ec1f 100644
--- a/vendor/github.com/tinylib/msgp/msgp/write.go
+++ b/vendor/github.com/tinylib/msgp/msgp/write.go
@@ -10,6 +10,11 @@ import (
 	"time"
 )
 
+const (
+	// min buffer size for the writer
+	minWriterSize = 18
+)
+
 // Sizer is an interface implemented
 // by types that can estimate their
 // size when MessagePack encoded.
@@ -120,16 +125,27 @@ func NewWriter(w io.Writer) *Writer {
 
 // NewWriterSize returns a writer with a custom buffer size.
 func NewWriterSize(w io.Writer, sz int) *Writer {
-	// we must be able to require() 18
+	// we must be able to require() 'minWriterSize'
 	// contiguous bytes, so that is the
 	// practical minimum buffer size
-	if sz < 18 {
-		sz = 18
+	if sz < minWriterSize {
+		sz = minWriterSize
 	}
+	buf := make([]byte, sz)
+	return NewWriterBuf(w, buf)
+}
 
+// NewWriterBuf returns a writer with a provided buffer.
+// 'buf' is not used when the capacity is smaller than 18,
+// custom buffer is allocated instead.
+func NewWriterBuf(w io.Writer, buf []byte) *Writer {
+	if cap(buf) < minWriterSize {
+		buf = make([]byte, minWriterSize)
+	}
+	buf = buf[:cap(buf)]
 	return &Writer{
 		w:   w,
-		buf: make([]byte, sz),
+		buf: buf,
 	}
 }
 
diff --git a/vendor/golang.org/x/net/html/const.go b/vendor/golang.org/x/net/html/const.go
index a3a918f..ff7acf2 100644
--- a/vendor/golang.org/x/net/html/const.go
+++ b/vendor/golang.org/x/net/html/const.go
@@ -52,8 +52,7 @@ var isSpecialElementMap = map[string]bool{
 	"iframe":     true,
 	"img":        true,
 	"input":      true,
-	"isindex":    true, // The 'isindex' element has been removed, but keep it for backwards compatibility.
-	"keygen":     true,
+	"keygen":     true, // "keygen" has been removed from the spec, but are kept here for backwards compatibility.
 	"li":         true,
 	"link":       true,
 	"listing":    true,
diff --git a/vendor/golang.org/x/net/html/foreign.go b/vendor/golang.org/x/net/html/foreign.go
index 01477a9..9da9e9d 100644
--- a/vendor/golang.org/x/net/html/foreign.go
+++ b/vendor/golang.org/x/net/html/foreign.go
@@ -161,66 +161,62 @@ var mathMLAttributeAdjustments = map[string]string{
 }
 
 var svgAttributeAdjustments = map[string]string{
-	"attributename":             "attributeName",
-	"attributetype":             "attributeType",
-	"basefrequency":             "baseFrequency",
-	"baseprofile":               "baseProfile",
-	"calcmode":                  "calcMode",
-	"clippathunits":             "clipPathUnits",
-	"contentscripttype":         "contentScriptType",
-	"contentstyletype":          "contentStyleType",
-	"diffuseconstant":           "diffuseConstant",
-	"edgemode":                  "edgeMode",
-	"externalresourcesrequired": "externalResourcesRequired",
-	"filterres":                 "filterRes",
-	"filterunits":               "filterUnits",
-	"glyphref":                  "glyphRef",
-	"gradienttransform":         "gradientTransform",
-	"gradientunits":             "gradientUnits",
-	"kernelmatrix":              "kernelMatrix",
-	"kernelunitlength":          "kernelUnitLength",
-	"keypoints":                 "keyPoints",
-	"keysplines":                "keySplines",
-	"keytimes":                  "keyTimes",
-	"lengthadjust":              "lengthAdjust",
-	"limitingconeangle":         "limitingConeAngle",
-	"markerheight":              "markerHeight",
-	"markerunits":               "markerUnits",
-	"markerwidth":               "markerWidth",
-	"maskcontentunits":          "maskContentUnits",
-	"maskunits":                 "maskUnits",
-	"numoctaves":                "numOctaves",
-	"pathlength":                "pathLength",
-	"patterncontentunits":       "patternContentUnits",
-	"patterntransform":          "patternTransform",
-	"patternunits":              "patternUnits",
-	"pointsatx":                 "pointsAtX",
-	"pointsaty":                 "pointsAtY",
-	"pointsatz":                 "pointsAtZ",
-	"preservealpha":             "preserveAlpha",
-	"preserveaspectratio":       "preserveAspectRatio",
-	"primitiveunits":            "primitiveUnits",
-	"refx":                      "refX",
-	"refy":                      "refY",
-	"repeatcount":               "repeatCount",
-	"repeatdur":                 "repeatDur",
-	"requiredextensions":        "requiredExtensions",
-	"requiredfeatures":          "requiredFeatures",
-	"specularconstant":          "specularConstant",
-	"specularexponent":          "specularExponent",
-	"spreadmethod":              "spreadMethod",
-	"startoffset":               "startOffset",
-	"stddeviation":              "stdDeviation",
-	"stitchtiles":               "stitchTiles",
-	"surfacescale":              "surfaceScale",
-	"systemlanguage":            "systemLanguage",
-	"tablevalues":               "tableValues",
-	"targetx":                   "targetX",
-	"targety":                   "targetY",
-	"textlength":                "textLength",
-	"viewbox":                   "viewBox",
-	"viewtarget":                "viewTarget",
-	"xchannelselector":          "xChannelSelector",
-	"ychannelselector":          "yChannelSelector",
-	"zoomandpan":                "zoomAndPan",
+	"attributename":       "attributeName",
+	"attributetype":       "attributeType",
+	"basefrequency":       "baseFrequency",
+	"baseprofile":         "baseProfile",
+	"calcmode":            "calcMode",
+	"clippathunits":       "clipPathUnits",
+	"diffuseconstant":     "diffuseConstant",
+	"edgemode":            "edgeMode",
+	"filterunits":         "filterUnits",
+	"glyphref":            "glyphRef",
+	"gradienttransform":   "gradientTransform",
+	"gradientunits":       "gradientUnits",
+	"kernelmatrix":        "kernelMatrix",
+	"kernelunitlength":    "kernelUnitLength",
+	"keypoints":           "keyPoints",
+	"keysplines":          "keySplines",
+	"keytimes":            "keyTimes",
+	"lengthadjust":        "lengthAdjust",
+	"limitingconeangle":   "limitingConeAngle",
+	"markerheight":        "markerHeight",
+	"markerunits":         "markerUnits",
+	"markerwidth":         "markerWidth",
+	"maskcontentunits":    "maskContentUnits",
+	"maskunits":           "maskUnits",
+	"numoctaves":          "numOctaves",
+	"pathlength":          "pathLength",
+	"patterncontentunits": "patternContentUnits",
+	"patterntransform":    "patternTransform",
+	"patternunits":        "patternUnits",
+	"pointsatx":           "pointsAtX",
+	"pointsaty":           "pointsAtY",
+	"pointsatz":           "pointsAtZ",
+	"preservealpha":       "preserveAlpha",
+	"preserveaspectratio": "preserveAspectRatio",
+	"primitiveunits":      "primitiveUnits",
+	"refx":                "refX",
+	"refy":                "refY",
+	"repeatcount":         "repeatCount",
+	"repeatdur":           "repeatDur",
+	"requiredextensions":  "requiredExtensions",
+	"requiredfeatures":    "requiredFeatures",
+	"specularconstant":    "specularConstant",
+	"specularexponent":    "specularExponent",
+	"spreadmethod":        "spreadMethod",
+	"startoffset":         "startOffset",
+	"stddeviation":        "stdDeviation",
+	"stitchtiles":         "stitchTiles",
+	"surfacescale":        "surfaceScale",
+	"systemlanguage":      "systemLanguage",
+	"tablevalues":         "tableValues",
+	"targetx":             "targetX",
+	"targety":             "targetY",
+	"textlength":          "textLength",
+	"viewbox":             "viewBox",
+	"viewtarget":          "viewTarget",
+	"xchannelselector":    "xChannelSelector",
+	"ychannelselector":    "yChannelSelector",
+	"zoomandpan":          "zoomAndPan",
 }
diff --git a/vendor/golang.org/x/net/html/node.go b/vendor/golang.org/x/net/html/node.go
index 633ee15..1350eef 100644
--- a/vendor/golang.org/x/net/html/node.go
+++ b/vendor/golang.org/x/net/html/node.go
@@ -18,6 +18,11 @@ const (
 	ElementNode
 	CommentNode
 	DoctypeNode
+	// RawNode nodes are not returned by the parser, but can be part of the
+	// Node tree passed to func Render to insert raw HTML (without escaping).
+	// If so, this package makes no guarantee that the rendered HTML is secure
+	// (from e.g. Cross Site Scripting attacks) or well-formed.
+	RawNode
 	scopeMarkerNode
 )
 
diff --git a/vendor/golang.org/x/net/html/parse.go b/vendor/golang.org/x/net/html/parse.go
index 1d3c198..2cd12fc 100644
--- a/vendor/golang.org/x/net/html/parse.go
+++ b/vendor/golang.org/x/net/html/parse.go
@@ -184,6 +184,17 @@ func (p *parser) clearStackToContext(s scope) {
 	}
 }
 
+// parseGenericRawTextElements implements the generic raw text element parsing
+// algorithm defined in 12.2.6.2.
+// https://html.spec.whatwg.org/multipage/parsing.html#parsing-elements-that-contain-only-text
+// TODO: Since both RAWTEXT and RCDATA states are treated as tokenizer's part
+// officially, need to make tokenizer consider both states.
+func (p *parser) parseGenericRawTextElement() {
+	p.addElement()
+	p.originalIM = p.im
+	p.im = textIM
+}
+
 // generateImpliedEndTags pops nodes off the stack of open elements as long as
 // the top node has a tag name of dd, dt, li, optgroup, option, p, rb, rp, rt or rtc.
 // If exceptions are specified, nodes with that name will not be popped off.
@@ -192,16 +203,17 @@ func (p *parser) generateImpliedEndTags(exceptions ...string) {
 loop:
 	for i = len(p.oe) - 1; i >= 0; i-- {
 		n := p.oe[i]
-		if n.Type == ElementNode {
-			switch n.DataAtom {
-			case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc:
-				for _, except := range exceptions {
-					if n.Data == except {
-						break loop
-					}
+		if n.Type != ElementNode {
+			break
+		}
+		switch n.DataAtom {
+		case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc:
+			for _, except := range exceptions {
+				if n.Data == except {
+					break loop
 				}
-				continue
 			}
+			continue
 		}
 		break
 	}
@@ -369,8 +381,7 @@ findIdenticalElements:
 // Section 12.2.4.3.
 func (p *parser) clearActiveFormattingElements() {
 	for {
-		n := p.afe.pop()
-		if len(p.afe) == 0 || n.Type == scopeMarkerNode {
+		if n := p.afe.pop(); len(p.afe) == 0 || n.Type == scopeMarkerNode {
 			return
 		}
 	}
@@ -625,16 +636,29 @@ func inHeadIM(p *parser) bool {
 		switch p.tok.DataAtom {
 		case a.Html:
 			return inBodyIM(p)
-		case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta:
+		case a.Base, a.Basefont, a.Bgsound, a.Link, a.Meta:
 			p.addElement()
 			p.oe.pop()
 			p.acknowledgeSelfClosingTag()
 			return true
-		case a.Script, a.Title, a.Noscript, a.Noframes, a.Style:
+		case a.Noscript:
+			if p.scripting {
+				p.parseGenericRawTextElement()
+				return true
+			}
+			p.addElement()
+			p.im = inHeadNoscriptIM
+			// Don't let the tokenizer go into raw text mode when scripting is disabled.
+			p.tokenizer.NextIsNotRawText()
+			return true
+		case a.Script, a.Title:
 			p.addElement()
 			p.setOriginalIM()
 			p.im = textIM
 			return true
+		case a.Noframes, a.Style:
+			p.parseGenericRawTextElement()
+			return true
 		case a.Head:
 			// Ignore the token.
 			return true
@@ -692,6 +716,49 @@ func inHeadIM(p *parser) bool {
 	return false
 }
 
+// 12.2.6.4.5.
+func inHeadNoscriptIM(p *parser) bool {
+	switch p.tok.Type {
+	case DoctypeToken:
+		// Ignore the token.
+		return true
+	case StartTagToken:
+		switch p.tok.DataAtom {
+		case a.Html:
+			return inBodyIM(p)
+		case a.Basefont, a.Bgsound, a.Link, a.Meta, a.Noframes, a.Style:
+			return inHeadIM(p)
+		case a.Head, a.Noscript:
+			// Ignore the token.
+			return true
+		}
+	case EndTagToken:
+		switch p.tok.DataAtom {
+		case a.Noscript, a.Br:
+		default:
+			// Ignore the token.
+			return true
+		}
+	case TextToken:
+		s := strings.TrimLeft(p.tok.Data, whitespace)
+		if len(s) == 0 {
+			// It was all whitespace.
+			return inHeadIM(p)
+		}
+	case CommentToken:
+		return inHeadIM(p)
+	}
+	p.oe.pop()
+	if p.top().DataAtom != a.Head {
+		panic("html: the new current node will be a head element.")
+	}
+	p.im = inHeadIM
+	if p.tok.DataAtom == a.Noscript {
+		return true
+	}
+	return false
+}
+
 // Section 12.2.6.4.6.
 func afterHeadIM(p *parser) bool {
 	switch p.tok.Type {
@@ -803,7 +870,7 @@ func inBodyIM(p *parser) bool {
 				return true
 			}
 			copyAttributes(p.oe[0], p.tok)
-		case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Template, a.Title:
+		case a.Base, a.Basefont, a.Bgsound, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Template, a.Title:
 			return inHeadIM(p)
 		case a.Body:
 			if p.oe.contains(a.Template) {
@@ -829,7 +896,7 @@ func inBodyIM(p *parser) bool {
 			p.addElement()
 			p.im = inFramesetIM
 			return true
-		case a.Address, a.Article, a.Aside, a.Blockquote, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Menu, a.Nav, a.Ol, a.P, a.Section, a.Summary, a.Ul:
+		case a.Address, a.Article, a.Aside, a.Blockquote, a.Center, a.Details, a.Dialog, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Main, a.Menu, a.Nav, a.Ol, a.P, a.Section, a.Summary, a.Ul:
 			p.popUntil(buttonScope, a.P)
 			p.addElement()
 		case a.H1, a.H2, a.H3, a.H4, a.H5, a.H6:
@@ -962,53 +1029,6 @@ func inBodyIM(p *parser) bool {
 			p.tok.DataAtom = a.Img
 			p.tok.Data = a.Img.String()
 			return false
-		case a.Isindex:
-			if p.form != nil {
-				// Ignore the token.
-				return true
-			}
-			action := ""
-			prompt := "This is a searchable index. Enter search keywords: "
-			attr := []Attribute{{Key: "name", Val: "isindex"}}
-			for _, t := range p.tok.Attr {
-				switch t.Key {
-				case "action":
-					action = t.Val
-				case "name":
-					// Ignore the attribute.
-				case "prompt":
-					prompt = t.Val
-				default:
-					attr = append(attr, t)
-				}
-			}
-			p.acknowledgeSelfClosingTag()
-			p.popUntil(buttonScope, a.P)
-			p.parseImpliedToken(StartTagToken, a.Form, a.Form.String())
-			if p.form == nil {
-				// NOTE: The 'isindex' element has been removed,
-				// and the 'template' element has not been designed to be
-				// collaborative with the index element.
-				//
-				// Ignore the token.
-				return true
-			}
-			if action != "" {
-				p.form.Attr = []Attribute{{Key: "action", Val: action}}
-			}
-			p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String())
-			p.parseImpliedToken(StartTagToken, a.Label, a.Label.String())
-			p.addText(prompt)
-			p.addChild(&Node{
-				Type:     ElementNode,
-				DataAtom: a.Input,
-				Data:     a.Input.String(),
-				Attr:     attr,
-			})
-			p.oe.pop()
-			p.parseImpliedToken(EndTagToken, a.Label, a.Label.String())
-			p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String())
-			p.parseImpliedToken(EndTagToken, a.Form, a.Form.String())
 		case a.Textarea:
 			p.addElement()
 			p.setOriginalIM()
@@ -1018,18 +1038,21 @@ func inBodyIM(p *parser) bool {
 			p.popUntil(buttonScope, a.P)
 			p.reconstructActiveFormattingElements()
 			p.framesetOK = false
-			p.addElement()
-			p.setOriginalIM()
-			p.im = textIM
+			p.parseGenericRawTextElement()
 		case a.Iframe:
 			p.framesetOK = false
+			p.parseGenericRawTextElement()
+		case a.Noembed:
+			p.parseGenericRawTextElement()
+		case a.Noscript:
+			if p.scripting {
+				p.parseGenericRawTextElement()
+				return true
+			}
+			p.reconstructActiveFormattingElements()
 			p.addElement()
-			p.setOriginalIM()
-			p.im = textIM
-		case a.Noembed, a.Noscript:
-			p.addElement()
-			p.setOriginalIM()
-			p.im = textIM
+			// Don't let the tokenizer go into raw text mode when scripting is disabled.
+			p.tokenizer.NextIsNotRawText()
 		case a.Select:
 			p.reconstructActiveFormattingElements()
 			p.addElement()
@@ -1085,7 +1108,7 @@ func inBodyIM(p *parser) bool {
 				return false
 			}
 			return true
-		case a.Address, a.Article, a.Aside, a.Blockquote, a.Button, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Listing, a.Menu, a.Nav, a.Ol, a.Pre, a.Section, a.Summary, a.Ul:
+		case a.Address, a.Article, a.Aside, a.Blockquote, a.Button, a.Center, a.Details, a.Dialog, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Listing, a.Main, a.Menu, a.Nav, a.Ol, a.Pre, a.Section, a.Summary, a.Ul:
 			p.popUntil(defaultScope, p.tok.DataAtom)
 		case a.Form:
 			if p.oe.contains(a.Template) {
@@ -1146,14 +1169,13 @@ func inBodyIM(p *parser) bool {
 		if len(p.templateStack) > 0 {
 			p.im = inTemplateIM
 			return false
-		} else {
-			for _, e := range p.oe {
-				switch e.DataAtom {
-				case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc, a.Tbody, a.Td, a.Tfoot, a.Th,
-					a.Thead, a.Tr, a.Body, a.Html:
-				default:
-					return true
-				}
+		}
+		for _, e := range p.oe {
+			switch e.DataAtom {
+			case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc, a.Tbody, a.Td, a.Tfoot, a.Th,
+				a.Thead, a.Tr, a.Body, a.Html:
+			default:
+				return true
 			}
 		}
 	}
@@ -1169,9 +1191,15 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) {
 	// Once the code successfully parses the comprehensive test suite, we should
 	// refactor this code to be more idiomatic.
 
-	// Steps 1-4. The outer loop.
+	// Steps 1-2
+	if current := p.oe.top(); current.Data == tagName && p.afe.index(current) == -1 {
+		p.oe.pop()
+		return
+	}
+
+	// Steps 3-5. The outer loop.
 	for i := 0; i < 8; i++ {
-		// Step 5. Find the formatting element.
+		// Step 6. Find the formatting element.
 		var formattingElement *Node
 		for j := len(p.afe) - 1; j >= 0; j-- {
 			if p.afe[j].Type == scopeMarkerNode {
@@ -1186,17 +1214,22 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) {
 			p.inBodyEndTagOther(tagAtom, tagName)
 			return
 		}
+
+		// Step 7. Ignore the tag if formatting element is not in the stack of open elements.
 		feIndex := p.oe.index(formattingElement)
 		if feIndex == -1 {
 			p.afe.remove(formattingElement)
 			return
 		}
+		// Step 8. Ignore the tag if formatting element is not in the scope.
 		if !p.elementInScope(defaultScope, tagAtom) {
 			// Ignore the tag.
 			return
 		}
 
-		// Steps 9-10. Find the furthest block.
+		// Step 9. This step is omitted because it's just a parse error but no need to return.
+
+		// Steps 10-11. Find the furthest block.
 		var furthestBlock *Node
 		for _, e := range p.oe[feIndex:] {
 			if isSpecialElement(e) {
@@ -1213,47 +1246,65 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) {
 			return
 		}
 
-		// Steps 11-12. Find the common ancestor and bookmark node.
+		// Steps 12-13. Find the common ancestor and bookmark node.
 		commonAncestor := p.oe[feIndex-1]
 		bookmark := p.afe.index(formattingElement)
 
-		// Step 13. The inner loop. Find the lastNode to reparent.
+		// Step 14. The inner loop. Find the lastNode to reparent.
 		lastNode := furthestBlock
 		node := furthestBlock
 		x := p.oe.index(node)
-		// Steps 13.1-13.2
-		for j := 0; j < 3; j++ {
-			// Step 13.3.
+		// Step 14.1.
+		j := 0
+		for {
+			// Step 14.2.
+			j++
+			// Step. 14.3.
 			x--
 			node = p.oe[x]
-			// Step 13.4 - 13.5.
+			// Step 14.4. Go to the next step if node is formatting element.
+			if node == formattingElement {
+				break
+			}
+			// Step 14.5. Remove node from the list of active formatting elements if
+			// inner loop counter is greater than three and node is in the list of
+			// active formatting elements.
+			if ni := p.afe.index(node); j > 3 && ni > -1 {
+				p.afe.remove(node)
+				// If any element of the list of active formatting elements is removed,
+				// we need to take care whether bookmark should be decremented or not.
+				// This is because the value of bookmark may exceed the size of the
+				// list by removing elements from the list.
+				if ni <= bookmark {
+					bookmark--
+				}
+				continue
+			}
+			// Step 14.6. Continue the next inner loop if node is not in the list of
+			// active formatting elements.
 			if p.afe.index(node) == -1 {
 				p.oe.remove(node)
 				continue
 			}
-			// Step 13.6.
-			if node == formattingElement {
-				break
-			}
-			// Step 13.7.
+			// Step 14.7.
 			clone := node.clone()
 			p.afe[p.afe.index(node)] = clone
 			p.oe[p.oe.index(node)] = clone
 			node = clone
-			// Step 13.8.
+			// Step 14.8.
 			if lastNode == furthestBlock {
 				bookmark = p.afe.index(node) + 1
 			}
-			// Step 13.9.
+			// Step 14.9.
 			if lastNode.Parent != nil {
 				lastNode.Parent.RemoveChild(lastNode)
 			}
 			node.AppendChild(lastNode)
-			// Step 13.10.
+			// Step 14.10.
 			lastNode = node
 		}
 
-		// Step 14. Reparent lastNode to the common ancestor,
+		// Step 15. Reparent lastNode to the common ancestor,
 		// or for misnested table nodes, to the foster parent.
 		if lastNode.Parent != nil {
 			lastNode.Parent.RemoveChild(lastNode)
@@ -1265,13 +1316,13 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) {
 			commonAncestor.AppendChild(lastNode)
 		}
 
-		// Steps 15-17. Reparent nodes from the furthest block's children
+		// Steps 16-18. Reparent nodes from the furthest block's children
 		// to a clone of the formatting element.
 		clone := formattingElement.clone()
 		reparentChildren(clone, furthestBlock)
 		furthestBlock.AppendChild(clone)
 
-		// Step 18. Fix up the list of active formatting elements.
+		// Step 19. Fix up the list of active formatting elements.
 		if oldLoc := p.afe.index(formattingElement); oldLoc != -1 && oldLoc < bookmark {
 			// Move the bookmark with the rest of the list.
 			bookmark--
@@ -1279,7 +1330,7 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) {
 		p.afe.remove(formattingElement)
 		p.afe.insert(bookmark, clone)
 
-		// Step 19. Fix up the stack of open elements.
+		// Step 20. Fix up the stack of open elements.
 		p.oe.remove(formattingElement)
 		p.oe.insert(p.oe.index(furthestBlock)+1, clone)
 	}
@@ -1450,14 +1501,13 @@ func inCaptionIM(p *parser) bool {
 	case StartTagToken:
 		switch p.tok.DataAtom {
 		case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Td, a.Tfoot, a.Thead, a.Tr:
-			if p.popUntil(tableScope, a.Caption) {
-				p.clearActiveFormattingElements()
-				p.im = inTableIM
-				return false
-			} else {
+			if !p.popUntil(tableScope, a.Caption) {
 				// Ignore the token.
 				return true
 			}
+			p.clearActiveFormattingElements()
+			p.im = inTableIM
+			return false
 		case a.Select:
 			p.reconstructActiveFormattingElements()
 			p.addElement()
@@ -1474,14 +1524,13 @@ func inCaptionIM(p *parser) bool {
 			}
 			return true
 		case a.Table:
-			if p.popUntil(tableScope, a.Caption) {
-				p.clearActiveFormattingElements()
-				p.im = inTableIM
-				return false
-			} else {
+			if !p.popUntil(tableScope, a.Caption) {
 				// Ignore the token.
 				return true
 			}
+			p.clearActiveFormattingElements()
+			p.im = inTableIM
+			return false
 		case a.Body, a.Col, a.Colgroup, a.Html, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr:
 			// Ignore the token.
 			return true
@@ -1692,8 +1741,9 @@ func inCellIM(p *parser) bool {
 				return true
 			}
 			// Close the cell and reprocess.
-			p.popUntil(tableScope, a.Td, a.Th)
-			p.clearActiveFormattingElements()
+			if p.popUntil(tableScope, a.Td, a.Th) {
+				p.clearActiveFormattingElements()
+			}
 			p.im = inRowIM
 			return false
 		}
@@ -1724,12 +1774,11 @@ func inSelectIM(p *parser) bool {
 			}
 			p.addElement()
 		case a.Select:
-			if p.popUntil(selectScope, a.Select) {
-				p.resetInsertionMode()
-			} else {
+			if !p.popUntil(selectScope, a.Select) {
 				// Ignore the token.
 				return true
 			}
+			p.resetInsertionMode()
 		case a.Input, a.Keygen, a.Textarea:
 			if p.elementInScope(selectScope, a.Select) {
 				p.parseImpliedToken(EndTagToken, a.Select, a.Select.String())
@@ -1757,12 +1806,11 @@ func inSelectIM(p *parser) bool {
 				p.oe = p.oe[:i]
 			}
 		case a.Select:
-			if p.popUntil(selectScope, a.Select) {
-				p.resetInsertionMode()
-			} else {
+			if !p.popUntil(selectScope, a.Select) {
 				// Ignore the token.
 				return true
 			}
+			p.resetInsertionMode()
 		case a.Template:
 			return inHeadIM(p)
 		}
@@ -2083,28 +2131,31 @@ func parseForeignContent(p *parser) bool {
 			Data: p.tok.Data,
 		})
 	case StartTagToken:
-		b := breakout[p.tok.Data]
-		if p.tok.DataAtom == a.Font {
-		loop:
-			for _, attr := range p.tok.Attr {
-				switch attr.Key {
-				case "color", "face", "size":
-					b = true
-					break loop
+		if !p.fragment {
+			b := breakout[p.tok.Data]
+			if p.tok.DataAtom == a.Font {
+			loop:
+				for _, attr := range p.tok.Attr {
+					switch attr.Key {
+					case "color", "face", "size":
+						b = true
+						break loop
+					}
 				}
 			}
-		}
-		if b {
-			for i := len(p.oe) - 1; i >= 0; i-- {
-				n := p.oe[i]
-				if n.Namespace == "" || htmlIntegrationPoint(n) || mathMLTextIntegrationPoint(n) {
-					p.oe = p.oe[:i+1]
-					break
+			if b {
+				for i := len(p.oe) - 1; i >= 0; i-- {
+					n := p.oe[i]
+					if n.Namespace == "" || htmlIntegrationPoint(n) || mathMLTextIntegrationPoint(n) {
+						p.oe = p.oe[:i+1]
+						break
+					}
 				}
+				return false
 			}
-			return false
 		}
-		switch p.top().Namespace {
+		current := p.adjustedCurrentNode()
+		switch current.Namespace {
 		case "math":
 			adjustAttributeNames(p.tok.Attr, mathMLAttributeAdjustments)
 		case "svg":
@@ -2119,7 +2170,7 @@ func parseForeignContent(p *parser) bool {
 			panic("html: bad parser state: unexpected namespace")
 		}
 		adjustForeignAttributes(p.tok.Attr)
-		namespace := p.top().Namespace
+		namespace := current.Namespace
 		p.addElement()
 		p.top().Namespace = namespace
 		if namespace != "" {
@@ -2148,12 +2199,20 @@ func parseForeignContent(p *parser) bool {
 	return true
 }
 
+// Section 12.2.4.2.
+func (p *parser) adjustedCurrentNode() *Node {
+	if len(p.oe) == 1 && p.fragment && p.context != nil {
+		return p.context
+	}
+	return p.oe.top()
+}
+
 // Section 12.2.6.
 func (p *parser) inForeignContent() bool {
 	if len(p.oe) == 0 {
 		return false
 	}
-	n := p.oe[len(p.oe)-1]
+	n := p.adjustedCurrentNode()
 	if n.Namespace == "" {
 		return false
 	}
@@ -2247,6 +2306,33 @@ func (p *parser) parse() error {
 //
 // The input is assumed to be UTF-8 encoded.
 func Parse(r io.Reader) (*Node, error) {
+	return ParseWithOptions(r)
+}
+
+// ParseFragment parses a fragment of HTML and returns the nodes that were
+// found. If the fragment is the InnerHTML for an existing element, pass that
+// element in context.
+//
+// It has the same intricacies as Parse.
+func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
+	return ParseFragmentWithOptions(r, context)
+}
+
+// ParseOption configures a parser.
+type ParseOption func(p *parser)
+
+// ParseOptionEnableScripting configures the scripting flag.
+// https://html.spec.whatwg.org/multipage/webappapis.html#enabling-and-disabling-scripting
+//
+// By default, scripting is enabled.
+func ParseOptionEnableScripting(enable bool) ParseOption {
+	return func(p *parser) {
+		p.scripting = enable
+	}
+}
+
+// ParseWithOptions is like Parse, with options.
+func ParseWithOptions(r io.Reader, opts ...ParseOption) (*Node, error) {
 	p := &parser{
 		tokenizer: NewTokenizer(r),
 		doc: &Node{
@@ -2256,19 +2342,19 @@ func Parse(r io.Reader) (*Node, error) {
 		framesetOK: true,
 		im:         initialIM,
 	}
-	err := p.parse()
-	if err != nil {
+
+	for _, f := range opts {
+		f(p)
+	}
+
+	if err := p.parse(); err != nil {
 		return nil, err
 	}
 	return p.doc, nil
 }
 
-// ParseFragment parses a fragment of HTML and returns the nodes that were
-// found. If the fragment is the InnerHTML for an existing element, pass that
-// element in context.
-//
-// It has the same intricacies as Parse.
-func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
+// ParseFragmentWithOptions is like ParseFragment, with options.
+func ParseFragmentWithOptions(r io.Reader, context *Node, opts ...ParseOption) ([]*Node, error) {
 	contextTag := ""
 	if context != nil {
 		if context.Type != ElementNode {
@@ -2283,7 +2369,6 @@ func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
 		contextTag = context.DataAtom.String()
 	}
 	p := &parser{
-		tokenizer: NewTokenizerFragment(r, contextTag),
 		doc: &Node{
 			Type: DocumentNode,
 		},
@@ -2291,6 +2376,15 @@ func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
 		fragment:  true,
 		context:   context,
 	}
+	if context != nil && context.Namespace != "" {
+		p.tokenizer = NewTokenizer(r)
+	} else {
+		p.tokenizer = NewTokenizerFragment(r, contextTag)
+	}
+
+	for _, f := range opts {
+		f(p)
+	}
 
 	root := &Node{
 		Type:     ElementNode,
@@ -2311,8 +2405,7 @@ func ParseFragment(r io.Reader, context *Node) ([]*Node, error) {
 		}
 	}
 
-	err := p.parse()
-	if err != nil {
+	if err := p.parse(); err != nil {
 		return nil, err
 	}
 
diff --git a/vendor/golang.org/x/net/html/render.go b/vendor/golang.org/x/net/html/render.go
index d34564f..b46d81c 100644
--- a/vendor/golang.org/x/net/html/render.go
+++ b/vendor/golang.org/x/net/html/render.go
@@ -134,6 +134,9 @@ func render1(w writer, n *Node) error {
 			}
 		}
 		return w.WriteByte('>')
+	case RawNode:
+		_, err := w.WriteString(n.Data)
+		return err
 	default:
 		return errors.New("html: unknown node type")
 	}
@@ -252,20 +255,19 @@ func writeQuoted(w writer, s string) error {
 // Section 12.1.2, "Elements", gives this list of void elements. Void elements
 // are those that can't have any contents.
 var voidElements = map[string]bool{
-	"area":    true,
-	"base":    true,
-	"br":      true,
-	"col":     true,
-	"command": true,
-	"embed":   true,
-	"hr":      true,
-	"img":     true,
-	"input":   true,
-	"keygen":  true,
-	"link":    true,
-	"meta":    true,
-	"param":   true,
-	"source":  true,
-	"track":   true,
-	"wbr":     true,
+	"area":   true,
+	"base":   true,
+	"br":     true,
+	"col":    true,
+	"embed":  true,
+	"hr":     true,
+	"img":    true,
+	"input":  true,
+	"keygen": true, // "keygen" has been removed from the spec, but are kept here for backwards compatibility.
+	"link":   true,
+	"meta":   true,
+	"param":  true,
+	"source": true,
+	"track":  true,
+	"wbr":    true,
 }
diff --git a/vendor/golang.org/x/net/html/token.go b/vendor/golang.org/x/net/html/token.go
index e3c01d7..877709f 100644
--- a/vendor/golang.org/x/net/html/token.go
+++ b/vendor/golang.org/x/net/html/token.go
@@ -296,8 +296,7 @@ func (z *Tokenizer) Buffered() []byte {
 // too many times in succession.
 func readAtLeastOneByte(r io.Reader, b []byte) (int, error) {
 	for i := 0; i < 100; i++ {
-		n, err := r.Read(b)
-		if n != 0 || err != nil {
+		if n, err := r.Read(b); n != 0 || err != nil {
 			return n, err
 		}
 	}
@@ -347,6 +346,7 @@ loop:
 			break loop
 		}
 		if c != '/' {
+			z.raw.end--
 			continue loop
 		}
 		if z.readRawEndTag() || z.err != nil {
@@ -1067,6 +1067,11 @@ loop:
 
 // Raw returns the unmodified text of the current token. Calling Next, Token,
 // Text, TagName or TagAttr may change the contents of the returned slice.
+//
+// The token stream's raw bytes partition the byte stream (up until an
+// ErrorToken). There are no overlaps or gaps between two consecutive token's
+// raw bytes. One implication is that the byte offset of the current token is
+// the sum of the lengths of all previous tokens' raw bytes.
 func (z *Tokenizer) Raw() []byte {
 	return z.buf[z.raw.start:z.raw.end]
 }
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 eb2f78a..579d2d7 100644
--- a/vendor/golang.org/x/sys/unix/README.md
+++ b/vendor/golang.org/x/sys/unix/README.md
@@ -89,7 +89,7 @@ constants.
 
 Adding new syscall numbers is mostly done by running the build on a sufficiently
 new installation of the target OS (or updating the source checkouts for the
-new build system). However, depending on the OS, you make need to update the
+new build system). However, depending on the OS, you may need to update the
 parsing in mksysnum.
 
 ### mksyscall.go
@@ -149,10 +149,21 @@ 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
+
+This program is used to extract duplicate const, func, and type declarations
+from the generated architecture-specific files listed below, and merge these
+into a common file for each OS.
+
+The merge is performed in the following steps:
+1. Construct the set of common code that is idential in all architecture-specific files.
+2. Write this common code to the merged file.
+3. Remove the common code from all architecture-specific files.
+
 
 ## Generated files
 
-### `zerror_${GOOS}_${GOARCH}.go`
+### `zerrors_${GOOS}_${GOARCH}.go`
 
 A file containing all of the system's generated error numbers, error strings,
 signal numbers, and constants. Generated by `mkerrors.sh` (see above).
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..6b4027b 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_386.s b/vendor/golang.org/x/sys/unix/asm_darwin_386.s
index 8a72783..8a06b87 100644
--- a/vendor/golang.org/x/sys/unix/asm_darwin_386.s
+++ b/vendor/golang.org/x/sys/unix/asm_darwin_386.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s b/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
index 6321421..f2397fd 100644
--- a/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
+++ b/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm.s
index 333242d..c9e6b6f 100644
--- a/vendor/golang.org/x/sys/unix/asm_darwin_arm.s
+++ b/vendor/golang.org/x/sys/unix/asm_darwin_arm.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 // +build arm,darwin
 
 #include "textflag.h"
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
index 97e0174..89843f8 100644
--- a/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
+++ b/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 // +build arm64,darwin
 
 #include "textflag.h"
diff --git a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
index 603dd57..27674e1 100644
--- a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
+++ b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +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_freebsd_386.s
index c9a0a26..49f0ac2 100644
--- a/vendor/golang.org/x/sys/unix/asm_freebsd_386.s
+++ b/vendor/golang.org/x/sys/unix/asm_freebsd_386.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
index 3517247..f2dfc57 100644
--- a/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
+++ b/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
index 9227c87..6d740db 100644
--- a/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
+++ b/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
index d9318cb..a8f5a29 100644
--- a/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
+++ b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
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..0655ecb 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +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..bc3fb6a 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +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..55b13c7 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +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..22a83d8 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
@@ -4,7 +4,7 @@
 
 // +build linux
 // +build arm64
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
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..dc222b9 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
@@ -4,7 +4,7 @@
 
 // +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..d333f13 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
@@ -4,7 +4,7 @@
 
 // +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..459a629 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
@@ -4,7 +4,7 @@
 
 // +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..04d3849 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build riscv64,!gccgo
+// +build riscv64,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..cc30398 100644
--- a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
+++ b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
@@ -4,7 +4,7 @@
 
 // +build s390x
 // +build linux
-// +build !gccgo
+// +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
index 48bdcd7..ae7b498 100644
--- a/vendor/golang.org/x/sys/unix/asm_netbsd_386.s
+++ b/vendor/golang.org/x/sys/unix/asm_netbsd_386.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
index 2ede05c..e57367c 100644
--- a/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
+++ b/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
index e892857..d7da175 100644
--- a/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
+++ b/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
index 6f98ba5..e7cbe19 100644
--- a/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
+++ b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_386.s b/vendor/golang.org/x/sys/unix/asm_openbsd_386.s
index 00576f3..2f00b03 100644
--- a/vendor/golang.org/x/sys/unix/asm_openbsd_386.s
+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_386.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
index 790ef77..07632c9 100644
--- a/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s
index 469bfa1..73e9973 100644
--- a/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s
+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
index 0cedea3..c47302a 100644
--- a/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
new file mode 100644
index 0000000..47c93fc
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
@@ -0,0 +1,29 @@
+// 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 gc
+
+#include "textflag.h"
+
+//
+// System call support for mips64, OpenBSD
+//
+
+// 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_solaris_amd64.s b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
index ded8260..1f2c755 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !gccgo
+// +build gc
 
 #include "textflag.h"
 
diff --git a/vendor/golang.org/x/sys/unix/endian_big.go b/vendor/golang.org/x/sys/unix/endian_big.go
index 5e92690..86781ea 100644
--- a/vendor/golang.org/x/sys/unix/endian_big.go
+++ b/vendor/golang.org/x/sys/unix/endian_big.go
@@ -2,7 +2,7 @@
 // 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
+// +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..8822d85 100644
--- a/vendor/golang.org/x/sys/unix/endian_little.go
+++ b/vendor/golang.org/x/sys/unix/endian_little.go
@@ -2,7 +2,7 @@
 // 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
+// +build 386 amd64 amd64p32 alpha arm arm64 mipsle mips64le mips64p32le nios2 ppc64le riscv riscv64 sh
 
 package unix
 
diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
index c56bc8b..761db66 100644
--- a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
@@ -8,6 +8,7 @@
 package unix
 
 const (
+	DLT_HHDLC                         = 0x79
 	IFF_SMART                         = 0x20
 	IFT_1822                          = 0x2
 	IFT_A12MPPSWITCH                  = 0x82
@@ -210,13 +211,18 @@ const (
 	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
diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
index 3e97711..070f44b 100644
--- a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
@@ -8,6 +8,7 @@
 package unix
 
 const (
+	DLT_HHDLC                         = 0x79
 	IFF_SMART                         = 0x20
 	IFT_1822                          = 0x2
 	IFT_A12MPPSWITCH                  = 0x82
@@ -210,13 +211,18 @@ const (
 	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
diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
new file mode 100644
index 0000000..946dcf3
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
@@ -0,0 +1,17 @@
+// 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_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..8db48e5 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,9 @@
-// +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.
 
+// +build linux,386 linux,arm linux,mips linux,mipsle
+
 package unix
 
 func init() {
diff --git a/vendor/golang.org/x/sys/unix/gccgo.go b/vendor/golang.org/x/sys/unix/gccgo.go
index cd6f5a6..86032c1 100644
--- a/vendor/golang.org/x/sys/unix/gccgo.go
+++ b/vendor/golang.org/x/sys/unix/gccgo.go
@@ -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/ioctl.go b/vendor/golang.org/x/sys/unix/ioctl.go
index 3559e5d..5641678 100644
--- a/vendor/golang.org/x/sys/unix/ioctl.go
+++ b/vendor/golang.org/x/sys/unix/ioctl.go
@@ -20,6 +20,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/mkall.sh b/vendor/golang.org/x/sys/unix/mkall.sh
index fa0c69b..d257fac 100644
--- a/vendor/golang.org/x/sys/unix/mkall.sh
+++ b/vendor/golang.org/x/sys/unix/mkall.sh
@@ -73,26 +73,22 @@ aix_ppc64)
 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"
 	;;
 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"
 	;;
@@ -124,7 +120,7 @@ freebsd_arm)
 freebsd_arm64)
 	mkerrors="$mkerrors -m64"
 	mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master'"
-	mktypes="GOARCH=$GOARCH go tool cgo -godefs"
+	mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char"
 	;;
 netbsd_386)
 	mkerrors="$mkerrors -m32"
@@ -184,12 +180,27 @@ openbsd_arm64)
 	# 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"
+	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"
+	;;
 solaris_amd64)
 	mksyscall="go run mksyscall_solaris.go"
 	mkerrors="$mkerrors -m64"
 	mksysnum=
 	mktypes="GOARCH=$GOARCH go tool cgo -godefs"
 	;;
+illumos_amd64)
+        mksyscall="go run mksyscall_solaris.go"
+	mkerrors=
+	mksysnum=
+	mktypes=
+	;;
 *)
 	echo 'unrecognized $GOOS_$GOARCH: ' "$GOOSARCH" 1>&2
 	exit 1
@@ -211,12 +222,15 @@ 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)
 				echo "$mksyscall -tags $GOOS,$GOARCH,go1.13 syscall_darwin.1_13.go |gofmt >zsyscall_$GOOSARCH.1_13.go";
+			elif [ "$GOOS" == "illumos" ]; then
+			        # illumos code generation requires a --illumos switch
+			        echo "$mksyscall -illumos -tags illumos,$GOARCH syscall_illumos.go |gofmt > zsyscall_illumos_$GOARCH.go";
+			        # illumos implies solaris, so solaris code generation is also required
+				echo "$mksyscall -tags solaris,$GOARCH syscall_solaris.go syscall_solaris_$GOARCH.go |gofmt >zsyscall_solaris_$GOARCH.go";
 			else
 				echo "$mksyscall -tags $GOOS,$GOARCH $syscall_goos $GOOSARCH_in |gofmt >zsyscall_$GOOSARCH.go";
 			fi
diff --git a/vendor/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh
index 6ffac92..b8313e9 100644
--- a/vendor/golang.org/x/sys/unix/mkerrors.sh
+++ b/vendor/golang.org/x/sys/unix/mkerrors.sh
@@ -58,12 +58,15 @@ includes_Darwin='
 #define _DARWIN_USE_64_BIT_INODE
 #include <stdint.h>
 #include <sys/attr.h>
+#include <sys/clonefile.h>
+#include <sys/kern_control.h>
 #include <sys/types.h>
 #include <sys/event.h>
 #include <sys/ptrace.h>
 #include <sys/select.h>
 #include <sys/socket.h>
 #include <sys/sockio.h>
+#include <sys/sys_domain.h>
 #include <sys/sysctl.h>
 #include <sys/mman.h>
 #include <sys/mount.h>
@@ -93,6 +96,7 @@ includes_DragonFly='
 #include <sys/ioctl.h>
 #include <net/bpf.h>
 #include <net/if.h>
+#include <net/if_clone.h>
 #include <net/if_types.h>
 #include <net/route.h>
 #include <netinet/in.h>
@@ -105,7 +109,9 @@ includes_FreeBSD='
 #include <sys/capsicum.h>
 #include <sys/param.h>
 #include <sys/types.h>
+#include <sys/disk.h>
 #include <sys/event.h>
+#include <sys/sched.h>
 #include <sys/select.h>
 #include <sys/socket.h>
 #include <sys/sockio.h>
@@ -186,19 +192,25 @@ struct ltchars {
 #include <sys/select.h>
 #include <sys/signalfd.h>
 #include <sys/socket.h>
+#include <sys/timerfd.h>
 #include <sys/uio.h>
 #include <sys/xattr.h>
 #include <linux/bpf.h>
 #include <linux/can.h>
+#include <linux/can/error.h>
+#include <linux/can/raw.h>
 #include <linux/capability.h>
 #include <linux/cryptouser.h>
 #include <linux/devlink.h>
+#include <linux/dm-ioctl.h>
 #include <linux/errqueue.h>
+#include <linux/ethtool_netlink.h>
 #include <linux/falloc.h>
 #include <linux/fanotify.h>
 #include <linux/filter.h>
 #include <linux/fs.h>
 #include <linux/fscrypt.h>
+#include <linux/fsverity.h>
 #include <linux/genetlink.h>
 #include <linux/hdreg.h>
 #include <linux/icmpv6.h>
@@ -214,6 +226,7 @@ struct ltchars {
 #include <linux/kexec.h>
 #include <linux/keyctl.h>
 #include <linux/loop.h>
+#include <linux/lwtunnel.h>
 #include <linux/magic.h>
 #include <linux/memfd.h>
 #include <linux/module.h>
@@ -222,6 +235,7 @@ struct ltchars {
 #include <linux/net_namespace.h>
 #include <linux/nsfs.h>
 #include <linux/perf_event.h>
+#include <linux/pps.h>
 #include <linux/ptrace.h>
 #include <linux/random.h>
 #include <linux/reboot.h>
@@ -280,6 +294,11 @@ struct ltchars {
 // for the tipc_subscr timeout __u32 field.
 #undef TIPC_WAIT_FOREVER
 #define TIPC_WAIT_FOREVER 0xffffffff
+
+// Copied from linux/l2tp.h
+// 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
 '
 
 includes_NetBSD='
@@ -289,6 +308,7 @@ includes_NetBSD='
 #include <sys/extattr.h>
 #include <sys/mman.h>
 #include <sys/mount.h>
+#include <sys/sched.h>
 #include <sys/select.h>
 #include <sys/socket.h>
 #include <sys/sockio.h>
@@ -317,6 +337,7 @@ includes_OpenBSD='
 #include <sys/mman.h>
 #include <sys/mount.h>
 #include <sys/select.h>
+#include <sys/sched.h>
 #include <sys/socket.h>
 #include <sys/sockio.h>
 #include <sys/stat.h>
@@ -357,6 +378,7 @@ includes_SunOS='
 #include <sys/socket.h>
 #include <sys/sockio.h>
 #include <sys/stat.h>
+#include <sys/stream.h>
 #include <sys/mman.h>
 #include <sys/wait.h>
 #include <sys/ioctl.h>
@@ -473,21 +495,24 @@ ccflags="$@"
 		$2 ~ /^(MS|MNT|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|TFD)_/ ||
 		$2 ~ /^KEXEC_/ ||
 		$2 ~ /^LINUX_REBOOT_CMD_/ ||
 		$2 ~ /^LINUX_REBOOT_MAGIC[12]$/ ||
 		$2 ~ /^MODULE_INIT_/ ||
 		$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/ ||
 		$2 ~ /^TCSET/ ||
 		$2 ~ /^TC(FLSH|SBRKP?|XONC)$/ ||
 		$2 !~ "RTF_BITS" &&
-		$2 ~ /^(IFF|IFT|NET_RT|RTM|RTF|RTV|RTA|RTAX)_/ ||
+		$2 ~ /^(IFF|IFT|NET_RT|RTM(GRP)?|RTF|RTV|RTA|RTAX)_/ ||
 		$2 ~ /^BIOC/ ||
+		$2 ~ /^DIOC/ ||
 		$2 ~ /^RUSAGE_(SELF|CHILDREN|THREAD)/ ||
 		$2 ~ /^RLIMIT_(AS|CORE|CPU|DATA|FSIZE|LOCKS|MEMLOCK|MSGQUEUE|NICE|NOFILE|NPROC|RSS|RTPRIO|RTTIME|SIGPENDING|STACK)|RLIM_INFINITY/ ||
 		$2 ~ /^PRIO_(PROCESS|PGRP|USER)/ ||
@@ -497,15 +522,21 @@ ccflags="$@"
 		$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/ ||
+		$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 ~ /^SPLICE_/ ||
 		$2 ~ /^SYNC_FILE_RANGE_/ ||
@@ -524,14 +555,17 @@ 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 !~ "WMESGLEN" &&
 		$2 ~ /^W[A-Z0-9]+$/ ||
 		$2 ~/^PPPIOC/ ||
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..fc568b5
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/ptrace_darwin.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.
+
+// +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..183441c
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/ptrace_ios.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.
+
+// +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/sockcmsg_unix_other.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
index 7d08dae..57a0021 100644
--- a/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
@@ -20,7 +20,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 +32,10 @@ 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
+		}
 	}
 
 	return (salen + salign - 1) & ^(salign - 1)
diff --git a/vendor/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go
index fd4ee8e..ab75ef9 100644
--- a/vendor/golang.org/x/sys/unix/syscall.go
+++ b/vendor/golang.org/x/sys/unix/syscall.go
@@ -24,7 +24,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 +55,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..4408153 100644
--- a/vendor/golang.org/x/sys/unix/syscall_aix.go
+++ b/vendor/golang.org/x/sys/unix/syscall_aix.go
@@ -19,6 +19,22 @@ 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 {
diff --git a/vendor/golang.org/x/sys/unix/syscall_bsd.go b/vendor/golang.org/x/sys/unix/syscall_bsd.go
index 68605db..bc634a2 100644
--- a/vendor/golang.org/x/sys/unix/syscall_bsd.go
+++ b/vendor/golang.org/x/sys/unix/syscall_bsd.go
@@ -18,6 +18,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
  */
@@ -262,7 +277,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
 		}
 		return sa, nil
 	}
-	return nil, EAFNOSUPPORT
+	return anyToSockaddrGOOS(fd, rsa)
 }
 
 func Accept(fd int) (nfd int, sa Sockaddr, err error) {
@@ -272,7 +287,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
@@ -527,6 +542,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 {
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..b31ef03 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
@@ -10,6 +10,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 +22,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..ee852f1 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
@@ -6,7 +6,11 @@
 
 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)
@@ -22,7 +26,6 @@ func fdopendir(fd int) (dir uintptr, err error) {
 
 func libc_fdopendir_trampoline()
 
-//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 +74,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 +83,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..16f9c22 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin.go
+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.go
@@ -13,29 +13,11 @@
 package unix
 
 import (
-	"errors"
+	"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 +31,41 @@ 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
+}
+
+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
+		}
+	}
+	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,11 +109,6 @@ 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
@@ -107,61 +119,16 @@ type attrList struct {
 	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)
+	p[0] = int(x[0])
+	p[1] = int(x[1])
 	return
 }
 
@@ -324,6 +291,35 @@ func Kill(pid int, signum syscall.Signal) (err error) { return kill(pid, int(sig
 
 //sys	ioctl(fd int, req uint, arg uintptr) (err error)
 
+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 {
@@ -396,6 +392,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 +405,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 +423,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)
diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
index 707ba4f..ee065fc 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
@@ -6,11 +6,7 @@
 
 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: int32(sec), Nsec: int32(nsec)}
@@ -20,17 +16,6 @@ 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)
@@ -55,14 +40,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/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	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_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..7a1f64a 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
@@ -6,11 +6,7 @@
 
 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 +16,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 +40,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.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
index f8bc4cf..d30735c 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
@@ -4,11 +4,9 @@
 
 package unix
 
-import (
-	"syscall"
-)
+import "syscall"
 
-func ptrace(request int, pid int, addr uintptr, data uintptr) error {
+func ptrace1(request int, pid int, addr uintptr, data uintptr) error {
 	return ENOTSUP
 }
 
@@ -20,17 +18,6 @@ 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)
@@ -55,10 +42,6 @@ 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/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)
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..9f85fd4 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
@@ -6,13 +6,7 @@
 
 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 +16,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 +40,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_dragonfly.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
index 8a195ae..a4f2944 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])
@@ -101,6 +105,19 @@ func Pipe(p []int) (err error) {
 	return
 }
 
+//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])
+	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) {
 	return extpread(fd, p, 0, offset)
@@ -129,23 +146,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
diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd.go b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
index 6b2eca4..acc00c2 100644
--- a/vendor/golang.org/x/sys/unix/syscall_freebsd.go
+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
@@ -54,6 +54,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])
@@ -140,23 +144,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
@@ -521,10 +510,6 @@ func PtraceGetFpRegs(pid int, fpregsout *FpReg) (err error) {
 	return ptrace(PTRACE_GETFPREGS, pid, uintptr(unsafe.Pointer(fpregsout)), 0)
 }
 
-func PtraceGetFsBase(pid int, fsbase *int64) (err error) {
-	return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0)
-}
-
 func PtraceGetRegs(pid int, regsout *Reg) (err error) {
 	return ptrace(PTRACE_GETREGS, pid, uintptr(unsafe.Pointer(regsout)), 0)
 }
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 0a5a66f..72a506d 100644
--- a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
@@ -55,6 +55,10 @@ 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)
+}
+
 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)
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 8025b22..d5e376a 100644
--- a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
@@ -55,6 +55,10 @@ 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)
+}
+
 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)
diff --git a/vendor/golang.org/x/sys/unix/syscall_illumos.go b/vendor/golang.org/x/sys/unix/syscall_illumos.go
new file mode 100644
index 0000000..7a2d412
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/syscall_illumos.go
@@ -0,0 +1,77 @@
+// 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.
+
+// illumos system calls not present on Solaris.
+
+// +build amd64,illumos
+
+package unix
+
+import "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]))
+		} else {
+			iovecs[i].Base = (*int8)(unsafe.Pointer(&_zero))
+		}
+	}
+	return iovecs
+}
+
+//sys	readv(fd int, iovs []Iovec) (n int, err error)
+
+func Readv(fd int, iovs [][]byte) (n int, err error) {
+	iovecs := bytes2iovec(iovs)
+	n, err = readv(fd, iovecs)
+	return n, err
+}
+
+//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)
+	n, err = preadv(fd, iovecs, off)
+	return n, err
+}
+
+//sys	writev(fd int, iovs []Iovec) (n int, err error)
+
+func Writev(fd int, iovs [][]byte) (n int, err error) {
+	iovecs := bytes2iovec(iovs)
+	n, err = writev(fd, iovecs)
+	return n, err
+}
+
+//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
+}
diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go
index 0efe45a..28be130 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux.go
@@ -82,21 +82,18 @@ func IoctlRetInt(fd int, req uint) (int, error) {
 	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 IoctlSetRTCTime(fd int, value *RTCTime) error {
 	err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
 	runtime.KeepAlive(value)
 	return err
 }
 
+func IoctlSetRTCWkAlrm(fd int, value *RTCWkAlrm) error {
+	err := ioctl(fd, RTC_WKALM_SET, uintptr(unsafe.Pointer(value)))
+	runtime.KeepAlive(value)
+	return err
+}
+
 func IoctlGetUint32(fd int, req uint) (uint32, error) {
 	var value uint32
 	err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
@@ -109,6 +106,53 @@ func IoctlGetRTCTime(fd int) (*RTCTime, error) {
 	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 := ioctl(fd, WDIOC_GETSUPPORT, uintptr(unsafe.Pointer(&value)))
+	return &value, err
+}
+
+func IoctlGetRTCWkAlrm(fd int) (*RTCWkAlrm, error) {
+	var value RTCWkAlrm
+	err := ioctl(fd, RTC_WKALM_RD, uintptr(unsafe.Pointer(&value)))
+	return &value, err
+}
+
+// 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 {
+	err := ioctl(destFd, FICLONERANGE, uintptr(unsafe.Pointer(value)))
+	runtime.KeepAlive(value)
+	return err
+}
+
+// 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))
+}
+
+// IoctlFileDedupeRange performs an FIDEDUPERANGE ioctl operation to share the
+// range of data conveyed in value with the file associated with the file
+// descriptor destFd. See the ioctl_fideduperange(2) man page for details.
+func IoctlFileDedupeRange(destFd int, value *FileDedupeRange) error {
+	err := ioctl(destFd, FIDEDUPERANGE, uintptr(unsafe.Pointer(value)))
+	runtime.KeepAlive(value)
+	return 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 {
+	return ioctl(fd, WDIOC_KEEPALIVE, 0)
+}
+
 //sys	Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error)
 
 func Link(oldpath string, newpath string) (err error) {
@@ -133,6 +177,12 @@ 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)
+}
+
 //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) {
@@ -591,6 +641,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
@@ -839,6 +919,73 @@ func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) {
 	return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil
 }
 
+// SockaddrL2TPIP implements the Sockaddr interface for IPPROTO_L2TP/AF_INET sockets.
+type SockaddrL2TPIP struct {
+	Addr   [4]byte
+	ConnId uint32
+	raw    RawSockaddrL2TPIP
+}
+
+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]
+	}
+	return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil
+}
+
+// SockaddrL2TPIP6 implements the Sockaddr interface for IPPROTO_L2TP/AF_INET6 sockets.
+type SockaddrL2TPIP6 struct {
+	Addr   [16]byte
+	ZoneId uint32
+	ConnId uint32
+	raw    RawSockaddrL2TPIP6
+}
+
+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]
+	}
+	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
+}
+
+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:
@@ -889,25 +1036,58 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
 		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])
-		for i := 0; i < len(sa.Addr); i++ {
-			sa.Addr[i] = pp.Addr[i]
+		proto, err := socketProtocol(fd)
+		if err != nil {
+			return nil, err
+		}
+
+		switch proto {
+		case IPPROTO_L2TP:
+			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]
+			}
+			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]
+			}
+			return sa, nil
 		}
-		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
-		for i := 0; i < len(sa.Addr); i++ {
-			sa.Addr[i] = pp.Addr[i]
+		proto, err := socketProtocol(fd)
+		if err != nil {
+			return nil, err
+		}
+
+		switch proto {
+		case IPPROTO_L2TP:
+			pp := (*RawSockaddrL2TPIP6)(unsafe.Pointer(rsa))
+			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]
+			}
+			return sa, nil
+		default:
+			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
+			for i := 0; i < len(sa.Addr); i++ {
+				sa.Addr[i] = pp.Addr[i]
+			}
+			return sa, nil
 		}
-		return sa, nil
 
 	case AF_VSOCK:
 		pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
@@ -917,7 +1097,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
 		}
 		return sa, nil
 	case AF_BLUETOOTH:
-		proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
+		proto, err := socketProtocol(fd)
 		if err != nil {
 			return nil, err
 		}
@@ -986,6 +1166,61 @@ 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
+		}
 	}
 	return nil, EAFNOSUPPORT
 }
@@ -1555,8 +1790,8 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
 //sys	Acct(path string) (err error)
 //sys	AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error)
 //sys	Adjtimex(buf *Timex) (state int, err error)
-//sys	Capget(hdr *CapUserHeader, data *CapUserData) (err error)
-//sys	Capset(hdr *CapUserHeader, data *CapUserData) (err error)
+//sysnb	Capget(hdr *CapUserHeader, data *CapUserData) (err error)
+//sysnb	Capset(hdr *CapUserHeader, data *CapUserData) (err error)
 //sys	Chdir(path string) (err error)
 //sys	Chroot(path string) (err error)
 //sys	ClockGetres(clockid int32, res *Timespec) (err error)
@@ -1566,6 +1801,15 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
 //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 {
+	// Android O and newer blocks dup2; riscv and arm64 don't implement dup2.
+	if runtime.GOOS == "android" || runtime.GOARCH == "riscv64" || runtime.GOARCH == "arm64" {
+		return Dup3(oldfd, newfd, 0)
+	}
+	return dup2(oldfd, newfd)
+}
+
 //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)
@@ -1690,6 +1934,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)
@@ -1859,11 +2106,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.
@@ -1872,8 +2138,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
@@ -1916,7 +2182,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(gid) {
 			fmode = (st.Mode >> 3) & 7
 		} else {
 			fmode = st.Mode & 7
@@ -2017,6 +2283,18 @@ 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
+
 /*
  * Unimplemented
  */
@@ -2111,7 +2389,6 @@ func Klogset(typ int, arg int) (err error) {
 // TimerGetoverrun
 // TimerGettime
 // TimerSettime
-// Timerfd
 // Tkill (obsolete)
 // Tuxcall
 // Umount2
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..c97c2ee 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,6 @@
 // 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.
-
 // +build 386,linux
 
 package unix
@@ -49,7 +46,7 @@ func Pipe2(p []int, flags int) (err error) {
 
 // 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)
+//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
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..72efe86 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
@@ -6,7 +6,7 @@
 
 package unix
 
-//sys	Dup2(oldfd int, newfd int) (err error)
+//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
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..baa771f 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
@@ -3,7 +3,7 @@
 // license that can be found in the LICENSE file.
 
 // +build amd64,linux
-// +build !gccgo
+// +build 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..496837b 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
@@ -7,7 +7,6 @@
 package unix
 
 import (
-	"syscall"
 	"unsafe"
 )
 
@@ -49,10 +48,6 @@ func Pipe2(p []int, flags int) (err error) {
 	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 {
@@ -80,7 +75,7 @@ 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)
+//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
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..c6de6b9 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
@@ -25,7 +25,7 @@ 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
@@ -47,7 +47,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
 //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	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)
@@ -168,6 +168,24 @@ func Pipe2(p []int, flags int) (err error) {
 	return
 }
 
+// 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
+	}
+	return getrlimit(resource, rlim)
+}
+
+// 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
+	}
+	return setrlimit(resource, rlim)
+}
+
 func (r *PtraceRegs) PC() uint64 { return r.Pc }
 
 func (r *PtraceRegs) SetPC(pc uint64) { r.Pc = pc }
@@ -192,9 +210,9 @@ func InotifyInit() (fd int, err error) {
 	return InotifyInit1(0)
 }
 
-func Dup2(oldfd int, newfd int) (err error) {
-	return Dup3(oldfd, newfd, 0)
-}
+// dup2 exists because func Dup3 in syscall_linux.go references
+// it in an unreachable path. dup2 isn't available on arm64.
+func dup2(oldfd int, newfd int) error
 
 func Pause() error {
 	_, err := ppoll(nil, 0, nil, nil)
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..9edf396 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build linux,!gccgo
+// +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..90e33d8 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,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build linux,!gccgo,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..1a97baa
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go
@@ -0,0 +1,13 @@
+// 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 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_mips64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
index e9d2f1d..f028747 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
@@ -7,7 +7,7 @@
 
 package unix
 
-//sys	Dup2(oldfd int, newfd int) (err error)
+//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
@@ -216,6 +216,10 @@ 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) {
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..c113281 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
@@ -14,7 +14,7 @@ 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)
+//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
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..3493744 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
@@ -7,7 +7,7 @@
 
 package unix
 
-//sys	Dup2(oldfd int, newfd int) (err error)
+//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
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..b0b1505 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
@@ -191,10 +191,6 @@ func InotifyInit() (fd int, err error) {
 	return InotifyInit1(0)
 }
 
-func Dup2(oldfd int, newfd int) (err error) {
-	return Dup3(oldfd, newfd, 0)
-}
-
 func Pause() error {
 	_, err := ppoll(nil, 0, nil, nil)
 	return err
@@ -228,3 +224,7 @@ func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error
 	}
 	return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
 }
+
+// dup2 exists because func Dup3 in syscall_linux.go references
+// it in an unreachable path. dup2 isn't available on arm64.
+func dup2(oldfd int, newfd int) error
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..2363f74 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
@@ -10,7 +10,7 @@ import (
 	"unsafe"
 )
 
-//sys	Dup2(oldfd int, newfd int) (err error)
+//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
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..d389f15 100644
--- a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
@@ -8,7 +8,7 @@ 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	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
diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd.go b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
index 45b50a6..1e6843b 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) {
@@ -141,23 +145,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
-}
-
 // TODO
 func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
 	return -1, ENOSYS
diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd.go b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
index a266e92..6a50b50 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) {
@@ -114,23 +118,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))
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..30f2853
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go
@@ -0,0 +1,35 @@
+// 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 (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..184786e 100644
--- a/vendor/golang.org/x/sys/unix/syscall_solaris.go
+++ b/vendor/golang.org/x/sys/unix/syscall_solaris.go
@@ -13,6 +13,7 @@
 package unix
 
 import (
+	"runtime"
 	"syscall"
 	"unsafe"
 )
@@ -67,6 +68,19 @@ func Pipe(p []int) (err error) {
 	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)
+	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
@@ -553,8 +567,10 @@ func Minor(dev uint64) uint32 {
 
 //sys	ioctl(fd int, req uint, arg uintptr) (err error)
 
-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) {
diff --git a/vendor/golang.org/x/sys/unix/syscall_unix.go b/vendor/golang.org/x/sys/unix/syscall_unix.go
index 3de3756..400ba9f 100644
--- a/vendor/golang.org/x/sys/unix/syscall_unix.go
+++ b/vendor/golang.org/x/sys/unix/syscall_unix.go
@@ -12,6 +12,8 @@ import (
 	"sync"
 	"syscall"
 	"unsafe"
+
+	"golang.org/x/sys/internal/unsafeheader"
 )
 
 var (
@@ -76,7 +78,7 @@ func SignalName(s syscall.Signal) string {
 // The signal name should start with "SIG".
 func SignalNum(s string) syscall.Signal {
 	signalNameMapOnce.Do(func() {
-		signalNameMap = make(map[string]syscall.Signal)
+		signalNameMap = make(map[string]syscall.Signal, len(signalList))
 		for _, signal := range signalList {
 			signalNameMap[signal.name] = signal.num
 		}
@@ -113,15 +115,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]
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..87bd161 100644
--- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
@@ -3,7 +3,7 @@
 // license that can be found in the LICENSE file.
 
 // +build darwin dragonfly freebsd linux netbsd openbsd solaris
-// +build !gccgo,!ppc64le,!ppc64
+// +build gc,!ppc64le,!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..d36216c 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
@@ -4,7 +4,7 @@
 
 // +build linux
 // +build ppc64le ppc64
-// +build !gccgo
+// +build gc
 
 package unix
 
diff --git a/vendor/golang.org/x/sys/unix/timestruct.go b/vendor/golang.org/x/sys/unix/timestruct.go
index 4a672f5..1036042 100644
--- a/vendor/golang.org/x/sys/unix/timestruct.go
+++ b/vendor/golang.org/x/sys/unix/timestruct.go
@@ -8,12 +8,10 @@ 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 +40,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 +55,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/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
index 6217cdb..ec376f5 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
@@ -45,6 +45,7 @@ const (
 	AF_SIP                            = 0x18
 	AF_SNA                            = 0xb
 	AF_SYSTEM                         = 0x20
+	AF_SYS_CONTROL                    = 0x2
 	AF_UNIX                           = 0x1
 	AF_UNSPEC                         = 0x0
 	AF_UTUN                           = 0x26
@@ -232,6 +233,8 @@ const (
 	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
@@ -249,6 +252,7 @@ const (
 	CSTOP                             = 0x13
 	CSTOPB                            = 0x400
 	CSUSP                             = 0x1a
+	CTLIOCGINFO                       = 0xc0644e03
 	CTL_HW                            = 0x6
 	CTL_KERN                          = 0x1
 	CTL_MAXNAME                       = 0xc
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..fea5dfa 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
@@ -45,6 +45,7 @@ const (
 	AF_SIP                            = 0x18
 	AF_SNA                            = 0xb
 	AF_SYSTEM                         = 0x20
+	AF_SYS_CONTROL                    = 0x2
 	AF_UNIX                           = 0x1
 	AF_UNSPEC                         = 0x0
 	AF_UTUN                           = 0x26
@@ -232,6 +233,8 @@ const (
 	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
@@ -249,6 +252,7 @@ const (
 	CSTOP                             = 0x13
 	CSTOPB                            = 0x400
 	CSUSP                             = 0x1a
+	CTLIOCGINFO                       = 0xc0644e03
 	CTL_HW                            = 0x6
 	CTL_KERN                          = 0x1
 	CTL_MAXNAME                       = 0xc
diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
index 3e41757..03feefb 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
@@ -45,6 +45,7 @@ const (
 	AF_SIP                            = 0x18
 	AF_SNA                            = 0xb
 	AF_SYSTEM                         = 0x20
+	AF_SYS_CONTROL                    = 0x2
 	AF_UNIX                           = 0x1
 	AF_UNSPEC                         = 0x0
 	AF_UTUN                           = 0x26
@@ -232,6 +233,8 @@ const (
 	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
@@ -249,6 +252,7 @@ const (
 	CSTOP                             = 0x13
 	CSTOPB                            = 0x400
 	CSUSP                             = 0x1a
+	CTLIOCGINFO                       = 0xc0644e03
 	CTL_HW                            = 0x6
 	CTL_KERN                          = 0x1
 	CTL_MAXNAME                       = 0xc
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..b40fb1f 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
@@ -45,6 +45,7 @@ const (
 	AF_SIP                            = 0x18
 	AF_SNA                            = 0xb
 	AF_SYSTEM                         = 0x20
+	AF_SYS_CONTROL                    = 0x2
 	AF_UNIX                           = 0x1
 	AF_UNSPEC                         = 0x0
 	AF_UTUN                           = 0x26
@@ -232,6 +233,8 @@ const (
 	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
@@ -249,6 +252,7 @@ const (
 	CSTOP                             = 0x13
 	CSTOPB                            = 0x400
 	CSUSP                             = 0x1a
+	CTLIOCGINFO                       = 0xc0644e03
 	CTL_HW                            = 0x6
 	CTL_KERN                          = 0x1
 	CTL_MAXNAME                       = 0xc
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..f5e91b7 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
@@ -62,6 +62,7 @@ const (
 	B28800                            = 0x7080
 	B300                              = 0x12c
 	B38400                            = 0x9600
+	B460800                           = 0x70800
 	B4800                             = 0x12c0
 	B50                               = 0x32
 	B57600                            = 0xe100
@@ -69,12 +70,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 +92,7 @@ const (
 	BIOCSETF                          = 0x80104267
 	BIOCSETIF                         = 0x8020426c
 	BIOCSETWF                         = 0x8010427b
+	BIOCSFEEDBACK                     = 0x8004427d
 	BIOCSHDRCMPLT                     = 0x80044275
 	BIOCSRSIG                         = 0x80044273
 	BIOCSRTIMEOUT                     = 0x8010426d
@@ -125,6 +130,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 +145,7 @@ const (
 	BPF_TXA                           = 0x80
 	BPF_W                             = 0x0
 	BPF_X                             = 0x8
+	BPF_XOR                           = 0xa0
 	BRKINT                            = 0x2
 	CFLUSH                            = 0xf
 	CLOCAL                            = 0x8000
@@ -156,6 +163,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 +188,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 +198,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 +234,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 +245,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 +279,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 +321,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 +404,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 +447,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 +524,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 +696,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 +818,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 +829,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 +876,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 +1167,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 +1191,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 +1205,7 @@ const (
 	SIOCGETVIFCNT                     = 0xc028720f
 	SIOCGHIWAT                        = 0x40047301
 	SIOCGIFADDR                       = 0xc0206921
+	SIOCGIFALIAS                      = 0xc0406929
 	SIOCGIFBRDADDR                    = 0xc0206923
 	SIOCGIFCAP                        = 0xc020691f
 	SIOCGIFCONF                       = 0xc0106924
@@ -1128,6 +1214,7 @@ const (
 	SIOCGIFFLAGS                      = 0xc0206911
 	SIOCGIFGENERIC                    = 0xc020693a
 	SIOCGIFGMEMB                      = 0xc028698a
+	SIOCGIFGROUP                      = 0xc0286988
 	SIOCGIFINDEX                      = 0xc0206920
 	SIOCGIFMEDIA                      = 0xc0306938
 	SIOCGIFMETRIC                     = 0xc0206917
@@ -1194,6 +1281,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 +1321,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 +1350,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 +1365,6 @@ const (
 	TIOCGETD                          = 0x4004741a
 	TIOCGPGRP                         = 0x40047477
 	TIOCGSID                          = 0x40047463
-	TIOCGSIZE                         = 0x40087468
 	TIOCGWINSZ                        = 0x40087468
 	TIOCISPTMASTER                    = 0x20007455
 	TIOCMBIC                          = 0x8004746b
@@ -1317,7 +1409,6 @@ const (
 	TIOCSETD                          = 0x8004741b
 	TIOCSIG                           = 0x2000745f
 	TIOCSPGRP                         = 0x80047476
-	TIOCSSIZE                         = 0x80087467
 	TIOCSTART                         = 0x2000746e
 	TIOCSTAT                          = 0x20007465
 	TIOCSTI                           = 0x80017472
@@ -1326,6 +1417,8 @@ const (
 	TIOCTIMESTAMP                     = 0x40107459
 	TIOCUCNTL                         = 0x80047466
 	TOSTOP                            = 0x400000
+	UTIME_NOW                         = -0x1
+	UTIME_OMIT                        = -0x2
 	VCHECKPT                          = 0x13
 	VDISCARD                          = 0xf
 	VDSUSP                            = 0xb
@@ -1350,9 +1443,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 +1548,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 +1691,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 b72544f..3689c80 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
@@ -339,6 +339,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,6 +361,22 @@ const (
 	CTL_KERN                       = 0x1
 	CTL_MAXNAME                    = 0x18
 	CTL_NET                        = 0x4
+	DIOCGATTR                      = 0xc144648e
+	DIOCGDELETE                    = 0x80106488
+	DIOCGFLUSH                     = 0x20006487
+	DIOCGFRONTSTUFF                = 0x40086486
+	DIOCGFWHEADS                   = 0x40046483
+	DIOCGFWSECTORS                 = 0x40046482
+	DIOCGIDENT                     = 0x41006489
+	DIOCGMEDIASIZE                 = 0x40086481
+	DIOCGPHYSPATH                  = 0x4400648d
+	DIOCGPROVIDERNAME              = 0x4400648a
+	DIOCGSECTORSIZE                = 0x40046480
+	DIOCGSTRIPEOFFSET              = 0x4008648c
+	DIOCGSTRIPESIZE                = 0x4008648b
+	DIOCSKERNELDUMP                = 0x804c6490
+	DIOCSKERNELDUMP_FREEBSD11      = 0x80046485
+	DIOCZONECMD                    = 0xc06c648f
 	DLT_A429                       = 0xb8
 	DLT_A653_ICM                   = 0xb9
 	DLT_AIRONET_HEADER             = 0x78
@@ -379,11 +401,14 @@ const (
 	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
@@ -393,6 +418,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
@@ -406,7 +432,6 @@ const (
 	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
@@ -429,6 +454,7 @@ const (
 	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
@@ -461,8 +487,9 @@ const (
 	DLT_LINUX_PPP_WITHDIRECTION    = 0xa6
 	DLT_LINUX_SLL                  = 0x71
 	DLT_LOOP                       = 0x6c
+	DLT_LORATAP                    = 0x10e
 	DLT_LTALK                      = 0x72
-	DLT_MATCHING_MAX               = 0x104
+	DLT_MATCHING_MAX               = 0x113
 	DLT_MATCHING_MIN               = 0x68
 	DLT_MFR                        = 0xb6
 	DLT_MOST                       = 0xd3
@@ -478,14 +505,16 @@ 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
 	DLT_PKTAP                      = 0x102
 	DLT_PPI                        = 0xc0
 	DLT_PPP                        = 0x9
-	DLT_PPP_BSDOS                  = 0x10
+	DLT_PPP_BSDOS                  = 0xe
 	DLT_PPP_ETHER                  = 0x33
 	DLT_PPP_PPPD                   = 0xa6
 	DLT_PPP_SERIAL                 = 0x32
@@ -496,19 +525,25 @@ const (
 	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                 = 0xf
+	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
@@ -527,10 +562,14 @@ 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
 	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
@@ -548,6 +587,7 @@ const (
 	ECHONL                         = 0x10
 	ECHOPRT                        = 0x20
 	EVFILT_AIO                     = -0x3
+	EVFILT_EMPTY                   = -0xd
 	EVFILT_FS                      = -0x9
 	EVFILT_LIO                     = -0xa
 	EVFILT_PROC                    = -0x5
@@ -555,11 +595,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
@@ -576,6 +617,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
@@ -617,6 +659,7 @@ const (
 	IEXTEN                         = 0x400
 	IFAN_ARRIVAL                   = 0x0
 	IFAN_DEPARTURE                 = 0x1
+	IFCAP_WOL_MAGIC                = 0x2000
 	IFF_ALLMULTI                   = 0x200
 	IFF_ALTPHYS                    = 0x4000
 	IFF_BROADCAST                  = 0x2
@@ -633,6 +676,7 @@ const (
 	IFF_MONITOR                    = 0x40000
 	IFF_MULTICAST                  = 0x8000
 	IFF_NOARP                      = 0x80
+	IFF_NOGROUP                    = 0x800000
 	IFF_OACTIVE                    = 0x400
 	IFF_POINTOPOINT                = 0x10
 	IFF_PPROMISC                   = 0x20000
@@ -807,6 +851,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
@@ -827,13 +872,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
@@ -845,6 +890,7 @@ const (
 	IPV6_RECVFLOWID                = 0x46
 	IPV6_RECVHOPLIMIT              = 0x25
 	IPV6_RECVHOPOPTS               = 0x27
+	IPV6_RECVORIGDSTADDR           = 0x48
 	IPV6_RECVPATHMTU               = 0x2b
 	IPV6_RECVPKTINFO               = 0x24
 	IPV6_RECVRSSBUCKETID           = 0x47
@@ -905,10 +951,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
@@ -918,6 +962,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
@@ -926,6 +971,7 @@ const (
 	IP_RECVFLOWID                  = 0x5d
 	IP_RECVIF                      = 0x14
 	IP_RECVOPTS                    = 0x5
+	IP_RECVORIGDSTADDR             = 0x1b
 	IP_RECVRETOPTS                 = 0x6
 	IP_RECVRSSBUCKETID             = 0x5e
 	IP_RECVTOS                     = 0x44
@@ -975,6 +1021,7 @@ const (
 	MAP_EXCL                       = 0x4000
 	MAP_FILE                       = 0x0
 	MAP_FIXED                      = 0x10
+	MAP_GUARD                      = 0x2000
 	MAP_HASSEMAPHORE               = 0x200
 	MAP_NOCORE                     = 0x20000
 	MAP_NOSYNC                     = 0x800
@@ -986,6 +1033,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
@@ -1026,10 +1082,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
@@ -1058,6 +1116,7 @@ const (
 	NFDBITS                        = 0x20
 	NOFLSH                         = 0x80000000
 	NOKERNINFO                     = 0x2000000
+	NOTE_ABSTIME                   = 0x10
 	NOTE_ATTRIB                    = 0x8
 	NOTE_CHILD                     = 0x4
 	NOTE_CLOSE                     = 0x100
@@ -1212,7 +1271,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
@@ -1222,15 +1280,17 @@ 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
 	SHUT_RD                        = 0x0
 	SHUT_RDWR                      = 0x2
 	SHUT_WR                        = 0x1
@@ -1246,6 +1306,7 @@ const (
 	SIOCGETSGCNT                   = 0xc0147210
 	SIOCGETVIFCNT                  = 0xc014720f
 	SIOCGHIWAT                     = 0x40047301
+	SIOCGHWADDR                    = 0xc020693e
 	SIOCGI2C                       = 0xc020693d
 	SIOCGIFADDR                    = 0xc0206921
 	SIOCGIFBRDADDR                 = 0xc0206923
@@ -1267,8 +1328,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
@@ -1299,6 +1363,7 @@ const (
 	SIOCSIFPHYS                    = 0x80206936
 	SIOCSIFRVNET                   = 0xc020695b
 	SIOCSIFVNET                    = 0xc020695a
+	SIOCSLANPCP                    = 0x80206999
 	SIOCSLOWAT                     = 0x80047302
 	SIOCSPGRP                      = 0x80047308
 	SIOCSTUNFIB                    = 0x8020695f
@@ -1317,6 +1382,7 @@ const (
 	SO_BINTIME                     = 0x2000
 	SO_BROADCAST                   = 0x20
 	SO_DEBUG                       = 0x1
+	SO_DOMAIN                      = 0x1019
 	SO_DONTROUTE                   = 0x10
 	SO_ERROR                       = 0x1007
 	SO_KEEPALIVE                   = 0x8
@@ -1325,6 +1391,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
@@ -1337,11 +1404,19 @@ const (
 	SO_RCVTIMEO                    = 0x1006
 	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
@@ -1385,10 +1460,45 @@ const (
 	TCOFLUSH                       = 0x2
 	TCOOFF                         = 0x1
 	TCOON                          = 0x2
+	TCP_BBR_ACK_COMP_ALG           = 0x448
+	TCP_BBR_DRAIN_INC_EXTRA        = 0x43c
+	TCP_BBR_DRAIN_PG               = 0x42e
+	TCP_BBR_EXTRA_GAIN             = 0x449
+	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_ONE_RETRAN             = 0x431
+	TCP_BBR_PACE_CROSS             = 0x442
+	TCP_BBR_PACE_DEL_TAR           = 0x43f
+	TCP_BBR_PACE_PER_SEC           = 0x43e
+	TCP_BBR_PACE_SEG_MAX           = 0x440
+	TCP_BBR_PACE_SEG_MIN           = 0x441
+	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_STARTUP_EXIT_EPOCH     = 0x43d
+	TCP_BBR_STARTUP_LOSS_EXIT      = 0x432
+	TCP_BBR_STARTUP_PG             = 0x42d
+	TCP_BBR_UNLIMITED              = 0x43b
+	TCP_BBR_USEDEL_RATE            = 0x437
+	TCP_BBR_USE_LOWGAIN            = 0x433
 	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
@@ -1396,6 +1506,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
@@ -1411,8 +1527,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_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_SESS_CWV              = 0x42a
+	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
@@ -1476,6 +1614,8 @@ const (
 	TIOCTIMESTAMP                  = 0x40087459
 	TIOCUCNTL                      = 0x80047466
 	TOSTOP                         = 0x400000
+	UTIME_NOW                      = -0x1
+	UTIME_OMIT                     = -0x2
 	VDISCARD                       = 0xf
 	VDSUSP                         = 0xb
 	VEOF                           = 0x0
@@ -1487,6 +1627,8 @@ const (
 	VKILL                          = 0x5
 	VLNEXT                         = 0xe
 	VMIN                           = 0x10
+	VM_BCACHE_SIZE_MAX             = 0x70e0000
+	VM_SWZONE_SIZE_MAX             = 0x2280000
 	VQUIT                          = 0x9
 	VREPRINT                       = 0x6
 	VSTART                         = 0xc
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 9f38267..b8f7c3c 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
@@ -339,6 +339,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,6 +361,22 @@ const (
 	CTL_KERN                       = 0x1
 	CTL_MAXNAME                    = 0x18
 	CTL_NET                        = 0x4
+	DIOCGATTR                      = 0xc148648e
+	DIOCGDELETE                    = 0x80106488
+	DIOCGFLUSH                     = 0x20006487
+	DIOCGFRONTSTUFF                = 0x40086486
+	DIOCGFWHEADS                   = 0x40046483
+	DIOCGFWSECTORS                 = 0x40046482
+	DIOCGIDENT                     = 0x41006489
+	DIOCGMEDIASIZE                 = 0x40086481
+	DIOCGPHYSPATH                  = 0x4400648d
+	DIOCGPROVIDERNAME              = 0x4400648a
+	DIOCGSECTORSIZE                = 0x40046480
+	DIOCGSTRIPEOFFSET              = 0x4008648c
+	DIOCGSTRIPESIZE                = 0x4008648b
+	DIOCSKERNELDUMP                = 0x80506490
+	DIOCSKERNELDUMP_FREEBSD11      = 0x80046485
+	DIOCZONECMD                    = 0xc080648f
 	DLT_A429                       = 0xb8
 	DLT_A653_ICM                   = 0xb9
 	DLT_AIRONET_HEADER             = 0x78
@@ -379,11 +401,14 @@ const (
 	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
@@ -393,6 +418,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
@@ -406,7 +432,6 @@ const (
 	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
@@ -429,6 +454,7 @@ const (
 	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
@@ -461,8 +487,9 @@ const (
 	DLT_LINUX_PPP_WITHDIRECTION    = 0xa6
 	DLT_LINUX_SLL                  = 0x71
 	DLT_LOOP                       = 0x6c
+	DLT_LORATAP                    = 0x10e
 	DLT_LTALK                      = 0x72
-	DLT_MATCHING_MAX               = 0x104
+	DLT_MATCHING_MAX               = 0x113
 	DLT_MATCHING_MIN               = 0x68
 	DLT_MFR                        = 0xb6
 	DLT_MOST                       = 0xd3
@@ -478,14 +505,16 @@ 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
 	DLT_PKTAP                      = 0x102
 	DLT_PPI                        = 0xc0
 	DLT_PPP                        = 0x9
-	DLT_PPP_BSDOS                  = 0x10
+	DLT_PPP_BSDOS                  = 0xe
 	DLT_PPP_ETHER                  = 0x33
 	DLT_PPP_PPPD                   = 0xa6
 	DLT_PPP_SERIAL                 = 0x32
@@ -496,19 +525,25 @@ const (
 	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                 = 0xf
+	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
@@ -527,10 +562,14 @@ 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
 	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
@@ -548,6 +587,7 @@ const (
 	ECHONL                         = 0x10
 	ECHOPRT                        = 0x20
 	EVFILT_AIO                     = -0x3
+	EVFILT_EMPTY                   = -0xd
 	EVFILT_FS                      = -0x9
 	EVFILT_LIO                     = -0xa
 	EVFILT_PROC                    = -0x5
@@ -555,11 +595,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
@@ -576,6 +617,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
@@ -617,6 +659,7 @@ const (
 	IEXTEN                         = 0x400
 	IFAN_ARRIVAL                   = 0x0
 	IFAN_DEPARTURE                 = 0x1
+	IFCAP_WOL_MAGIC                = 0x2000
 	IFF_ALLMULTI                   = 0x200
 	IFF_ALTPHYS                    = 0x4000
 	IFF_BROADCAST                  = 0x2
@@ -633,6 +676,7 @@ const (
 	IFF_MONITOR                    = 0x40000
 	IFF_MULTICAST                  = 0x8000
 	IFF_NOARP                      = 0x80
+	IFF_NOGROUP                    = 0x800000
 	IFF_OACTIVE                    = 0x400
 	IFF_POINTOPOINT                = 0x10
 	IFF_PPROMISC                   = 0x20000
@@ -807,6 +851,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
@@ -827,13 +872,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
@@ -845,6 +890,7 @@ const (
 	IPV6_RECVFLOWID                = 0x46
 	IPV6_RECVHOPLIMIT              = 0x25
 	IPV6_RECVHOPOPTS               = 0x27
+	IPV6_RECVORIGDSTADDR           = 0x48
 	IPV6_RECVPATHMTU               = 0x2b
 	IPV6_RECVPKTINFO               = 0x24
 	IPV6_RECVRSSBUCKETID           = 0x47
@@ -905,10 +951,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
@@ -918,6 +962,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
@@ -926,6 +971,7 @@ const (
 	IP_RECVFLOWID                  = 0x5d
 	IP_RECVIF                      = 0x14
 	IP_RECVOPTS                    = 0x5
+	IP_RECVORIGDSTADDR             = 0x1b
 	IP_RECVRETOPTS                 = 0x6
 	IP_RECVRSSBUCKETID             = 0x5e
 	IP_RECVTOS                     = 0x44
@@ -976,6 +1022,7 @@ const (
 	MAP_EXCL                       = 0x4000
 	MAP_FILE                       = 0x0
 	MAP_FIXED                      = 0x10
+	MAP_GUARD                      = 0x2000
 	MAP_HASSEMAPHORE               = 0x200
 	MAP_NOCORE                     = 0x20000
 	MAP_NOSYNC                     = 0x800
@@ -987,6 +1034,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
@@ -1027,10 +1083,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
@@ -1059,6 +1117,7 @@ const (
 	NFDBITS                        = 0x40
 	NOFLSH                         = 0x80000000
 	NOKERNINFO                     = 0x2000000
+	NOTE_ABSTIME                   = 0x10
 	NOTE_ATTRIB                    = 0x8
 	NOTE_CHILD                     = 0x4
 	NOTE_CLOSE                     = 0x100
@@ -1213,7 +1272,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
@@ -1223,15 +1281,17 @@ 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
 	SHUT_RD                        = 0x0
 	SHUT_RDWR                      = 0x2
 	SHUT_WR                        = 0x1
@@ -1247,6 +1307,7 @@ const (
 	SIOCGETSGCNT                   = 0xc0207210
 	SIOCGETVIFCNT                  = 0xc028720f
 	SIOCGHIWAT                     = 0x40047301
+	SIOCGHWADDR                    = 0xc020693e
 	SIOCGI2C                       = 0xc020693d
 	SIOCGIFADDR                    = 0xc0206921
 	SIOCGIFBRDADDR                 = 0xc0206923
@@ -1268,8 +1329,11 @@ const (
 	SIOCGIFPDSTADDR                = 0xc0206948
 	SIOCGIFPHYS                    = 0xc0206935
 	SIOCGIFPSRCADDR                = 0xc0206947
+	SIOCGIFRSSHASH                 = 0xc0186997
+	SIOCGIFRSSKEY                  = 0xc0946996
 	SIOCGIFSTATUS                  = 0xc331693b
 	SIOCGIFXMEDIA                  = 0xc030698b
+	SIOCGLANPCP                    = 0xc0206998
 	SIOCGLOWAT                     = 0x40047303
 	SIOCGPGRP                      = 0x40047309
 	SIOCGPRIVATE_0                 = 0xc0206950
@@ -1300,6 +1364,7 @@ const (
 	SIOCSIFPHYS                    = 0x80206936
 	SIOCSIFRVNET                   = 0xc020695b
 	SIOCSIFVNET                    = 0xc020695a
+	SIOCSLANPCP                    = 0x80206999
 	SIOCSLOWAT                     = 0x80047302
 	SIOCSPGRP                      = 0x80047308
 	SIOCSTUNFIB                    = 0x8020695f
@@ -1318,6 +1383,7 @@ const (
 	SO_BINTIME                     = 0x2000
 	SO_BROADCAST                   = 0x20
 	SO_DEBUG                       = 0x1
+	SO_DOMAIN                      = 0x1019
 	SO_DONTROUTE                   = 0x10
 	SO_ERROR                       = 0x1007
 	SO_KEEPALIVE                   = 0x8
@@ -1326,6 +1392,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
@@ -1338,11 +1405,19 @@ const (
 	SO_RCVTIMEO                    = 0x1006
 	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
@@ -1386,10 +1461,45 @@ const (
 	TCOFLUSH                       = 0x2
 	TCOOFF                         = 0x1
 	TCOON                          = 0x2
+	TCP_BBR_ACK_COMP_ALG           = 0x448
+	TCP_BBR_DRAIN_INC_EXTRA        = 0x43c
+	TCP_BBR_DRAIN_PG               = 0x42e
+	TCP_BBR_EXTRA_GAIN             = 0x449
+	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_ONE_RETRAN             = 0x431
+	TCP_BBR_PACE_CROSS             = 0x442
+	TCP_BBR_PACE_DEL_TAR           = 0x43f
+	TCP_BBR_PACE_PER_SEC           = 0x43e
+	TCP_BBR_PACE_SEG_MAX           = 0x440
+	TCP_BBR_PACE_SEG_MIN           = 0x441
+	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_STARTUP_EXIT_EPOCH     = 0x43d
+	TCP_BBR_STARTUP_LOSS_EXIT      = 0x432
+	TCP_BBR_STARTUP_PG             = 0x42d
+	TCP_BBR_UNLIMITED              = 0x43b
+	TCP_BBR_USEDEL_RATE            = 0x437
+	TCP_BBR_USE_LOWGAIN            = 0x433
 	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
@@ -1397,6 +1507,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
@@ -1412,8 +1528,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_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_SESS_CWV              = 0x42a
+	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
@@ -1477,6 +1615,8 @@ const (
 	TIOCTIMESTAMP                  = 0x40107459
 	TIOCUCNTL                      = 0x80047466
 	TOSTOP                         = 0x400000
+	UTIME_NOW                      = -0x1
+	UTIME_OMIT                     = -0x2
 	VDISCARD                       = 0xf
 	VDSUSP                         = 0xb
 	VEOF                           = 0x0
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 16db56a..be14bb1 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
@@ -339,6 +339,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,6 +361,22 @@ const (
 	CTL_KERN                       = 0x1
 	CTL_MAXNAME                    = 0x18
 	CTL_NET                        = 0x4
+	DIOCGATTR                      = 0xc144648e
+	DIOCGDELETE                    = 0x80106488
+	DIOCGFLUSH                     = 0x20006487
+	DIOCGFRONTSTUFF                = 0x40086486
+	DIOCGFWHEADS                   = 0x40046483
+	DIOCGFWSECTORS                 = 0x40046482
+	DIOCGIDENT                     = 0x41006489
+	DIOCGMEDIASIZE                 = 0x40086481
+	DIOCGPHYSPATH                  = 0x4400648d
+	DIOCGPROVIDERNAME              = 0x4400648a
+	DIOCGSECTORSIZE                = 0x40046480
+	DIOCGSTRIPEOFFSET              = 0x4008648c
+	DIOCGSTRIPESIZE                = 0x4008648b
+	DIOCSKERNELDUMP                = 0x804c6490
+	DIOCSKERNELDUMP_FREEBSD11      = 0x80046485
+	DIOCZONECMD                    = 0xc06c648f
 	DLT_A429                       = 0xb8
 	DLT_A653_ICM                   = 0xb9
 	DLT_AIRONET_HEADER             = 0x78
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 1a1de34..7ce9c00 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
@@ -339,6 +339,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,6 +361,22 @@ const (
 	CTL_KERN                       = 0x1
 	CTL_MAXNAME                    = 0x18
 	CTL_NET                        = 0x4
+	DIOCGATTR                      = 0xc148648e
+	DIOCGDELETE                    = 0x80106488
+	DIOCGFLUSH                     = 0x20006487
+	DIOCGFRONTSTUFF                = 0x40086486
+	DIOCGFWHEADS                   = 0x40046483
+	DIOCGFWSECTORS                 = 0x40046482
+	DIOCGIDENT                     = 0x41006489
+	DIOCGMEDIASIZE                 = 0x40086481
+	DIOCGPHYSPATH                  = 0x4400648d
+	DIOCGPROVIDERNAME              = 0x4400648a
+	DIOCGSECTORSIZE                = 0x40046480
+	DIOCGSTRIPEOFFSET              = 0x4008648c
+	DIOCGSTRIPESIZE                = 0x4008648b
+	DIOCSKERNELDUMP                = 0x80506490
+	DIOCSKERNELDUMP_FREEBSD11      = 0x80046485
+	DIOCZONECMD                    = 0xc080648f
 	DLT_A429                       = 0xb8
 	DLT_A653_ICM                   = 0xb9
 	DLT_AIRONET_HEADER             = 0x78
@@ -379,11 +401,14 @@ const (
 	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
@@ -393,6 +418,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
@@ -406,7 +432,6 @@ const (
 	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
@@ -429,6 +454,7 @@ const (
 	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
@@ -461,8 +487,9 @@ const (
 	DLT_LINUX_PPP_WITHDIRECTION    = 0xa6
 	DLT_LINUX_SLL                  = 0x71
 	DLT_LOOP                       = 0x6c
+	DLT_LORATAP                    = 0x10e
 	DLT_LTALK                      = 0x72
-	DLT_MATCHING_MAX               = 0x104
+	DLT_MATCHING_MAX               = 0x113
 	DLT_MATCHING_MIN               = 0x68
 	DLT_MFR                        = 0xb6
 	DLT_MOST                       = 0xd3
@@ -478,14 +505,16 @@ 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
 	DLT_PKTAP                      = 0x102
 	DLT_PPI                        = 0xc0
 	DLT_PPP                        = 0x9
-	DLT_PPP_BSDOS                  = 0x10
+	DLT_PPP_BSDOS                  = 0xe
 	DLT_PPP_ETHER                  = 0x33
 	DLT_PPP_PPPD                   = 0xa6
 	DLT_PPP_SERIAL                 = 0x32
@@ -496,19 +525,25 @@ const (
 	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                 = 0xf
+	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
@@ -527,10 +562,14 @@ 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
 	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
@@ -548,6 +587,7 @@ const (
 	ECHONL                         = 0x10
 	ECHOPRT                        = 0x20
 	EVFILT_AIO                     = -0x3
+	EVFILT_EMPTY                   = -0xd
 	EVFILT_FS                      = -0x9
 	EVFILT_LIO                     = -0xa
 	EVFILT_PROC                    = -0x5
@@ -555,11 +595,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
@@ -576,6 +617,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
@@ -617,6 +659,7 @@ const (
 	IEXTEN                         = 0x400
 	IFAN_ARRIVAL                   = 0x0
 	IFAN_DEPARTURE                 = 0x1
+	IFCAP_WOL_MAGIC                = 0x2000
 	IFF_ALLMULTI                   = 0x200
 	IFF_ALTPHYS                    = 0x4000
 	IFF_BROADCAST                  = 0x2
@@ -633,6 +676,7 @@ const (
 	IFF_MONITOR                    = 0x40000
 	IFF_MULTICAST                  = 0x8000
 	IFF_NOARP                      = 0x80
+	IFF_NOGROUP                    = 0x800000
 	IFF_OACTIVE                    = 0x400
 	IFF_POINTOPOINT                = 0x10
 	IFF_PPROMISC                   = 0x20000
@@ -807,6 +851,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
@@ -827,13 +872,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
@@ -845,6 +890,7 @@ const (
 	IPV6_RECVFLOWID                = 0x46
 	IPV6_RECVHOPLIMIT              = 0x25
 	IPV6_RECVHOPOPTS               = 0x27
+	IPV6_RECVORIGDSTADDR           = 0x48
 	IPV6_RECVPATHMTU               = 0x2b
 	IPV6_RECVPKTINFO               = 0x24
 	IPV6_RECVRSSBUCKETID           = 0x47
@@ -905,10 +951,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
@@ -918,6 +962,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
@@ -926,6 +971,7 @@ const (
 	IP_RECVFLOWID                  = 0x5d
 	IP_RECVIF                      = 0x14
 	IP_RECVOPTS                    = 0x5
+	IP_RECVORIGDSTADDR             = 0x1b
 	IP_RECVRETOPTS                 = 0x6
 	IP_RECVRSSBUCKETID             = 0x5e
 	IP_RECVTOS                     = 0x44
@@ -976,6 +1022,7 @@ const (
 	MAP_EXCL                       = 0x4000
 	MAP_FILE                       = 0x0
 	MAP_FIXED                      = 0x10
+	MAP_GUARD                      = 0x2000
 	MAP_HASSEMAPHORE               = 0x200
 	MAP_NOCORE                     = 0x20000
 	MAP_NOSYNC                     = 0x800
@@ -987,6 +1034,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
@@ -1027,10 +1083,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
@@ -1059,6 +1117,7 @@ const (
 	NFDBITS                        = 0x40
 	NOFLSH                         = 0x80000000
 	NOKERNINFO                     = 0x2000000
+	NOTE_ABSTIME                   = 0x10
 	NOTE_ATTRIB                    = 0x8
 	NOTE_CHILD                     = 0x4
 	NOTE_CLOSE                     = 0x100
@@ -1213,7 +1272,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
@@ -1223,15 +1281,17 @@ 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
 	SHUT_RD                        = 0x0
 	SHUT_RDWR                      = 0x2
 	SHUT_WR                        = 0x1
@@ -1247,6 +1307,7 @@ const (
 	SIOCGETSGCNT                   = 0xc0207210
 	SIOCGETVIFCNT                  = 0xc028720f
 	SIOCGHIWAT                     = 0x40047301
+	SIOCGHWADDR                    = 0xc020693e
 	SIOCGI2C                       = 0xc020693d
 	SIOCGIFADDR                    = 0xc0206921
 	SIOCGIFBRDADDR                 = 0xc0206923
@@ -1268,8 +1329,11 @@ const (
 	SIOCGIFPDSTADDR                = 0xc0206948
 	SIOCGIFPHYS                    = 0xc0206935
 	SIOCGIFPSRCADDR                = 0xc0206947
+	SIOCGIFRSSHASH                 = 0xc0186997
+	SIOCGIFRSSKEY                  = 0xc0946996
 	SIOCGIFSTATUS                  = 0xc331693b
 	SIOCGIFXMEDIA                  = 0xc030698b
+	SIOCGLANPCP                    = 0xc0206998
 	SIOCGLOWAT                     = 0x40047303
 	SIOCGPGRP                      = 0x40047309
 	SIOCGPRIVATE_0                 = 0xc0206950
@@ -1300,6 +1364,7 @@ const (
 	SIOCSIFPHYS                    = 0x80206936
 	SIOCSIFRVNET                   = 0xc020695b
 	SIOCSIFVNET                    = 0xc020695a
+	SIOCSLANPCP                    = 0x80206999
 	SIOCSLOWAT                     = 0x80047302
 	SIOCSPGRP                      = 0x80047308
 	SIOCSTUNFIB                    = 0x8020695f
@@ -1318,6 +1383,7 @@ const (
 	SO_BINTIME                     = 0x2000
 	SO_BROADCAST                   = 0x20
 	SO_DEBUG                       = 0x1
+	SO_DOMAIN                      = 0x1019
 	SO_DONTROUTE                   = 0x10
 	SO_ERROR                       = 0x1007
 	SO_KEEPALIVE                   = 0x8
@@ -1326,6 +1392,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
@@ -1338,11 +1405,19 @@ const (
 	SO_RCVTIMEO                    = 0x1006
 	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
@@ -1386,10 +1461,45 @@ const (
 	TCOFLUSH                       = 0x2
 	TCOOFF                         = 0x1
 	TCOON                          = 0x2
+	TCP_BBR_ACK_COMP_ALG           = 0x448
+	TCP_BBR_DRAIN_INC_EXTRA        = 0x43c
+	TCP_BBR_DRAIN_PG               = 0x42e
+	TCP_BBR_EXTRA_GAIN             = 0x449
+	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_ONE_RETRAN             = 0x431
+	TCP_BBR_PACE_CROSS             = 0x442
+	TCP_BBR_PACE_DEL_TAR           = 0x43f
+	TCP_BBR_PACE_PER_SEC           = 0x43e
+	TCP_BBR_PACE_SEG_MAX           = 0x440
+	TCP_BBR_PACE_SEG_MIN           = 0x441
+	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_STARTUP_EXIT_EPOCH     = 0x43d
+	TCP_BBR_STARTUP_LOSS_EXIT      = 0x432
+	TCP_BBR_STARTUP_PG             = 0x42d
+	TCP_BBR_UNLIMITED              = 0x43b
+	TCP_BBR_USEDEL_RATE            = 0x437
+	TCP_BBR_USE_LOWGAIN            = 0x433
 	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
@@ -1397,6 +1507,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
@@ -1412,8 +1528,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_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_SESS_CWV              = 0x42a
+	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
@@ -1477,6 +1615,8 @@ const (
 	TIOCTIMESTAMP                  = 0x40107459
 	TIOCUCNTL                      = 0x80047466
 	TOSTOP                         = 0x400000
+	UTIME_NOW                      = -0x1
+	UTIME_OMIT                     = -0x2
 	VDISCARD                       = 0xf
 	VDSUSP                         = 0xb
 	VEOF                           = 0x0
@@ -1488,6 +1628,7 @@ const (
 	VKILL                          = 0x5
 	VLNEXT                         = 0xe
 	VMIN                           = 0x10
+	VM_BCACHE_SIZE_MAX             = 0x19000000
 	VQUIT                          = 0x9
 	VREPRINT                       = 0x6
 	VSTART                         = 0xc
diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go
new file mode 100644
index 0000000..b3463a8
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go
@@ -0,0 +1,2786 @@
+// Code generated by mkmerge.go; DO NOT EDIT.
+
+// +build linux
+
+package unix
+
+import "syscall"
+
+const (
+	AAFS_MAGIC                                  = 0x5a3c69f0
+	ADFS_SUPER_MAGIC                            = 0xadf5
+	AFFS_SUPER_MAGIC                            = 0xadff
+	AFS_FS_MAGIC                                = 0x6b414653
+	AFS_SUPER_MAGIC                             = 0x5346414f
+	AF_ALG                                      = 0x26
+	AF_APPLETALK                                = 0x5
+	AF_ASH                                      = 0x12
+	AF_ATMPVC                                   = 0x8
+	AF_ATMSVC                                   = 0x14
+	AF_AX25                                     = 0x3
+	AF_BLUETOOTH                                = 0x1f
+	AF_BRIDGE                                   = 0x7
+	AF_CAIF                                     = 0x25
+	AF_CAN                                      = 0x1d
+	AF_DECnet                                   = 0xc
+	AF_ECONET                                   = 0x13
+	AF_FILE                                     = 0x1
+	AF_IB                                       = 0x1b
+	AF_IEEE802154                               = 0x24
+	AF_INET                                     = 0x2
+	AF_INET6                                    = 0xa
+	AF_IPX                                      = 0x4
+	AF_IRDA                                     = 0x17
+	AF_ISDN                                     = 0x22
+	AF_IUCV                                     = 0x20
+	AF_KCM                                      = 0x29
+	AF_KEY                                      = 0xf
+	AF_LLC                                      = 0x1a
+	AF_LOCAL                                    = 0x1
+	AF_MAX                                      = 0x2d
+	AF_MPLS                                     = 0x1c
+	AF_NETBEUI                                  = 0xd
+	AF_NETLINK                                  = 0x10
+	AF_NETROM                                   = 0x6
+	AF_NFC                                      = 0x27
+	AF_PACKET                                   = 0x11
+	AF_PHONET                                   = 0x23
+	AF_PPPOX                                    = 0x18
+	AF_QIPCRTR                                  = 0x2a
+	AF_RDS                                      = 0x15
+	AF_ROSE                                     = 0xb
+	AF_ROUTE                                    = 0x10
+	AF_RXRPC                                    = 0x21
+	AF_SECURITY                                 = 0xe
+	AF_SMC                                      = 0x2b
+	AF_SNA                                      = 0x16
+	AF_TIPC                                     = 0x1e
+	AF_UNIX                                     = 0x1
+	AF_UNSPEC                                   = 0x0
+	AF_VSOCK                                    = 0x28
+	AF_WANPIPE                                  = 0x19
+	AF_X25                                      = 0x9
+	AF_XDP                                      = 0x2c
+	ALG_OP_DECRYPT                              = 0x0
+	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
+	ANON_INODE_FS_MAGIC                         = 0x9041934
+	ARPHRD_6LOWPAN                              = 0x339
+	ARPHRD_ADAPT                                = 0x108
+	ARPHRD_APPLETLK                             = 0x8
+	ARPHRD_ARCNET                               = 0x7
+	ARPHRD_ASH                                  = 0x30d
+	ARPHRD_ATM                                  = 0x13
+	ARPHRD_AX25                                 = 0x3
+	ARPHRD_BIF                                  = 0x307
+	ARPHRD_CAIF                                 = 0x336
+	ARPHRD_CAN                                  = 0x118
+	ARPHRD_CHAOS                                = 0x5
+	ARPHRD_CISCO                                = 0x201
+	ARPHRD_CSLIP                                = 0x101
+	ARPHRD_CSLIP6                               = 0x103
+	ARPHRD_DDCMP                                = 0x205
+	ARPHRD_DLCI                                 = 0xf
+	ARPHRD_ECONET                               = 0x30e
+	ARPHRD_EETHER                               = 0x2
+	ARPHRD_ETHER                                = 0x1
+	ARPHRD_EUI64                                = 0x1b
+	ARPHRD_FCAL                                 = 0x311
+	ARPHRD_FCFABRIC                             = 0x313
+	ARPHRD_FCPL                                 = 0x312
+	ARPHRD_FCPP                                 = 0x310
+	ARPHRD_FDDI                                 = 0x306
+	ARPHRD_FRAD                                 = 0x302
+	ARPHRD_HDLC                                 = 0x201
+	ARPHRD_HIPPI                                = 0x30c
+	ARPHRD_HWX25                                = 0x110
+	ARPHRD_IEEE1394                             = 0x18
+	ARPHRD_IEEE802                              = 0x6
+	ARPHRD_IEEE80211                            = 0x321
+	ARPHRD_IEEE80211_PRISM                      = 0x322
+	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
+	ARPHRD_IEEE802154                           = 0x324
+	ARPHRD_IEEE802154_MONITOR                   = 0x325
+	ARPHRD_IEEE802_TR                           = 0x320
+	ARPHRD_INFINIBAND                           = 0x20
+	ARPHRD_IP6GRE                               = 0x337
+	ARPHRD_IPDDP                                = 0x309
+	ARPHRD_IPGRE                                = 0x30a
+	ARPHRD_IRDA                                 = 0x30f
+	ARPHRD_LAPB                                 = 0x204
+	ARPHRD_LOCALTLK                             = 0x305
+	ARPHRD_LOOPBACK                             = 0x304
+	ARPHRD_METRICOM                             = 0x17
+	ARPHRD_NETLINK                              = 0x338
+	ARPHRD_NETROM                               = 0x0
+	ARPHRD_NONE                                 = 0xfffe
+	ARPHRD_PHONET                               = 0x334
+	ARPHRD_PHONET_PIPE                          = 0x335
+	ARPHRD_PIMREG                               = 0x30b
+	ARPHRD_PPP                                  = 0x200
+	ARPHRD_PRONET                               = 0x4
+	ARPHRD_RAWHDLC                              = 0x206
+	ARPHRD_RAWIP                                = 0x207
+	ARPHRD_ROSE                                 = 0x10e
+	ARPHRD_RSRVD                                = 0x104
+	ARPHRD_SIT                                  = 0x308
+	ARPHRD_SKIP                                 = 0x303
+	ARPHRD_SLIP                                 = 0x100
+	ARPHRD_SLIP6                                = 0x102
+	ARPHRD_TUNNEL                               = 0x300
+	ARPHRD_TUNNEL6                              = 0x301
+	ARPHRD_VOID                                 = 0xffff
+	ARPHRD_VSOCKMON                             = 0x33a
+	ARPHRD_X25                                  = 0x10f
+	AUTOFS_SUPER_MAGIC                          = 0x187
+	B0                                          = 0x0
+	B110                                        = 0x3
+	B1200                                       = 0x9
+	B134                                        = 0x4
+	B150                                        = 0x5
+	B1800                                       = 0xa
+	B19200                                      = 0xe
+	B200                                        = 0x6
+	B2400                                       = 0xb
+	B300                                        = 0x7
+	B38400                                      = 0xf
+	B4800                                       = 0xc
+	B50                                         = 0x1
+	B600                                        = 0x8
+	B75                                         = 0x2
+	B9600                                       = 0xd
+	BALLOON_KVM_MAGIC                           = 0x13661366
+	BDEVFS_MAGIC                                = 0x62646576
+	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
+	BINFMTFS_MAGIC                              = 0x42494e4d
+	BPF_A                                       = 0x10
+	BPF_ABS                                     = 0x20
+	BPF_ADD                                     = 0x0
+	BPF_ALU                                     = 0x4
+	BPF_ALU64                                   = 0x7
+	BPF_AND                                     = 0x50
+	BPF_ARSH                                    = 0xc0
+	BPF_B                                       = 0x10
+	BPF_BUILD_ID_SIZE                           = 0x14
+	BPF_CALL                                    = 0x80
+	BPF_DIV                                     = 0x30
+	BPF_DW                                      = 0x18
+	BPF_END                                     = 0xd0
+	BPF_EXIT                                    = 0x90
+	BPF_FROM_BE                                 = 0x8
+	BPF_FROM_LE                                 = 0x0
+	BPF_FS_MAGIC                                = 0xcafe4a11
+	BPF_F_ALLOW_MULTI                           = 0x2
+	BPF_F_ALLOW_OVERRIDE                        = 0x1
+	BPF_F_ANY_ALIGNMENT                         = 0x2
+	BPF_F_QUERY_EFFECTIVE                       = 0x1
+	BPF_F_REPLACE                               = 0x4
+	BPF_F_SLEEPABLE                             = 0x10
+	BPF_F_STRICT_ALIGNMENT                      = 0x1
+	BPF_F_TEST_RND_HI32                         = 0x4
+	BPF_F_TEST_RUN_ON_CPU                       = 0x1
+	BPF_F_TEST_STATE_FREQ                       = 0x8
+	BPF_H                                       = 0x8
+	BPF_IMM                                     = 0x0
+	BPF_IND                                     = 0x40
+	BPF_JA                                      = 0x0
+	BPF_JEQ                                     = 0x10
+	BPF_JGE                                     = 0x30
+	BPF_JGT                                     = 0x20
+	BPF_JLE                                     = 0xb0
+	BPF_JLT                                     = 0xa0
+	BPF_JMP                                     = 0x5
+	BPF_JMP32                                   = 0x6
+	BPF_JNE                                     = 0x50
+	BPF_JSET                                    = 0x40
+	BPF_JSGE                                    = 0x70
+	BPF_JSGT                                    = 0x60
+	BPF_JSLE                                    = 0xd0
+	BPF_JSLT                                    = 0xc0
+	BPF_K                                       = 0x0
+	BPF_LD                                      = 0x0
+	BPF_LDX                                     = 0x1
+	BPF_LEN                                     = 0x80
+	BPF_LL_OFF                                  = -0x200000
+	BPF_LSH                                     = 0x60
+	BPF_MAJOR_VERSION                           = 0x1
+	BPF_MAXINSNS                                = 0x1000
+	BPF_MEM                                     = 0x60
+	BPF_MEMWORDS                                = 0x10
+	BPF_MINOR_VERSION                           = 0x1
+	BPF_MISC                                    = 0x7
+	BPF_MOD                                     = 0x90
+	BPF_MOV                                     = 0xb0
+	BPF_MSH                                     = 0xa0
+	BPF_MUL                                     = 0x20
+	BPF_NEG                                     = 0x80
+	BPF_NET_OFF                                 = -0x100000
+	BPF_OBJ_NAME_LEN                            = 0x10
+	BPF_OR                                      = 0x40
+	BPF_PSEUDO_BTF_ID                           = 0x3
+	BPF_PSEUDO_CALL                             = 0x1
+	BPF_PSEUDO_MAP_FD                           = 0x1
+	BPF_PSEUDO_MAP_VALUE                        = 0x2
+	BPF_RET                                     = 0x6
+	BPF_RSH                                     = 0x70
+	BPF_ST                                      = 0x2
+	BPF_STX                                     = 0x3
+	BPF_SUB                                     = 0x10
+	BPF_TAG_SIZE                                = 0x8
+	BPF_TAX                                     = 0x0
+	BPF_TO_BE                                   = 0x8
+	BPF_TO_LE                                   = 0x0
+	BPF_TXA                                     = 0x80
+	BPF_W                                       = 0x0
+	BPF_X                                       = 0x8
+	BPF_XADD                                    = 0xc0
+	BPF_XOR                                     = 0xa0
+	BRKINT                                      = 0x2
+	BS0                                         = 0x0
+	BTRFS_SUPER_MAGIC                           = 0x9123683e
+	BTRFS_TEST_MAGIC                            = 0x73727279
+	CAN_BCM                                     = 0x2
+	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_MCNET                                   = 0x5
+	CAN_MTU                                     = 0x10
+	CAN_NPROTO                                  = 0x8
+	CAN_RAW                                     = 0x1
+	CAN_RAW_FILTER_MAX                          = 0x200
+	CAN_RTR_FLAG                                = 0x40000000
+	CAN_SFF_ID_BITS                             = 0xb
+	CAN_SFF_MASK                                = 0x7ff
+	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
+	CAP_FOWNER                                  = 0x3
+	CAP_FSETID                                  = 0x4
+	CAP_IPC_LOCK                                = 0xe
+	CAP_IPC_OWNER                               = 0xf
+	CAP_KILL                                    = 0x5
+	CAP_LAST_CAP                                = 0x28
+	CAP_LEASE                                   = 0x1c
+	CAP_LINUX_IMMUTABLE                         = 0x9
+	CAP_MAC_ADMIN                               = 0x21
+	CAP_MAC_OVERRIDE                            = 0x20
+	CAP_MKNOD                                   = 0x1b
+	CAP_NET_ADMIN                               = 0xc
+	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
+	CAP_SETUID                                  = 0x7
+	CAP_SYSLOG                                  = 0x22
+	CAP_SYS_ADMIN                               = 0x15
+	CAP_SYS_BOOT                                = 0x16
+	CAP_SYS_CHROOT                              = 0x12
+	CAP_SYS_MODULE                              = 0x10
+	CAP_SYS_NICE                                = 0x17
+	CAP_SYS_PACCT                               = 0x14
+	CAP_SYS_PTRACE                              = 0x13
+	CAP_SYS_RAWIO                               = 0x11
+	CAP_SYS_RESOURCE                            = 0x18
+	CAP_SYS_TIME                                = 0x19
+	CAP_SYS_TTY_CONFIG                          = 0x1a
+	CAP_WAKE_ALARM                              = 0x23
+	CFLUSH                                      = 0xf
+	CGROUP2_SUPER_MAGIC                         = 0x63677270
+	CGROUP_SUPER_MAGIC                          = 0x27e0eb
+	CLOCK_BOOTTIME                              = 0x7
+	CLOCK_BOOTTIME_ALARM                        = 0x9
+	CLOCK_DEFAULT                               = 0x0
+	CLOCK_EXT                                   = 0x1
+	CLOCK_INT                                   = 0x2
+	CLOCK_MONOTONIC                             = 0x1
+	CLOCK_MONOTONIC_COARSE                      = 0x6
+	CLOCK_MONOTONIC_RAW                         = 0x4
+	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
+	CLOCK_REALTIME                              = 0x0
+	CLOCK_REALTIME_ALARM                        = 0x8
+	CLOCK_REALTIME_COARSE                       = 0x5
+	CLOCK_TAI                                   = 0xb
+	CLOCK_THREAD_CPUTIME_ID                     = 0x3
+	CLOCK_TXFROMRX                              = 0x4
+	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
+	CLONE_NEWNET                                = 0x40000000
+	CLONE_NEWNS                                 = 0x20000
+	CLONE_NEWPID                                = 0x20000000
+	CLONE_NEWTIME                               = 0x80
+	CLONE_NEWUSER                               = 0x10000000
+	CLONE_NEWUTS                                = 0x4000000
+	CLONE_PARENT                                = 0x8000
+	CLONE_PARENT_SETTID                         = 0x100000
+	CLONE_PIDFD                                 = 0x1000
+	CLONE_PTRACE                                = 0x2000
+	CLONE_SETTLS                                = 0x80000
+	CLONE_SIGHAND                               = 0x800
+	CLONE_SYSVSEM                               = 0x40000
+	CLONE_THREAD                                = 0x10000
+	CLONE_UNTRACED                              = 0x800000
+	CLONE_VFORK                                 = 0x4000
+	CLONE_VM                                    = 0x100
+	CMSPAR                                      = 0x40000000
+	CODA_SUPER_MAGIC                            = 0x73757245
+	CR0                                         = 0x0
+	CRAMFS_MAGIC                                = 0x28cd3d45
+	CRTSCTS                                     = 0x80000000
+	CRYPTO_MAX_NAME                             = 0x40
+	CRYPTO_MSG_MAX                              = 0x15
+	CRYPTO_NR_MSGTYPES                          = 0x6
+	CRYPTO_REPORT_MAXSIZE                       = 0x160
+	CS5                                         = 0x0
+	CSIGNAL                                     = 0xff
+	CSTART                                      = 0x11
+	CSTATUS                                     = 0x0
+	CSTOP                                       = 0x13
+	CSUSP                                       = 0x1a
+	DAXFS_MAGIC                                 = 0x64646178
+	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_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_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 (2020-10-01)"
+	DM_VERSION_MAJOR                            = 0x4
+	DM_VERSION_MINOR                            = 0x2b
+	DM_VERSION_PATCHLEVEL                       = 0x0
+	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
+	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
+	EFD_SEMAPHORE                               = 0x1
+	EFIVARFS_MAGIC                              = 0xde5e81e4
+	EFS_SUPER_MAGIC                             = 0x414a53
+	ENCODING_DEFAULT                            = 0x0
+	ENCODING_FM_MARK                            = 0x3
+	ENCODING_FM_SPACE                           = 0x4
+	ENCODING_MANCHESTER                         = 0x5
+	ENCODING_NRZ                                = 0x1
+	ENCODING_NRZI                               = 0x2
+	EPOLLERR                                    = 0x8
+	EPOLLET                                     = 0x80000000
+	EPOLLEXCLUSIVE                              = 0x10000000
+	EPOLLHUP                                    = 0x10
+	EPOLLIN                                     = 0x1
+	EPOLLMSG                                    = 0x400
+	EPOLLONESHOT                                = 0x40000000
+	EPOLLOUT                                    = 0x4
+	EPOLLPRI                                    = 0x2
+	EPOLLRDBAND                                 = 0x80
+	EPOLLRDHUP                                  = 0x2000
+	EPOLLRDNORM                                 = 0x40
+	EPOLLWAKEUP                                 = 0x20000000
+	EPOLLWRBAND                                 = 0x200
+	EPOLLWRNORM                                 = 0x100
+	EPOLL_CTL_ADD                               = 0x1
+	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
+	ETH_P_8021Q                                 = 0x8100
+	ETH_P_80221                                 = 0x8917
+	ETH_P_802_2                                 = 0x4
+	ETH_P_802_3                                 = 0x1
+	ETH_P_802_3_MIN                             = 0x600
+	ETH_P_802_EX1                               = 0x88b5
+	ETH_P_AARP                                  = 0x80f3
+	ETH_P_AF_IUCV                               = 0xfbfb
+	ETH_P_ALL                                   = 0x3
+	ETH_P_AOE                                   = 0x88a2
+	ETH_P_ARCNET                                = 0x1a
+	ETH_P_ARP                                   = 0x806
+	ETH_P_ATALK                                 = 0x809b
+	ETH_P_ATMFATE                               = 0x8884
+	ETH_P_ATMMPOA                               = 0x884c
+	ETH_P_AX25                                  = 0x2
+	ETH_P_BATMAN                                = 0x4305
+	ETH_P_BPQ                                   = 0x8ff
+	ETH_P_CAIF                                  = 0xf7
+	ETH_P_CAN                                   = 0xc
+	ETH_P_CANFD                                 = 0xd
+	ETH_P_CONTROL                               = 0x16
+	ETH_P_CUST                                  = 0x6006
+	ETH_P_DDCMP                                 = 0x6
+	ETH_P_DEC                                   = 0x6000
+	ETH_P_DIAG                                  = 0x6005
+	ETH_P_DNA_DL                                = 0x6001
+	ETH_P_DNA_RC                                = 0x6002
+	ETH_P_DNA_RT                                = 0x6003
+	ETH_P_DSA                                   = 0x1b
+	ETH_P_DSA_8021Q                             = 0xdadb
+	ETH_P_ECONET                                = 0x18
+	ETH_P_EDSA                                  = 0xdada
+	ETH_P_ERSPAN                                = 0x88be
+	ETH_P_ERSPAN2                               = 0x22eb
+	ETH_P_FCOE                                  = 0x8906
+	ETH_P_FIP                                   = 0x8914
+	ETH_P_HDLC                                  = 0x19
+	ETH_P_HSR                                   = 0x892f
+	ETH_P_IBOE                                  = 0x8915
+	ETH_P_IEEE802154                            = 0xf6
+	ETH_P_IEEEPUP                               = 0xa00
+	ETH_P_IEEEPUPAT                             = 0xa01
+	ETH_P_IFE                                   = 0xed3e
+	ETH_P_IP                                    = 0x800
+	ETH_P_IPV6                                  = 0x86dd
+	ETH_P_IPX                                   = 0x8137
+	ETH_P_IRDA                                  = 0x17
+	ETH_P_LAT                                   = 0x6004
+	ETH_P_LINK_CTL                              = 0x886c
+	ETH_P_LLDP                                  = 0x88cc
+	ETH_P_LOCALTALK                             = 0x9
+	ETH_P_LOOP                                  = 0x60
+	ETH_P_LOOPBACK                              = 0x9000
+	ETH_P_MACSEC                                = 0x88e5
+	ETH_P_MAP                                   = 0xf9
+	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
+	ETH_P_PAE                                   = 0x888e
+	ETH_P_PAUSE                                 = 0x8808
+	ETH_P_PHONET                                = 0xf5
+	ETH_P_PPPTALK                               = 0x10
+	ETH_P_PPP_DISC                              = 0x8863
+	ETH_P_PPP_MP                                = 0x8
+	ETH_P_PPP_SES                               = 0x8864
+	ETH_P_PREAUTH                               = 0x88c7
+	ETH_P_PRP                                   = 0x88fb
+	ETH_P_PUP                                   = 0x200
+	ETH_P_PUPAT                                 = 0x201
+	ETH_P_QINQ1                                 = 0x9100
+	ETH_P_QINQ2                                 = 0x9200
+	ETH_P_QINQ3                                 = 0x9300
+	ETH_P_RARP                                  = 0x8035
+	ETH_P_SCA                                   = 0x6007
+	ETH_P_SLOW                                  = 0x8809
+	ETH_P_SNAP                                  = 0x5
+	ETH_P_TDLS                                  = 0x890d
+	ETH_P_TEB                                   = 0x6558
+	ETH_P_TIPC                                  = 0x88ca
+	ETH_P_TRAILER                               = 0x1c
+	ETH_P_TR_802_2                              = 0x11
+	ETH_P_TSN                                   = 0x22f0
+	ETH_P_WAN_PPP                               = 0x7
+	ETH_P_WCCP                                  = 0x883e
+	ETH_P_X25                                   = 0x805
+	ETH_P_XDSA                                  = 0xf8
+	EXABYTE_ENABLE_NEST                         = 0xf0
+	EXT2_SUPER_MAGIC                            = 0xef53
+	EXT3_SUPER_MAGIC                            = 0xef53
+	EXT4_SUPER_MAGIC                            = 0xef53
+	EXTA                                        = 0xe
+	EXTB                                        = 0xf
+	F2FS_SUPER_MAGIC                            = 0xf2f52010
+	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
+	FALLOC_FL_INSERT_RANGE                      = 0x20
+	FALLOC_FL_KEEP_SIZE                         = 0x1
+	FALLOC_FL_NO_HIDE_STALE                     = 0x4
+	FALLOC_FL_PUNCH_HOLE                        = 0x2
+	FALLOC_FL_UNSHARE_RANGE                     = 0x40
+	FALLOC_FL_ZERO_RANGE                        = 0x10
+	FANOTIFY_METADATA_VERSION                   = 0x3
+	FAN_ACCESS                                  = 0x1
+	FAN_ACCESS_PERM                             = 0x20000
+	FAN_ALLOW                                   = 0x1
+	FAN_ALL_CLASS_BITS                          = 0xc
+	FAN_ALL_EVENTS                              = 0x3b
+	FAN_ALL_INIT_FLAGS                          = 0x3f
+	FAN_ALL_MARK_FLAGS                          = 0xff
+	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
+	FAN_ALL_PERM_EVENTS                         = 0x30000
+	FAN_ATTRIB                                  = 0x4
+	FAN_AUDIT                                   = 0x10
+	FAN_CLASS_CONTENT                           = 0x4
+	FAN_CLASS_NOTIF                             = 0x0
+	FAN_CLASS_PRE_CONTENT                       = 0x8
+	FAN_CLOEXEC                                 = 0x1
+	FAN_CLOSE                                   = 0x18
+	FAN_CLOSE_NOWRITE                           = 0x10
+	FAN_CLOSE_WRITE                             = 0x8
+	FAN_CREATE                                  = 0x100
+	FAN_DELETE                                  = 0x200
+	FAN_DELETE_SELF                             = 0x400
+	FAN_DENY                                    = 0x2
+	FAN_ENABLE_AUDIT                            = 0x40
+	FAN_EVENT_INFO_TYPE_DFID                    = 0x3
+	FAN_EVENT_INFO_TYPE_DFID_NAME               = 0x2
+	FAN_EVENT_INFO_TYPE_FID                     = 0x1
+	FAN_EVENT_METADATA_LEN                      = 0x18
+	FAN_EVENT_ON_CHILD                          = 0x8000000
+	FAN_MARK_ADD                                = 0x1
+	FAN_MARK_DONT_FOLLOW                        = 0x4
+	FAN_MARK_FILESYSTEM                         = 0x100
+	FAN_MARK_FLUSH                              = 0x80
+	FAN_MARK_IGNORED_MASK                       = 0x20
+	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
+	FAN_MARK_INODE                              = 0x0
+	FAN_MARK_MOUNT                              = 0x10
+	FAN_MARK_ONLYDIR                            = 0x8
+	FAN_MARK_REMOVE                             = 0x2
+	FAN_MODIFY                                  = 0x2
+	FAN_MOVE                                    = 0xc0
+	FAN_MOVED_FROM                              = 0x40
+	FAN_MOVED_TO                                = 0x80
+	FAN_MOVE_SELF                               = 0x800
+	FAN_NOFD                                    = -0x1
+	FAN_NONBLOCK                                = 0x2
+	FAN_ONDIR                                   = 0x40000000
+	FAN_OPEN                                    = 0x20
+	FAN_OPEN_EXEC                               = 0x1000
+	FAN_OPEN_EXEC_PERM                          = 0x40000
+	FAN_OPEN_PERM                               = 0x10000
+	FAN_Q_OVERFLOW                              = 0x4000
+	FAN_REPORT_DFID_NAME                        = 0xc00
+	FAN_REPORT_DIR_FID                          = 0x400
+	FAN_REPORT_FID                              = 0x200
+	FAN_REPORT_NAME                             = 0x800
+	FAN_REPORT_TID                              = 0x100
+	FAN_UNLIMITED_MARKS                         = 0x20
+	FAN_UNLIMITED_QUEUE                         = 0x10
+	FD_CLOEXEC                                  = 0x1
+	FD_SETSIZE                                  = 0x400
+	FF0                                         = 0x0
+	FIDEDUPERANGE                               = 0xc0189436
+	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
+	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
+	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
+	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
+	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
+	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
+	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
+	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
+	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
+	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
+	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
+	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
+	FSCRYPT_MAX_KEY_SIZE                        = 0x40
+	FSCRYPT_MODE_ADIANTUM                       = 0x9
+	FSCRYPT_MODE_AES_128_CBC                    = 0x5
+	FSCRYPT_MODE_AES_128_CTS                    = 0x6
+	FSCRYPT_MODE_AES_256_CTS                    = 0x4
+	FSCRYPT_MODE_AES_256_XTS                    = 0x1
+	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
+	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
+	FSCRYPT_POLICY_FLAGS_PAD_4                  = 0x0
+	FSCRYPT_POLICY_FLAGS_PAD_8                  = 0x1
+	FSCRYPT_POLICY_FLAGS_PAD_MASK               = 0x3
+	FSCRYPT_POLICY_FLAGS_VALID                  = 0x1f
+	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
+	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
+	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
+	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
+	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
+	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
+	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
+	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
+	FS_ENCRYPTION_MODE_INVALID                  = 0x0
+	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
+	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
+	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
+	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
+	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
+	FS_IOC_MEASURE_VERITY                       = 0xc0046686
+	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
+	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
+	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
+	FS_KEY_DESC_PREFIX                          = "fscrypt:"
+	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
+	FS_MAX_KEY_SIZE                             = 0x40
+	FS_POLICY_FLAGS_PAD_16                      = 0x2
+	FS_POLICY_FLAGS_PAD_32                      = 0x3
+	FS_POLICY_FLAGS_PAD_4                       = 0x0
+	FS_POLICY_FLAGS_PAD_8                       = 0x1
+	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
+	FS_POLICY_FLAGS_VALID                       = 0x1f
+	FS_VERITY_FL                                = 0x100000
+	FS_VERITY_HASH_ALG_SHA256                   = 0x1
+	FS_VERITY_HASH_ALG_SHA512                   = 0x2
+	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
+	F_ADD_SEALS                                 = 0x409
+	F_DUPFD                                     = 0x0
+	F_DUPFD_CLOEXEC                             = 0x406
+	F_EXLCK                                     = 0x4
+	F_GETFD                                     = 0x1
+	F_GETFL                                     = 0x3
+	F_GETLEASE                                  = 0x401
+	F_GETOWN_EX                                 = 0x10
+	F_GETPIPE_SZ                                = 0x408
+	F_GETSIG                                    = 0xb
+	F_GET_FILE_RW_HINT                          = 0x40d
+	F_GET_RW_HINT                               = 0x40b
+	F_GET_SEALS                                 = 0x40a
+	F_LOCK                                      = 0x1
+	F_NOTIFY                                    = 0x402
+	F_OFD_GETLK                                 = 0x24
+	F_OFD_SETLK                                 = 0x25
+	F_OFD_SETLKW                                = 0x26
+	F_OK                                        = 0x0
+	F_SEAL_FUTURE_WRITE                         = 0x10
+	F_SEAL_GROW                                 = 0x4
+	F_SEAL_SEAL                                 = 0x1
+	F_SEAL_SHRINK                               = 0x2
+	F_SEAL_WRITE                                = 0x8
+	F_SETFD                                     = 0x2
+	F_SETFL                                     = 0x4
+	F_SETLEASE                                  = 0x400
+	F_SETOWN_EX                                 = 0xf
+	F_SETPIPE_SZ                                = 0x407
+	F_SETSIG                                    = 0xa
+	F_SET_FILE_RW_HINT                          = 0x40e
+	F_SET_RW_HINT                               = 0x40c
+	F_SHLCK                                     = 0x8
+	F_TEST                                      = 0x3
+	F_TLOCK                                     = 0x2
+	F_ULOCK                                     = 0x0
+	GENL_ADMIN_PERM                             = 0x1
+	GENL_CMD_CAP_DO                             = 0x2
+	GENL_CMD_CAP_DUMP                           = 0x4
+	GENL_CMD_CAP_HASPOL                         = 0x8
+	GENL_HDRLEN                                 = 0x4
+	GENL_ID_CTRL                                = 0x10
+	GENL_ID_PMCRAID                             = 0x12
+	GENL_ID_VFS_DQUOT                           = 0x11
+	GENL_MAX_ID                                 = 0x3ff
+	GENL_MIN_ID                                 = 0x10
+	GENL_NAMSIZ                                 = 0x10
+	GENL_START_ALLOC                            = 0x13
+	GENL_UNS_ADMIN_PERM                         = 0x10
+	GRND_INSECURE                               = 0x4
+	GRND_NONBLOCK                               = 0x1
+	GRND_RANDOM                                 = 0x2
+	HDIO_DRIVE_CMD                              = 0x31f
+	HDIO_DRIVE_CMD_AEB                          = 0x31e
+	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
+	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
+	HDIO_DRIVE_RESET                            = 0x31c
+	HDIO_DRIVE_TASK                             = 0x31e
+	HDIO_DRIVE_TASKFILE                         = 0x31d
+	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
+	HDIO_GETGEO                                 = 0x301
+	HDIO_GET_32BIT                              = 0x309
+	HDIO_GET_ACOUSTIC                           = 0x30f
+	HDIO_GET_ADDRESS                            = 0x310
+	HDIO_GET_BUSSTATE                           = 0x31a
+	HDIO_GET_DMA                                = 0x30b
+	HDIO_GET_IDENTITY                           = 0x30d
+	HDIO_GET_KEEPSETTINGS                       = 0x308
+	HDIO_GET_MULTCOUNT                          = 0x304
+	HDIO_GET_NICE                               = 0x30c
+	HDIO_GET_NOWERR                             = 0x30a
+	HDIO_GET_QDMA                               = 0x305
+	HDIO_GET_UNMASKINTR                         = 0x302
+	HDIO_GET_WCACHE                             = 0x30e
+	HDIO_OBSOLETE_IDENTITY                      = 0x307
+	HDIO_SCAN_HWIF                              = 0x328
+	HDIO_SET_32BIT                              = 0x324
+	HDIO_SET_ACOUSTIC                           = 0x32c
+	HDIO_SET_ADDRESS                            = 0x32f
+	HDIO_SET_BUSSTATE                           = 0x32d
+	HDIO_SET_DMA                                = 0x326
+	HDIO_SET_KEEPSETTINGS                       = 0x323
+	HDIO_SET_MULTCOUNT                          = 0x321
+	HDIO_SET_NICE                               = 0x329
+	HDIO_SET_NOWERR                             = 0x325
+	HDIO_SET_PIO_MODE                           = 0x327
+	HDIO_SET_QDMA                               = 0x32e
+	HDIO_SET_UNMASKINTR                         = 0x322
+	HDIO_SET_WCACHE                             = 0x32b
+	HDIO_SET_XFER                               = 0x306
+	HDIO_TRISTATE_HWIF                          = 0x31b
+	HDIO_UNREGISTER_HWIF                        = 0x32a
+	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
+	IFA_F_HOMEADDRESS                           = 0x10
+	IFA_F_MANAGETEMPADDR                        = 0x100
+	IFA_F_MCAUTOJOIN                            = 0x400
+	IFA_F_NODAD                                 = 0x2
+	IFA_F_NOPREFIXROUTE                         = 0x200
+	IFA_F_OPTIMISTIC                            = 0x4
+	IFA_F_PERMANENT                             = 0x80
+	IFA_F_SECONDARY                             = 0x1
+	IFA_F_STABLE_PRIVACY                        = 0x800
+	IFA_F_TEMPORARY                             = 0x1
+	IFA_F_TENTATIVE                             = 0x40
+	IFA_MAX                                     = 0xa
+	IFF_ALLMULTI                                = 0x200
+	IFF_ATTACH_QUEUE                            = 0x200
+	IFF_AUTOMEDIA                               = 0x4000
+	IFF_BROADCAST                               = 0x2
+	IFF_DEBUG                                   = 0x4
+	IFF_DETACH_QUEUE                            = 0x400
+	IFF_DORMANT                                 = 0x20000
+	IFF_DYNAMIC                                 = 0x8000
+	IFF_ECHO                                    = 0x40000
+	IFF_LOOPBACK                                = 0x8
+	IFF_LOWER_UP                                = 0x10000
+	IFF_MASTER                                  = 0x400
+	IFF_MULTICAST                               = 0x1000
+	IFF_MULTI_QUEUE                             = 0x100
+	IFF_NAPI                                    = 0x10
+	IFF_NAPI_FRAGS                              = 0x20
+	IFF_NOARP                                   = 0x80
+	IFF_NOFILTER                                = 0x1000
+	IFF_NOTRAILERS                              = 0x20
+	IFF_NO_PI                                   = 0x1000
+	IFF_ONE_QUEUE                               = 0x2000
+	IFF_PERSIST                                 = 0x800
+	IFF_POINTOPOINT                             = 0x10
+	IFF_PORTSEL                                 = 0x2000
+	IFF_PROMISC                                 = 0x100
+	IFF_RUNNING                                 = 0x40
+	IFF_SLAVE                                   = 0x800
+	IFF_TAP                                     = 0x2
+	IFF_TUN                                     = 0x1
+	IFF_TUN_EXCL                                = 0x8000
+	IFF_UP                                      = 0x1
+	IFF_VNET_HDR                                = 0x4000
+	IFF_VOLATILE                                = 0x70c5a
+	IFNAMSIZ                                    = 0x10
+	IGNBRK                                      = 0x1
+	IGNCR                                       = 0x80
+	IGNPAR                                      = 0x4
+	IMAXBEL                                     = 0x2000
+	INLCR                                       = 0x40
+	INPCK                                       = 0x10
+	IN_ACCESS                                   = 0x1
+	IN_ALL_EVENTS                               = 0xfff
+	IN_ATTRIB                                   = 0x4
+	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_CLOSE                                    = 0x18
+	IN_CLOSE_NOWRITE                            = 0x10
+	IN_CLOSE_WRITE                              = 0x8
+	IN_CREATE                                   = 0x100
+	IN_DELETE                                   = 0x200
+	IN_DELETE_SELF                              = 0x400
+	IN_DONT_FOLLOW                              = 0x2000000
+	IN_EXCL_UNLINK                              = 0x4000000
+	IN_IGNORED                                  = 0x8000
+	IN_ISDIR                                    = 0x40000000
+	IN_LOOPBACKNET                              = 0x7f
+	IN_MASK_ADD                                 = 0x20000000
+	IN_MASK_CREATE                              = 0x10000000
+	IN_MODIFY                                   = 0x2
+	IN_MOVE                                     = 0xc0
+	IN_MOVED_FROM                               = 0x40
+	IN_MOVED_TO                                 = 0x80
+	IN_MOVE_SELF                                = 0x800
+	IN_ONESHOT                                  = 0x80000000
+	IN_ONLYDIR                                  = 0x1000000
+	IN_OPEN                                     = 0x20
+	IN_Q_OVERFLOW                               = 0x4000
+	IN_UNMOUNT                                  = 0x2000
+	IPPROTO_AH                                  = 0x33
+	IPPROTO_BEETPH                              = 0x5e
+	IPPROTO_COMP                                = 0x6c
+	IPPROTO_DCCP                                = 0x21
+	IPPROTO_DSTOPTS                             = 0x3c
+	IPPROTO_EGP                                 = 0x8
+	IPPROTO_ENCAP                               = 0x62
+	IPPROTO_ESP                                 = 0x32
+	IPPROTO_ETHERNET                            = 0x8f
+	IPPROTO_FRAGMENT                            = 0x2c
+	IPPROTO_GRE                                 = 0x2f
+	IPPROTO_HOPOPTS                             = 0x0
+	IPPROTO_ICMP                                = 0x1
+	IPPROTO_ICMPV6                              = 0x3a
+	IPPROTO_IDP                                 = 0x16
+	IPPROTO_IGMP                                = 0x2
+	IPPROTO_IP                                  = 0x0
+	IPPROTO_IPIP                                = 0x4
+	IPPROTO_IPV6                                = 0x29
+	IPPROTO_L2TP                                = 0x73
+	IPPROTO_MH                                  = 0x87
+	IPPROTO_MPLS                                = 0x89
+	IPPROTO_MPTCP                               = 0x106
+	IPPROTO_MTP                                 = 0x5c
+	IPPROTO_NONE                                = 0x3b
+	IPPROTO_PIM                                 = 0x67
+	IPPROTO_PUP                                 = 0xc
+	IPPROTO_RAW                                 = 0xff
+	IPPROTO_ROUTING                             = 0x2b
+	IPPROTO_RSVP                                = 0x2e
+	IPPROTO_SCTP                                = 0x84
+	IPPROTO_TCP                                 = 0x6
+	IPPROTO_TP                                  = 0x1d
+	IPPROTO_UDP                                 = 0x11
+	IPPROTO_UDPLITE                             = 0x88
+	IPV6_2292DSTOPTS                            = 0x4
+	IPV6_2292HOPLIMIT                           = 0x8
+	IPV6_2292HOPOPTS                            = 0x3
+	IPV6_2292PKTINFO                            = 0x2
+	IPV6_2292PKTOPTIONS                         = 0x6
+	IPV6_2292RTHDR                              = 0x5
+	IPV6_ADDRFORM                               = 0x1
+	IPV6_ADDR_PREFERENCES                       = 0x48
+	IPV6_ADD_MEMBERSHIP                         = 0x14
+	IPV6_AUTHHDR                                = 0xa
+	IPV6_AUTOFLOWLABEL                          = 0x46
+	IPV6_CHECKSUM                               = 0x7
+	IPV6_DONTFRAG                               = 0x3e
+	IPV6_DROP_MEMBERSHIP                        = 0x15
+	IPV6_DSTOPTS                                = 0x3b
+	IPV6_FLOW                                   = 0x11
+	IPV6_FREEBIND                               = 0x4e
+	IPV6_HDRINCL                                = 0x24
+	IPV6_HOPLIMIT                               = 0x34
+	IPV6_HOPOPTS                                = 0x36
+	IPV6_IPSEC_POLICY                           = 0x22
+	IPV6_JOIN_ANYCAST                           = 0x1b
+	IPV6_JOIN_GROUP                             = 0x14
+	IPV6_LEAVE_ANYCAST                          = 0x1c
+	IPV6_LEAVE_GROUP                            = 0x15
+	IPV6_MINHOPCOUNT                            = 0x49
+	IPV6_MTU                                    = 0x18
+	IPV6_MTU_DISCOVER                           = 0x17
+	IPV6_MULTICAST_ALL                          = 0x1d
+	IPV6_MULTICAST_HOPS                         = 0x12
+	IPV6_MULTICAST_IF                           = 0x11
+	IPV6_MULTICAST_LOOP                         = 0x13
+	IPV6_NEXTHOP                                = 0x9
+	IPV6_ORIGDSTADDR                            = 0x4a
+	IPV6_PATHMTU                                = 0x3d
+	IPV6_PKTINFO                                = 0x32
+	IPV6_PMTUDISC_DO                            = 0x2
+	IPV6_PMTUDISC_DONT                          = 0x0
+	IPV6_PMTUDISC_INTERFACE                     = 0x4
+	IPV6_PMTUDISC_OMIT                          = 0x5
+	IPV6_PMTUDISC_PROBE                         = 0x3
+	IPV6_PMTUDISC_WANT                          = 0x1
+	IPV6_RECVDSTOPTS                            = 0x3a
+	IPV6_RECVERR                                = 0x19
+	IPV6_RECVFRAGSIZE                           = 0x4d
+	IPV6_RECVHOPLIMIT                           = 0x33
+	IPV6_RECVHOPOPTS                            = 0x35
+	IPV6_RECVORIGDSTADDR                        = 0x4a
+	IPV6_RECVPATHMTU                            = 0x3c
+	IPV6_RECVPKTINFO                            = 0x31
+	IPV6_RECVRTHDR                              = 0x38
+	IPV6_RECVTCLASS                             = 0x42
+	IPV6_ROUTER_ALERT                           = 0x16
+	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
+	IPV6_RTHDR                                  = 0x39
+	IPV6_RTHDRDSTOPTS                           = 0x37
+	IPV6_RTHDR_LOOSE                            = 0x0
+	IPV6_RTHDR_STRICT                           = 0x1
+	IPV6_RTHDR_TYPE_0                           = 0x0
+	IPV6_RXDSTOPTS                              = 0x3b
+	IPV6_RXHOPOPTS                              = 0x36
+	IPV6_TCLASS                                 = 0x43
+	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
+	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
+	IP_BIND_ADDRESS_NO_PORT                     = 0x18
+	IP_BLOCK_SOURCE                             = 0x26
+	IP_CHECKSUM                                 = 0x17
+	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
+	IP_DEFAULT_MULTICAST_TTL                    = 0x1
+	IP_DF                                       = 0x4000
+	IP_DROP_MEMBERSHIP                          = 0x24
+	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
+	IP_FREEBIND                                 = 0xf
+	IP_HDRINCL                                  = 0x3
+	IP_IPSEC_POLICY                             = 0x10
+	IP_MAXPACKET                                = 0xffff
+	IP_MAX_MEMBERSHIPS                          = 0x14
+	IP_MF                                       = 0x2000
+	IP_MINTTL                                   = 0x15
+	IP_MSFILTER                                 = 0x29
+	IP_MSS                                      = 0x240
+	IP_MTU                                      = 0xe
+	IP_MTU_DISCOVER                             = 0xa
+	IP_MULTICAST_ALL                            = 0x31
+	IP_MULTICAST_IF                             = 0x20
+	IP_MULTICAST_LOOP                           = 0x22
+	IP_MULTICAST_TTL                            = 0x21
+	IP_NODEFRAG                                 = 0x16
+	IP_OFFMASK                                  = 0x1fff
+	IP_OPTIONS                                  = 0x4
+	IP_ORIGDSTADDR                              = 0x14
+	IP_PASSSEC                                  = 0x12
+	IP_PKTINFO                                  = 0x8
+	IP_PKTOPTIONS                               = 0x9
+	IP_PMTUDISC                                 = 0xa
+	IP_PMTUDISC_DO                              = 0x2
+	IP_PMTUDISC_DONT                            = 0x0
+	IP_PMTUDISC_INTERFACE                       = 0x4
+	IP_PMTUDISC_OMIT                            = 0x5
+	IP_PMTUDISC_PROBE                           = 0x3
+	IP_PMTUDISC_WANT                            = 0x1
+	IP_RECVERR                                  = 0xb
+	IP_RECVFRAGSIZE                             = 0x19
+	IP_RECVOPTS                                 = 0x6
+	IP_RECVORIGDSTADDR                          = 0x14
+	IP_RECVRETOPTS                              = 0x7
+	IP_RECVTOS                                  = 0xd
+	IP_RECVTTL                                  = 0xc
+	IP_RETOPTS                                  = 0x7
+	IP_RF                                       = 0x8000
+	IP_ROUTER_ALERT                             = 0x5
+	IP_TOS                                      = 0x1
+	IP_TRANSPARENT                              = 0x13
+	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
+	IUTF8                                       = 0x4000
+	IXANY                                       = 0x800
+	JFFS2_SUPER_MAGIC                           = 0x72b6
+	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_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_S390                             = 0x160000
+	KEXEC_ARCH_SH                               = 0x2a0000
+	KEXEC_ARCH_X86_64                           = 0x3e0000
+	KEXEC_FILE_NO_INITRAMFS                     = 0x4
+	KEXEC_FILE_ON_CRASH                         = 0x2
+	KEXEC_FILE_UNLOAD                           = 0x1
+	KEXEC_ON_CRASH                              = 0x1
+	KEXEC_PRESERVE_CONTEXT                      = 0x2
+	KEXEC_SEGMENT_MAX                           = 0x10
+	KEYCTL_ASSUME_AUTHORITY                     = 0x10
+	KEYCTL_CAPABILITIES                         = 0x1f
+	KEYCTL_CAPS0_BIG_KEY                        = 0x10
+	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
+	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
+	KEYCTL_CAPS0_INVALIDATE                     = 0x20
+	KEYCTL_CAPS0_MOVE                           = 0x80
+	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
+	KEYCTL_CLEAR                                = 0x7
+	KEYCTL_DESCRIBE                             = 0x6
+	KEYCTL_DH_COMPUTE                           = 0x17
+	KEYCTL_GET_KEYRING_ID                       = 0x0
+	KEYCTL_GET_PERSISTENT                       = 0x16
+	KEYCTL_GET_SECURITY                         = 0x11
+	KEYCTL_INSTANTIATE                          = 0xc
+	KEYCTL_INSTANTIATE_IOV                      = 0x14
+	KEYCTL_INVALIDATE                           = 0x15
+	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
+	KEYCTL_LINK                                 = 0x8
+	KEYCTL_MOVE                                 = 0x1e
+	KEYCTL_MOVE_EXCL                            = 0x1
+	KEYCTL_NEGATE                               = 0xd
+	KEYCTL_PKEY_DECRYPT                         = 0x1a
+	KEYCTL_PKEY_ENCRYPT                         = 0x19
+	KEYCTL_PKEY_QUERY                           = 0x18
+	KEYCTL_PKEY_SIGN                            = 0x1b
+	KEYCTL_PKEY_VERIFY                          = 0x1c
+	KEYCTL_READ                                 = 0xb
+	KEYCTL_REJECT                               = 0x13
+	KEYCTL_RESTRICT_KEYRING                     = 0x1d
+	KEYCTL_REVOKE                               = 0x3
+	KEYCTL_SEARCH                               = 0xa
+	KEYCTL_SESSION_TO_PARENT                    = 0x12
+	KEYCTL_SETPERM                              = 0x5
+	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
+	KEYCTL_SET_TIMEOUT                          = 0xf
+	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
+	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
+	KEYCTL_SUPPORTS_SIGN                        = 0x4
+	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
+	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
+	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
+	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
+	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
+	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
+	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
+	KEY_SPEC_GROUP_KEYRING                      = -0x6
+	KEY_SPEC_PROCESS_KEYRING                    = -0x2
+	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
+	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
+	KEY_SPEC_SESSION_KEYRING                    = -0x3
+	KEY_SPEC_THREAD_KEYRING                     = -0x1
+	KEY_SPEC_USER_KEYRING                       = -0x4
+	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
+	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
+	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
+	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
+	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
+	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
+	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
+	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
+	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
+	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
+	LINUX_REBOOT_MAGIC2                         = 0x28121969
+	LOCK_EX                                     = 0x2
+	LOCK_NB                                     = 0x4
+	LOCK_SH                                     = 0x1
+	LOCK_UN                                     = 0x8
+	LOOP_CLR_FD                                 = 0x4c01
+	LOOP_CTL_ADD                                = 0x4c80
+	LOOP_CTL_GET_FREE                           = 0x4c82
+	LOOP_CTL_REMOVE                             = 0x4c81
+	LOOP_GET_STATUS                             = 0x4c03
+	LOOP_GET_STATUS64                           = 0x4c05
+	LOOP_SET_BLOCK_SIZE                         = 0x4c09
+	LOOP_SET_CAPACITY                           = 0x4c07
+	LOOP_SET_DIRECT_IO                          = 0x4c08
+	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
+	MADV_DONTDUMP                               = 0x10
+	MADV_DONTFORK                               = 0xa
+	MADV_DONTNEED                               = 0x4
+	MADV_FREE                                   = 0x8
+	MADV_HUGEPAGE                               = 0xe
+	MADV_HWPOISON                               = 0x64
+	MADV_KEEPONFORK                             = 0x13
+	MADV_MERGEABLE                              = 0xc
+	MADV_NOHUGEPAGE                             = 0xf
+	MADV_NORMAL                                 = 0x0
+	MADV_PAGEOUT                                = 0x15
+	MADV_RANDOM                                 = 0x1
+	MADV_REMOVE                                 = 0x9
+	MADV_SEQUENTIAL                             = 0x2
+	MADV_UNMERGEABLE                            = 0xd
+	MADV_WILLNEED                               = 0x3
+	MADV_WIPEONFORK                             = 0x12
+	MAP_FILE                                    = 0x0
+	MAP_FIXED                                   = 0x10
+	MAP_FIXED_NOREPLACE                         = 0x100000
+	MAP_HUGE_MASK                               = 0x3f
+	MAP_HUGE_SHIFT                              = 0x1a
+	MAP_PRIVATE                                 = 0x2
+	MAP_SHARED                                  = 0x1
+	MAP_SHARED_VALIDATE                         = 0x3
+	MAP_TYPE                                    = 0xf
+	MCAST_BLOCK_SOURCE                          = 0x2b
+	MCAST_EXCLUDE                               = 0x0
+	MCAST_INCLUDE                               = 0x1
+	MCAST_JOIN_GROUP                            = 0x2a
+	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
+	MCAST_LEAVE_GROUP                           = 0x2d
+	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
+	MCAST_MSFILTER                              = 0x30
+	MCAST_UNBLOCK_SOURCE                        = 0x2c
+	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                               = 0x3f
+	MFD_HUGE_SHIFT                              = 0x1a
+	MINIX2_SUPER_MAGIC                          = 0x2468
+	MINIX2_SUPER_MAGIC2                         = 0x2478
+	MINIX3_SUPER_MAGIC                          = 0x4d5a
+	MINIX_SUPER_MAGIC                           = 0x137f
+	MINIX_SUPER_MAGIC2                          = 0x138f
+	MNT_DETACH                                  = 0x2
+	MNT_EXPIRE                                  = 0x4
+	MNT_FORCE                                   = 0x1
+	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
+	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
+	MSDOS_SUPER_MAGIC                           = 0x4d44
+	MSG_BATCH                                   = 0x40000
+	MSG_CMSG_CLOEXEC                            = 0x40000000
+	MSG_CONFIRM                                 = 0x800
+	MSG_CTRUNC                                  = 0x8
+	MSG_DONTROUTE                               = 0x4
+	MSG_DONTWAIT                                = 0x40
+	MSG_EOR                                     = 0x80
+	MSG_ERRQUEUE                                = 0x2000
+	MSG_FASTOPEN                                = 0x20000000
+	MSG_FIN                                     = 0x200
+	MSG_MORE                                    = 0x8000
+	MSG_NOSIGNAL                                = 0x4000
+	MSG_OOB                                     = 0x1
+	MSG_PEEK                                    = 0x2
+	MSG_PROXY                                   = 0x10
+	MSG_RST                                     = 0x1000
+	MSG_SYN                                     = 0x400
+	MSG_TRUNC                                   = 0x20
+	MSG_TRYHARD                                 = 0x4
+	MSG_WAITALL                                 = 0x100
+	MSG_WAITFORONE                              = 0x10000
+	MSG_ZEROCOPY                                = 0x4000000
+	MS_ACTIVE                                   = 0x40000000
+	MS_ASYNC                                    = 0x1
+	MS_BIND                                     = 0x1000
+	MS_BORN                                     = 0x20000000
+	MS_DIRSYNC                                  = 0x80
+	MS_INVALIDATE                               = 0x2
+	MS_I_VERSION                                = 0x800000
+	MS_KERNMOUNT                                = 0x400000
+	MS_LAZYTIME                                 = 0x2000000
+	MS_MANDLOCK                                 = 0x40
+	MS_MGC_MSK                                  = 0xffff0000
+	MS_MGC_VAL                                  = 0xc0ed0000
+	MS_MOVE                                     = 0x2000
+	MS_NOATIME                                  = 0x400
+	MS_NODEV                                    = 0x4
+	MS_NODIRATIME                               = 0x800
+	MS_NOEXEC                                   = 0x8
+	MS_NOREMOTELOCK                             = 0x8000000
+	MS_NOSEC                                    = 0x10000000
+	MS_NOSUID                                   = 0x2
+	MS_NOSYMFOLLOW                              = 0x100
+	MS_NOUSER                                   = -0x80000000
+	MS_POSIXACL                                 = 0x10000
+	MS_PRIVATE                                  = 0x40000
+	MS_RDONLY                                   = 0x1
+	MS_REC                                      = 0x4000
+	MS_RELATIME                                 = 0x200000
+	MS_REMOUNT                                  = 0x20
+	MS_RMT_MASK                                 = 0x2800051
+	MS_SHARED                                   = 0x100000
+	MS_SILENT                                   = 0x8000
+	MS_SLAVE                                    = 0x80000
+	MS_STRICTATIME                              = 0x1000000
+	MS_SUBMOUNT                                 = 0x4000000
+	MS_SYNC                                     = 0x4
+	MS_SYNCHRONOUS                              = 0x10
+	MS_UNBINDABLE                               = 0x20000
+	MS_VERBOSE                                  = 0x8000
+	MTD_INODE_FS_MAGIC                          = 0x11307854
+	NAME_MAX                                    = 0xff
+	NCP_SUPER_MAGIC                             = 0x564c
+	NETLINK_ADD_MEMBERSHIP                      = 0x1
+	NETLINK_AUDIT                               = 0x9
+	NETLINK_BROADCAST_ERROR                     = 0x4
+	NETLINK_CAP_ACK                             = 0xa
+	NETLINK_CONNECTOR                           = 0xb
+	NETLINK_CRYPTO                              = 0x15
+	NETLINK_DNRTMSG                             = 0xe
+	NETLINK_DROP_MEMBERSHIP                     = 0x2
+	NETLINK_ECRYPTFS                            = 0x13
+	NETLINK_EXT_ACK                             = 0xb
+	NETLINK_FIB_LOOKUP                          = 0xa
+	NETLINK_FIREWALL                            = 0x3
+	NETLINK_GENERIC                             = 0x10
+	NETLINK_GET_STRICT_CHK                      = 0xc
+	NETLINK_INET_DIAG                           = 0x4
+	NETLINK_IP6_FW                              = 0xd
+	NETLINK_ISCSI                               = 0x8
+	NETLINK_KOBJECT_UEVENT                      = 0xf
+	NETLINK_LISTEN_ALL_NSID                     = 0x8
+	NETLINK_LIST_MEMBERSHIPS                    = 0x9
+	NETLINK_NETFILTER                           = 0xc
+	NETLINK_NFLOG                               = 0x5
+	NETLINK_NO_ENOBUFS                          = 0x5
+	NETLINK_PKTINFO                             = 0x3
+	NETLINK_RDMA                                = 0x14
+	NETLINK_ROUTE                               = 0x0
+	NETLINK_RX_RING                             = 0x6
+	NETLINK_SCSITRANSPORT                       = 0x12
+	NETLINK_SELINUX                             = 0x7
+	NETLINK_SMC                                 = 0x16
+	NETLINK_SOCK_DIAG                           = 0x4
+	NETLINK_TX_RING                             = 0x7
+	NETLINK_UNUSED                              = 0x1
+	NETLINK_USERSOCK                            = 0x2
+	NETLINK_XFRM                                = 0x6
+	NETNSA_MAX                                  = 0x5
+	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
+	NFNETLINK_V0                                = 0x0
+	NFNLGRP_ACCT_QUOTA                          = 0x8
+	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
+	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
+	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
+	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
+	NFNLGRP_CONNTRACK_NEW                       = 0x1
+	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
+	NFNLGRP_MAX                                 = 0x9
+	NFNLGRP_NFTABLES                            = 0x7
+	NFNLGRP_NFTRACE                             = 0x9
+	NFNLGRP_NONE                                = 0x0
+	NFNL_BATCH_MAX                              = 0x1
+	NFNL_MSG_BATCH_BEGIN                        = 0x10
+	NFNL_MSG_BATCH_END                          = 0x11
+	NFNL_NFA_NEST                               = 0x8000
+	NFNL_SUBSYS_ACCT                            = 0x7
+	NFNL_SUBSYS_COUNT                           = 0xc
+	NFNL_SUBSYS_CTHELPER                        = 0x9
+	NFNL_SUBSYS_CTNETLINK                       = 0x1
+	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
+	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
+	NFNL_SUBSYS_IPSET                           = 0x6
+	NFNL_SUBSYS_NFTABLES                        = 0xa
+	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
+	NFNL_SUBSYS_NONE                            = 0x0
+	NFNL_SUBSYS_OSF                             = 0x5
+	NFNL_SUBSYS_QUEUE                           = 0x3
+	NFNL_SUBSYS_ULOG                            = 0x4
+	NFS_SUPER_MAGIC                             = 0x6969
+	NILFS_SUPER_MAGIC                           = 0x3434
+	NL0                                         = 0x0
+	NL1                                         = 0x100
+	NLA_ALIGNTO                                 = 0x4
+	NLA_F_NESTED                                = 0x8000
+	NLA_F_NET_BYTEORDER                         = 0x4000
+	NLA_HDRLEN                                  = 0x4
+	NLMSG_ALIGNTO                               = 0x4
+	NLMSG_DONE                                  = 0x3
+	NLMSG_ERROR                                 = 0x2
+	NLMSG_HDRLEN                                = 0x10
+	NLMSG_MIN_TYPE                              = 0x10
+	NLMSG_NOOP                                  = 0x1
+	NLMSG_OVERRUN                               = 0x4
+	NLM_F_ACK                                   = 0x4
+	NLM_F_ACK_TLVS                              = 0x200
+	NLM_F_APPEND                                = 0x800
+	NLM_F_ATOMIC                                = 0x400
+	NLM_F_CAPPED                                = 0x100
+	NLM_F_CREATE                                = 0x400
+	NLM_F_DUMP                                  = 0x300
+	NLM_F_DUMP_FILTERED                         = 0x20
+	NLM_F_DUMP_INTR                             = 0x10
+	NLM_F_ECHO                                  = 0x8
+	NLM_F_EXCL                                  = 0x200
+	NLM_F_MATCH                                 = 0x200
+	NLM_F_MULTI                                 = 0x2
+	NLM_F_NONREC                                = 0x100
+	NLM_F_REPLACE                               = 0x100
+	NLM_F_REQUEST                               = 0x1
+	NLM_F_ROOT                                  = 0x100
+	NSFS_MAGIC                                  = 0x6e736673
+	OCFS2_SUPER_MAGIC                           = 0x7461636f
+	OCRNL                                       = 0x8
+	OFDEL                                       = 0x80
+	OFILL                                       = 0x40
+	ONLRET                                      = 0x20
+	ONOCR                                       = 0x10
+	OPENPROM_SUPER_MAGIC                        = 0x9fa1
+	OPOST                                       = 0x1
+	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
+	O_ACCMODE                                   = 0x3
+	O_RDONLY                                    = 0x0
+	O_RDWR                                      = 0x2
+	O_WRONLY                                    = 0x1
+	PACKET_ADD_MEMBERSHIP                       = 0x1
+	PACKET_AUXDATA                              = 0x8
+	PACKET_BROADCAST                            = 0x1
+	PACKET_COPY_THRESH                          = 0x7
+	PACKET_DROP_MEMBERSHIP                      = 0x2
+	PACKET_FANOUT                               = 0x12
+	PACKET_FANOUT_CBPF                          = 0x6
+	PACKET_FANOUT_CPU                           = 0x2
+	PACKET_FANOUT_DATA                          = 0x16
+	PACKET_FANOUT_EBPF                          = 0x7
+	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
+	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
+	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
+	PACKET_FANOUT_HASH                          = 0x0
+	PACKET_FANOUT_LB                            = 0x1
+	PACKET_FANOUT_QM                            = 0x5
+	PACKET_FANOUT_RND                           = 0x4
+	PACKET_FANOUT_ROLLOVER                      = 0x3
+	PACKET_FASTROUTE                            = 0x6
+	PACKET_HDRLEN                               = 0xb
+	PACKET_HOST                                 = 0x0
+	PACKET_IGNORE_OUTGOING                      = 0x17
+	PACKET_KERNEL                               = 0x7
+	PACKET_LOOPBACK                             = 0x5
+	PACKET_LOSS                                 = 0xe
+	PACKET_MR_ALLMULTI                          = 0x2
+	PACKET_MR_MULTICAST                         = 0x0
+	PACKET_MR_PROMISC                           = 0x1
+	PACKET_MR_UNICAST                           = 0x3
+	PACKET_MULTICAST                            = 0x2
+	PACKET_ORIGDEV                              = 0x9
+	PACKET_OTHERHOST                            = 0x3
+	PACKET_OUTGOING                             = 0x4
+	PACKET_QDISC_BYPASS                         = 0x14
+	PACKET_RECV_OUTPUT                          = 0x3
+	PACKET_RESERVE                              = 0xc
+	PACKET_ROLLOVER_STATS                       = 0x15
+	PACKET_RX_RING                              = 0x5
+	PACKET_STATISTICS                           = 0x6
+	PACKET_TIMESTAMP                            = 0x11
+	PACKET_TX_HAS_OFF                           = 0x13
+	PACKET_TX_RING                              = 0xd
+	PACKET_TX_TIMESTAMP                         = 0x10
+	PACKET_USER                                 = 0x6
+	PACKET_VERSION                              = 0xa
+	PACKET_VNET_HDR                             = 0xf
+	PARITY_CRC16_PR0                            = 0x2
+	PARITY_CRC16_PR0_CCITT                      = 0x4
+	PARITY_CRC16_PR1                            = 0x3
+	PARITY_CRC16_PR1_CCITT                      = 0x5
+	PARITY_CRC32_PR0_CCITT                      = 0x6
+	PARITY_CRC32_PR1_CCITT                      = 0x7
+	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_AUX_FLAG_COLLISION                     = 0x8
+	PERF_AUX_FLAG_OVERWRITE                     = 0x2
+	PERF_AUX_FLAG_PARTIAL                       = 0x4
+	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_MAX_CONTEXTS_PER_STACK                 = 0x8
+	PERF_MAX_STACK_DEPTH                        = 0x7f
+	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_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_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
+	PIPEFS_MAGIC                                = 0x50495045
+	PPC_CMM_MAGIC                               = 0xc7571590
+	PPPIOCGNPMODE                               = 0xc008744c
+	PPPIOCNEWUNIT                               = 0xc004743e
+	PRIO_PGRP                                   = 0x1
+	PRIO_PROCESS                                = 0x0
+	PRIO_USER                                   = 0x2
+	PROC_SUPER_MAGIC                            = 0x9fa0
+	PROT_EXEC                                   = 0x4
+	PROT_GROWSDOWN                              = 0x1000000
+	PROT_GROWSUP                                = 0x2000000
+	PROT_NONE                                   = 0x0
+	PROT_READ                                   = 0x1
+	PROT_WRITE                                  = 0x2
+	PR_CAPBSET_DROP                             = 0x18
+	PR_CAPBSET_READ                             = 0x17
+	PR_CAP_AMBIENT                              = 0x2f
+	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
+	PR_CAP_AMBIENT_IS_SET                       = 0x1
+	PR_CAP_AMBIENT_LOWER                        = 0x3
+	PR_CAP_AMBIENT_RAISE                        = 0x2
+	PR_ENDIAN_BIG                               = 0x0
+	PR_ENDIAN_LITTLE                            = 0x1
+	PR_ENDIAN_PPC_LITTLE                        = 0x2
+	PR_FPEMU_NOPRINT                            = 0x1
+	PR_FPEMU_SIGFPE                             = 0x2
+	PR_FP_EXC_ASYNC                             = 0x2
+	PR_FP_EXC_DISABLED                          = 0x0
+	PR_FP_EXC_DIV                               = 0x10000
+	PR_FP_EXC_INV                               = 0x100000
+	PR_FP_EXC_NONRECOV                          = 0x1
+	PR_FP_EXC_OVF                               = 0x20000
+	PR_FP_EXC_PRECISE                           = 0x3
+	PR_FP_EXC_RES                               = 0x80000
+	PR_FP_EXC_SW_ENABLE                         = 0x80
+	PR_FP_EXC_UND                               = 0x40000
+	PR_FP_MODE_FR                               = 0x1
+	PR_FP_MODE_FRE                              = 0x2
+	PR_GET_CHILD_SUBREAPER                      = 0x25
+	PR_GET_DUMPABLE                             = 0x3
+	PR_GET_ENDIAN                               = 0x13
+	PR_GET_FPEMU                                = 0x9
+	PR_GET_FPEXC                                = 0xb
+	PR_GET_FP_MODE                              = 0x2e
+	PR_GET_IO_FLUSHER                           = 0x3a
+	PR_GET_KEEPCAPS                             = 0x7
+	PR_GET_NAME                                 = 0x10
+	PR_GET_NO_NEW_PRIVS                         = 0x27
+	PR_GET_PDEATHSIG                            = 0x2
+	PR_GET_SECCOMP                              = 0x15
+	PR_GET_SECUREBITS                           = 0x1b
+	PR_GET_SPECULATION_CTRL                     = 0x34
+	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
+	PR_GET_THP_DISABLE                          = 0x2a
+	PR_GET_TID_ADDRESS                          = 0x28
+	PR_GET_TIMERSLACK                           = 0x1e
+	PR_GET_TIMING                               = 0xd
+	PR_GET_TSC                                  = 0x19
+	PR_GET_UNALIGN                              = 0x5
+	PR_MCE_KILL                                 = 0x21
+	PR_MCE_KILL_CLEAR                           = 0x0
+	PR_MCE_KILL_DEFAULT                         = 0x2
+	PR_MCE_KILL_EARLY                           = 0x1
+	PR_MCE_KILL_GET                             = 0x22
+	PR_MCE_KILL_LATE                            = 0x0
+	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_RESET_KEYS                           = 0x36
+	PR_SET_CHILD_SUBREAPER                      = 0x24
+	PR_SET_DUMPABLE                             = 0x4
+	PR_SET_ENDIAN                               = 0x14
+	PR_SET_FPEMU                                = 0xa
+	PR_SET_FPEXC                                = 0xc
+	PR_SET_FP_MODE                              = 0x2d
+	PR_SET_IO_FLUSHER                           = 0x39
+	PR_SET_KEEPCAPS                             = 0x8
+	PR_SET_MM                                   = 0x23
+	PR_SET_MM_ARG_END                           = 0x9
+	PR_SET_MM_ARG_START                         = 0x8
+	PR_SET_MM_AUXV                              = 0xc
+	PR_SET_MM_BRK                               = 0x7
+	PR_SET_MM_END_CODE                          = 0x2
+	PR_SET_MM_END_DATA                          = 0x4
+	PR_SET_MM_ENV_END                           = 0xb
+	PR_SET_MM_ENV_START                         = 0xa
+	PR_SET_MM_EXE_FILE                          = 0xd
+	PR_SET_MM_MAP                               = 0xe
+	PR_SET_MM_MAP_SIZE                          = 0xf
+	PR_SET_MM_START_BRK                         = 0x6
+	PR_SET_MM_START_CODE                        = 0x1
+	PR_SET_MM_START_DATA                        = 0x3
+	PR_SET_MM_START_STACK                       = 0x5
+	PR_SET_NAME                                 = 0xf
+	PR_SET_NO_NEW_PRIVS                         = 0x26
+	PR_SET_PDEATHSIG                            = 0x1
+	PR_SET_PTRACER                              = 0x59616d61
+	PR_SET_SECCOMP                              = 0x16
+	PR_SET_SECUREBITS                           = 0x1c
+	PR_SET_SPECULATION_CTRL                     = 0x35
+	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_SPEC_DISABLE                             = 0x4
+	PR_SPEC_DISABLE_NOEXEC                      = 0x10
+	PR_SPEC_ENABLE                              = 0x2
+	PR_SPEC_FORCE_DISABLE                       = 0x8
+	PR_SPEC_INDIRECT_BRANCH                     = 0x1
+	PR_SPEC_NOT_AFFECTED                        = 0x0
+	PR_SPEC_PRCTL                               = 0x1
+	PR_SPEC_STORE_BYPASS                        = 0x0
+	PR_SVE_GET_VL                               = 0x33
+	PR_SVE_SET_VL                               = 0x32
+	PR_SVE_SET_VL_ONEXEC                        = 0x40000
+	PR_SVE_VL_INHERIT                           = 0x20000
+	PR_SVE_VL_LEN_MASK                          = 0xffff
+	PR_TAGGED_ADDR_ENABLE                       = 0x1
+	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
+	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
+	PR_TIMING_STATISTICAL                       = 0x0
+	PR_TIMING_TIMESTAMP                         = 0x1
+	PR_TSC_ENABLE                               = 0x1
+	PR_TSC_SIGSEGV                              = 0x2
+	PR_UNALIGN_NOPRINT                          = 0x1
+	PR_UNALIGN_SIGBUS                           = 0x2
+	PSTOREFS_MAGIC                              = 0x6165676c
+	PTRACE_ATTACH                               = 0x10
+	PTRACE_CONT                                 = 0x7
+	PTRACE_DETACH                               = 0x11
+	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
+	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
+	PTRACE_EVENT_CLONE                          = 0x3
+	PTRACE_EVENT_EXEC                           = 0x4
+	PTRACE_EVENT_EXIT                           = 0x6
+	PTRACE_EVENT_FORK                           = 0x1
+	PTRACE_EVENT_SECCOMP                        = 0x7
+	PTRACE_EVENT_STOP                           = 0x80
+	PTRACE_EVENT_VFORK                          = 0x2
+	PTRACE_EVENT_VFORK_DONE                     = 0x5
+	PTRACE_GETEVENTMSG                          = 0x4201
+	PTRACE_GETREGS                              = 0xc
+	PTRACE_GETREGSET                            = 0x4204
+	PTRACE_GETSIGINFO                           = 0x4202
+	PTRACE_GETSIGMASK                           = 0x420a
+	PTRACE_GET_SYSCALL_INFO                     = 0x420e
+	PTRACE_INTERRUPT                            = 0x4207
+	PTRACE_KILL                                 = 0x8
+	PTRACE_LISTEN                               = 0x4208
+	PTRACE_O_EXITKILL                           = 0x100000
+	PTRACE_O_MASK                               = 0x3000ff
+	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
+	PTRACE_O_TRACECLONE                         = 0x8
+	PTRACE_O_TRACEEXEC                          = 0x10
+	PTRACE_O_TRACEEXIT                          = 0x40
+	PTRACE_O_TRACEFORK                          = 0x2
+	PTRACE_O_TRACESECCOMP                       = 0x80
+	PTRACE_O_TRACESYSGOOD                       = 0x1
+	PTRACE_O_TRACEVFORK                         = 0x4
+	PTRACE_O_TRACEVFORKDONE                     = 0x20
+	PTRACE_PEEKDATA                             = 0x2
+	PTRACE_PEEKSIGINFO                          = 0x4209
+	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
+	PTRACE_PEEKTEXT                             = 0x1
+	PTRACE_PEEKUSR                              = 0x3
+	PTRACE_POKEDATA                             = 0x5
+	PTRACE_POKETEXT                             = 0x4
+	PTRACE_POKEUSR                              = 0x6
+	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
+	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
+	PTRACE_SEIZE                                = 0x4206
+	PTRACE_SETOPTIONS                           = 0x4200
+	PTRACE_SETREGS                              = 0xd
+	PTRACE_SETREGSET                            = 0x4205
+	PTRACE_SETSIGINFO                           = 0x4203
+	PTRACE_SETSIGMASK                           = 0x420b
+	PTRACE_SINGLESTEP                           = 0x9
+	PTRACE_SYSCALL                              = 0x18
+	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
+	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
+	PTRACE_SYSCALL_INFO_NONE                    = 0x0
+	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
+	PTRACE_TRACEME                              = 0x0
+	QNX4_SUPER_MAGIC                            = 0x2f
+	QNX6_SUPER_MAGIC                            = 0x68191122
+	RAMFS_MAGIC                                 = 0x858458f6
+	RDTGROUP_SUPER_MAGIC                        = 0x7655821
+	REISERFS_SUPER_MAGIC                        = 0x52654973
+	RENAME_EXCHANGE                             = 0x2
+	RENAME_NOREPLACE                            = 0x1
+	RENAME_WHITEOUT                             = 0x4
+	RLIMIT_CORE                                 = 0x4
+	RLIMIT_CPU                                  = 0x0
+	RLIMIT_DATA                                 = 0x2
+	RLIMIT_FSIZE                                = 0x1
+	RLIMIT_LOCKS                                = 0xa
+	RLIMIT_MSGQUEUE                             = 0xc
+	RLIMIT_NICE                                 = 0xd
+	RLIMIT_RTPRIO                               = 0xe
+	RLIMIT_RTTIME                               = 0xf
+	RLIMIT_SIGPENDING                           = 0xb
+	RLIMIT_STACK                                = 0x3
+	RLIM_INFINITY                               = 0xffffffffffffffff
+	RTAX_ADVMSS                                 = 0x8
+	RTAX_CC_ALGO                                = 0x10
+	RTAX_CWND                                   = 0x7
+	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
+	RTAX_FEATURES                               = 0xc
+	RTAX_FEATURE_ALLFRAG                        = 0x8
+	RTAX_FEATURE_ECN                            = 0x1
+	RTAX_FEATURE_MASK                           = 0xf
+	RTAX_FEATURE_SACK                           = 0x2
+	RTAX_FEATURE_TIMESTAMP                      = 0x4
+	RTAX_HOPLIMIT                               = 0xa
+	RTAX_INITCWND                               = 0xb
+	RTAX_INITRWND                               = 0xe
+	RTAX_LOCK                                   = 0x1
+	RTAX_MAX                                    = 0x11
+	RTAX_MTU                                    = 0x2
+	RTAX_QUICKACK                               = 0xf
+	RTAX_REORDERING                             = 0x9
+	RTAX_RTO_MIN                                = 0xd
+	RTAX_RTT                                    = 0x4
+	RTAX_RTTVAR                                 = 0x5
+	RTAX_SSTHRESH                               = 0x6
+	RTAX_UNSPEC                                 = 0x0
+	RTAX_WINDOW                                 = 0x3
+	RTA_ALIGNTO                                 = 0x4
+	RTA_MAX                                     = 0x1e
+	RTCF_DIRECTSRC                              = 0x4000000
+	RTCF_DOREDIRECT                             = 0x1000000
+	RTCF_LOG                                    = 0x2000000
+	RTCF_MASQ                                   = 0x400000
+	RTCF_NAT                                    = 0x800000
+	RTCF_VALVE                                  = 0x200000
+	RTC_AF                                      = 0x20
+	RTC_IRQF                                    = 0x80
+	RTC_MAX_FREQ                                = 0x2000
+	RTC_PF                                      = 0x40
+	RTC_UF                                      = 0x10
+	RTF_ADDRCLASSMASK                           = 0xf8000000
+	RTF_ADDRCONF                                = 0x40000
+	RTF_ALLONLINK                               = 0x20000
+	RTF_BROADCAST                               = 0x10000000
+	RTF_CACHE                                   = 0x1000000
+	RTF_DEFAULT                                 = 0x10000
+	RTF_DYNAMIC                                 = 0x10
+	RTF_FLOW                                    = 0x2000000
+	RTF_GATEWAY                                 = 0x2
+	RTF_HOST                                    = 0x4
+	RTF_INTERFACE                               = 0x40000000
+	RTF_IRTT                                    = 0x100
+	RTF_LINKRT                                  = 0x100000
+	RTF_LOCAL                                   = 0x80000000
+	RTF_MODIFIED                                = 0x20
+	RTF_MSS                                     = 0x40
+	RTF_MTU                                     = 0x40
+	RTF_MULTICAST                               = 0x20000000
+	RTF_NAT                                     = 0x8000000
+	RTF_NOFORWARD                               = 0x1000
+	RTF_NONEXTHOP                               = 0x200000
+	RTF_NOPMTUDISC                              = 0x4000
+	RTF_POLICY                                  = 0x4000000
+	RTF_REINSTATE                               = 0x8
+	RTF_REJECT                                  = 0x200
+	RTF_STATIC                                  = 0x400
+	RTF_THROW                                   = 0x2000
+	RTF_UP                                      = 0x1
+	RTF_WINDOW                                  = 0x80
+	RTF_XRESOLVE                                = 0x800
+	RTMGRP_DECnet_IFADDR                        = 0x1000
+	RTMGRP_DECnet_ROUTE                         = 0x4000
+	RTMGRP_IPV4_IFADDR                          = 0x10
+	RTMGRP_IPV4_MROUTE                          = 0x20
+	RTMGRP_IPV4_ROUTE                           = 0x40
+	RTMGRP_IPV4_RULE                            = 0x80
+	RTMGRP_IPV6_IFADDR                          = 0x100
+	RTMGRP_IPV6_IFINFO                          = 0x800
+	RTMGRP_IPV6_MROUTE                          = 0x200
+	RTMGRP_IPV6_PREFIX                          = 0x20000
+	RTMGRP_IPV6_ROUTE                           = 0x400
+	RTMGRP_LINK                                 = 0x1
+	RTMGRP_NEIGH                                = 0x4
+	RTMGRP_NOTIFY                               = 0x2
+	RTMGRP_TC                                   = 0x8
+	RTM_BASE                                    = 0x10
+	RTM_DELACTION                               = 0x31
+	RTM_DELADDR                                 = 0x15
+	RTM_DELADDRLABEL                            = 0x49
+	RTM_DELCHAIN                                = 0x65
+	RTM_DELLINK                                 = 0x11
+	RTM_DELLINKPROP                             = 0x6d
+	RTM_DELMDB                                  = 0x55
+	RTM_DELNEIGH                                = 0x1d
+	RTM_DELNETCONF                              = 0x51
+	RTM_DELNEXTHOP                              = 0x69
+	RTM_DELNSID                                 = 0x59
+	RTM_DELQDISC                                = 0x25
+	RTM_DELROUTE                                = 0x19
+	RTM_DELRULE                                 = 0x21
+	RTM_DELTCLASS                               = 0x29
+	RTM_DELTFILTER                              = 0x2d
+	RTM_DELVLAN                                 = 0x71
+	RTM_F_CLONED                                = 0x200
+	RTM_F_EQUALIZE                              = 0x400
+	RTM_F_FIB_MATCH                             = 0x2000
+	RTM_F_LOOKUP_TABLE                          = 0x1000
+	RTM_F_NOTIFY                                = 0x100
+	RTM_F_OFFLOAD                               = 0x4000
+	RTM_F_PREFIX                                = 0x800
+	RTM_F_TRAP                                  = 0x8000
+	RTM_GETACTION                               = 0x32
+	RTM_GETADDR                                 = 0x16
+	RTM_GETADDRLABEL                            = 0x4a
+	RTM_GETANYCAST                              = 0x3e
+	RTM_GETCHAIN                                = 0x66
+	RTM_GETDCB                                  = 0x4e
+	RTM_GETLINK                                 = 0x12
+	RTM_GETLINKPROP                             = 0x6e
+	RTM_GETMDB                                  = 0x56
+	RTM_GETMULTICAST                            = 0x3a
+	RTM_GETNEIGH                                = 0x1e
+	RTM_GETNEIGHTBL                             = 0x42
+	RTM_GETNETCONF                              = 0x52
+	RTM_GETNEXTHOP                              = 0x6a
+	RTM_GETNSID                                 = 0x5a
+	RTM_GETQDISC                                = 0x26
+	RTM_GETROUTE                                = 0x1a
+	RTM_GETRULE                                 = 0x22
+	RTM_GETSTATS                                = 0x5e
+	RTM_GETTCLASS                               = 0x2a
+	RTM_GETTFILTER                              = 0x2e
+	RTM_GETVLAN                                 = 0x72
+	RTM_MAX                                     = 0x73
+	RTM_NEWACTION                               = 0x30
+	RTM_NEWADDR                                 = 0x14
+	RTM_NEWADDRLABEL                            = 0x48
+	RTM_NEWCACHEREPORT                          = 0x60
+	RTM_NEWCHAIN                                = 0x64
+	RTM_NEWLINK                                 = 0x10
+	RTM_NEWLINKPROP                             = 0x6c
+	RTM_NEWMDB                                  = 0x54
+	RTM_NEWNDUSEROPT                            = 0x44
+	RTM_NEWNEIGH                                = 0x1c
+	RTM_NEWNEIGHTBL                             = 0x40
+	RTM_NEWNETCONF                              = 0x50
+	RTM_NEWNEXTHOP                              = 0x68
+	RTM_NEWNSID                                 = 0x58
+	RTM_NEWNVLAN                                = 0x70
+	RTM_NEWPREFIX                               = 0x34
+	RTM_NEWQDISC                                = 0x24
+	RTM_NEWROUTE                                = 0x18
+	RTM_NEWRULE                                 = 0x20
+	RTM_NEWSTATS                                = 0x5c
+	RTM_NEWTCLASS                               = 0x28
+	RTM_NEWTFILTER                              = 0x2c
+	RTM_NR_FAMILIES                             = 0x19
+	RTM_NR_MSGTYPES                             = 0x64
+	RTM_SETDCB                                  = 0x4f
+	RTM_SETLINK                                 = 0x13
+	RTM_SETNEIGHTBL                             = 0x43
+	RTNH_ALIGNTO                                = 0x4
+	RTNH_COMPARE_MASK                           = 0x19
+	RTNH_F_DEAD                                 = 0x1
+	RTNH_F_LINKDOWN                             = 0x10
+	RTNH_F_OFFLOAD                              = 0x8
+	RTNH_F_ONLINK                               = 0x4
+	RTNH_F_PERVASIVE                            = 0x2
+	RTNH_F_UNRESOLVED                           = 0x20
+	RTN_MAX                                     = 0xb
+	RTPROT_BABEL                                = 0x2a
+	RTPROT_BGP                                  = 0xba
+	RTPROT_BIRD                                 = 0xc
+	RTPROT_BOOT                                 = 0x3
+	RTPROT_DHCP                                 = 0x10
+	RTPROT_DNROUTED                             = 0xd
+	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_OSPF                                 = 0xbc
+	RTPROT_RA                                   = 0x9
+	RTPROT_REDIRECT                             = 0x1
+	RTPROT_RIP                                  = 0xbd
+	RTPROT_STATIC                               = 0x4
+	RTPROT_UNSPEC                               = 0x0
+	RTPROT_XORP                                 = 0xe
+	RTPROT_ZEBRA                                = 0xb
+	RT_CLASS_DEFAULT                            = 0xfd
+	RT_CLASS_LOCAL                              = 0xff
+	RT_CLASS_MAIN                               = 0xfe
+	RT_CLASS_MAX                                = 0xff
+	RT_CLASS_UNSPEC                             = 0x0
+	RUSAGE_CHILDREN                             = -0x1
+	RUSAGE_SELF                                 = 0x0
+	RUSAGE_THREAD                               = 0x1
+	RWF_APPEND                                  = 0x10
+	RWF_DSYNC                                   = 0x2
+	RWF_HIPRI                                   = 0x1
+	RWF_NOWAIT                                  = 0x8
+	RWF_SUPPORTED                               = 0x1f
+	RWF_SYNC                                    = 0x4
+	RWF_WRITE_LIFE_NOT_SET                      = 0x0
+	SCM_CREDENTIALS                             = 0x2
+	SCM_RIGHTS                                  = 0x1
+	SCM_TIMESTAMP                               = 0x1d
+	SC_LOG_FLUSH                                = 0x100000
+	SECCOMP_MODE_DISABLED                       = 0x0
+	SECCOMP_MODE_FILTER                         = 0x2
+	SECCOMP_MODE_STRICT                         = 0x1
+	SECURITYFS_MAGIC                            = 0x73636673
+	SELINUX_MAGIC                               = 0xf97cff8c
+	SHUT_RD                                     = 0x0
+	SHUT_RDWR                                   = 0x2
+	SHUT_WR                                     = 0x1
+	SIOCADDDLCI                                 = 0x8980
+	SIOCADDMULTI                                = 0x8931
+	SIOCADDRT                                   = 0x890b
+	SIOCBONDCHANGEACTIVE                        = 0x8995
+	SIOCBONDENSLAVE                             = 0x8990
+	SIOCBONDINFOQUERY                           = 0x8994
+	SIOCBONDRELEASE                             = 0x8991
+	SIOCBONDSETHWADDR                           = 0x8992
+	SIOCBONDSLAVEINFOQUERY                      = 0x8993
+	SIOCBRADDBR                                 = 0x89a0
+	SIOCBRADDIF                                 = 0x89a2
+	SIOCBRDELBR                                 = 0x89a1
+	SIOCBRDELIF                                 = 0x89a3
+	SIOCDARP                                    = 0x8953
+	SIOCDELDLCI                                 = 0x8981
+	SIOCDELMULTI                                = 0x8932
+	SIOCDELRT                                   = 0x890c
+	SIOCDEVPRIVATE                              = 0x89f0
+	SIOCDIFADDR                                 = 0x8936
+	SIOCDRARP                                   = 0x8960
+	SIOCETHTOOL                                 = 0x8946
+	SIOCGARP                                    = 0x8954
+	SIOCGETLINKNAME                             = 0x89e0
+	SIOCGETNODEID                               = 0x89e1
+	SIOCGHWTSTAMP                               = 0x89b1
+	SIOCGIFADDR                                 = 0x8915
+	SIOCGIFBR                                   = 0x8940
+	SIOCGIFBRDADDR                              = 0x8919
+	SIOCGIFCONF                                 = 0x8912
+	SIOCGIFCOUNT                                = 0x8938
+	SIOCGIFDSTADDR                              = 0x8917
+	SIOCGIFENCAP                                = 0x8925
+	SIOCGIFFLAGS                                = 0x8913
+	SIOCGIFHWADDR                               = 0x8927
+	SIOCGIFINDEX                                = 0x8933
+	SIOCGIFMAP                                  = 0x8970
+	SIOCGIFMEM                                  = 0x891f
+	SIOCGIFMETRIC                               = 0x891d
+	SIOCGIFMTU                                  = 0x8921
+	SIOCGIFNAME                                 = 0x8910
+	SIOCGIFNETMASK                              = 0x891b
+	SIOCGIFPFLAGS                               = 0x8935
+	SIOCGIFSLAVE                                = 0x8929
+	SIOCGIFTXQLEN                               = 0x8942
+	SIOCGIFVLAN                                 = 0x8982
+	SIOCGMIIPHY                                 = 0x8947
+	SIOCGMIIREG                                 = 0x8948
+	SIOCGPPPCSTATS                              = 0x89f2
+	SIOCGPPPSTATS                               = 0x89f0
+	SIOCGPPPVER                                 = 0x89f1
+	SIOCGRARP                                   = 0x8961
+	SIOCGSKNS                                   = 0x894c
+	SIOCGSTAMP                                  = 0x8906
+	SIOCGSTAMPNS                                = 0x8907
+	SIOCGSTAMPNS_OLD                            = 0x8907
+	SIOCGSTAMP_OLD                              = 0x8906
+	SIOCOUTQNSD                                 = 0x894b
+	SIOCPROTOPRIVATE                            = 0x89e0
+	SIOCRTMSG                                   = 0x890d
+	SIOCSARP                                    = 0x8955
+	SIOCSHWTSTAMP                               = 0x89b0
+	SIOCSIFADDR                                 = 0x8916
+	SIOCSIFBR                                   = 0x8941
+	SIOCSIFBRDADDR                              = 0x891a
+	SIOCSIFDSTADDR                              = 0x8918
+	SIOCSIFENCAP                                = 0x8926
+	SIOCSIFFLAGS                                = 0x8914
+	SIOCSIFHWADDR                               = 0x8924
+	SIOCSIFHWBROADCAST                          = 0x8937
+	SIOCSIFLINK                                 = 0x8911
+	SIOCSIFMAP                                  = 0x8971
+	SIOCSIFMEM                                  = 0x8920
+	SIOCSIFMETRIC                               = 0x891e
+	SIOCSIFMTU                                  = 0x8922
+	SIOCSIFNAME                                 = 0x8923
+	SIOCSIFNETMASK                              = 0x891c
+	SIOCSIFPFLAGS                               = 0x8934
+	SIOCSIFSLAVE                                = 0x8930
+	SIOCSIFTXQLEN                               = 0x8943
+	SIOCSIFVLAN                                 = 0x8983
+	SIOCSMIIREG                                 = 0x8949
+	SIOCSRARP                                   = 0x8962
+	SIOCWANDEV                                  = 0x894a
+	SMACK_MAGIC                                 = 0x43415d53
+	SMART_AUTOSAVE                              = 0xd2
+	SMART_AUTO_OFFLINE                          = 0xdb
+	SMART_DISABLE                               = 0xd9
+	SMART_ENABLE                                = 0xd8
+	SMART_HCYL_PASS                             = 0xc2
+	SMART_IMMEDIATE_OFFLINE                     = 0xd4
+	SMART_LCYL_PASS                             = 0x4f
+	SMART_READ_LOG_SECTOR                       = 0xd5
+	SMART_READ_THRESHOLDS                       = 0xd1
+	SMART_READ_VALUES                           = 0xd0
+	SMART_SAVE                                  = 0xd3
+	SMART_STATUS                                = 0xda
+	SMART_WRITE_LOG_SECTOR                      = 0xd6
+	SMART_WRITE_THRESHOLDS                      = 0xd7
+	SMB_SUPER_MAGIC                             = 0x517b
+	SOCKFS_MAGIC                                = 0x534f434b
+	SOCK_DCCP                                   = 0x6
+	SOCK_IOC_TYPE                               = 0x89
+	SOCK_PACKET                                 = 0xa
+	SOCK_RAW                                    = 0x3
+	SOCK_RDM                                    = 0x4
+	SOCK_SEQPACKET                              = 0x5
+	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
+	SOL_IP                                      = 0x0
+	SOL_IPV6                                    = 0x29
+	SOL_IRDA                                    = 0x10a
+	SOL_IUCV                                    = 0x115
+	SOL_KCM                                     = 0x119
+	SOL_LLC                                     = 0x10c
+	SOL_NETBEUI                                 = 0x10b
+	SOL_NETLINK                                 = 0x10e
+	SOL_NFC                                     = 0x118
+	SOL_PACKET                                  = 0x107
+	SOL_PNPIPE                                  = 0x113
+	SOL_PPPOL2TP                                = 0x111
+	SOL_RAW                                     = 0xff
+	SOL_RDS                                     = 0x114
+	SOL_RXRPC                                   = 0x110
+	SOL_TCP                                     = 0x6
+	SOL_TIPC                                    = 0x10f
+	SOL_TLS                                     = 0x11a
+	SOL_X25                                     = 0x106
+	SOL_XDP                                     = 0x11b
+	SOMAXCONN                                   = 0x1000
+	SO_ATTACH_FILTER                            = 0x1a
+	SO_DEBUG                                    = 0x1
+	SO_DETACH_BPF                               = 0x1b
+	SO_DETACH_FILTER                            = 0x1b
+	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
+	SO_EE_CODE_TXTIME_MISSED                    = 0x2
+	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
+	SO_EE_ORIGIN_ICMP                           = 0x2
+	SO_EE_ORIGIN_ICMP6                          = 0x3
+	SO_EE_ORIGIN_LOCAL                          = 0x1
+	SO_EE_ORIGIN_NONE                           = 0x0
+	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
+	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
+	SO_PRIORITY                                 = 0xc
+	SO_TIMESTAMP                                = 0x1d
+	SO_TIMESTAMP_OLD                            = 0x1d
+	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
+	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
+	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
+	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
+	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
+	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
+	SO_VM_SOCKETS_TRUSTED                       = 0x5
+	SPLICE_F_GIFT                               = 0x8
+	SPLICE_F_MORE                               = 0x4
+	SPLICE_F_MOVE                               = 0x1
+	SPLICE_F_NONBLOCK                           = 0x2
+	SQUASHFS_MAGIC                              = 0x73717368
+	STACK_END_MAGIC                             = 0x57ac6e9d
+	STATX_ALL                                   = 0xfff
+	STATX_ATIME                                 = 0x20
+	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
+	STATX_BLOCKS                                = 0x400
+	STATX_BTIME                                 = 0x800
+	STATX_CTIME                                 = 0x80
+	STATX_GID                                   = 0x10
+	STATX_INO                                   = 0x100
+	STATX_MNT_ID                                = 0x1000
+	STATX_MODE                                  = 0x2
+	STATX_MTIME                                 = 0x40
+	STATX_NLINK                                 = 0x4
+	STATX_SIZE                                  = 0x200
+	STATX_TYPE                                  = 0x1
+	STATX_UID                                   = 0x8
+	STATX__RESERVED                             = 0x80000000
+	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
+	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
+	SYNC_FILE_RANGE_WRITE                       = 0x2
+	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
+	SYSFS_MAGIC                                 = 0x62656572
+	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_IREAD                                     = 0x100
+	S_IRGRP                                     = 0x20
+	S_IROTH                                     = 0x4
+	S_IRUSR                                     = 0x100
+	S_IRWXG                                     = 0x38
+	S_IRWXO                                     = 0x7
+	S_IRWXU                                     = 0x1c0
+	S_ISGID                                     = 0x400
+	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
+	TASKSTATS_CMD_ATTR_MAX                      = 0x4
+	TASKSTATS_CMD_MAX                           = 0x2
+	TASKSTATS_GENL_NAME                         = "TASKSTATS"
+	TASKSTATS_GENL_VERSION                      = 0x1
+	TASKSTATS_TYPE_MAX                          = 0x6
+	TASKSTATS_VERSION                           = 0xa
+	TCIFLUSH                                    = 0x0
+	TCIOFF                                      = 0x2
+	TCIOFLUSH                                   = 0x2
+	TCION                                       = 0x3
+	TCOFLUSH                                    = 0x1
+	TCOOFF                                      = 0x0
+	TCOON                                       = 0x1
+	TCP_CC_INFO                                 = 0x1a
+	TCP_CM_INQ                                  = 0x24
+	TCP_CONGESTION                              = 0xd
+	TCP_COOKIE_IN_ALWAYS                        = 0x1
+	TCP_COOKIE_MAX                              = 0x10
+	TCP_COOKIE_MIN                              = 0x8
+	TCP_COOKIE_OUT_NEVER                        = 0x2
+	TCP_COOKIE_PAIR_SIZE                        = 0x20
+	TCP_COOKIE_TRANSACTIONS                     = 0xf
+	TCP_CORK                                    = 0x3
+	TCP_DEFER_ACCEPT                            = 0x9
+	TCP_FASTOPEN                                = 0x17
+	TCP_FASTOPEN_CONNECT                        = 0x1e
+	TCP_FASTOPEN_KEY                            = 0x21
+	TCP_FASTOPEN_NO_COOKIE                      = 0x22
+	TCP_INFO                                    = 0xb
+	TCP_INQ                                     = 0x24
+	TCP_KEEPCNT                                 = 0x6
+	TCP_KEEPIDLE                                = 0x4
+	TCP_KEEPINTVL                               = 0x5
+	TCP_LINGER2                                 = 0x8
+	TCP_MAXSEG                                  = 0x2
+	TCP_MAXWIN                                  = 0xffff
+	TCP_MAX_WINSHIFT                            = 0xe
+	TCP_MD5SIG                                  = 0xe
+	TCP_MD5SIG_EXT                              = 0x20
+	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
+	TCP_MD5SIG_MAXKEYLEN                        = 0x50
+	TCP_MSS                                     = 0x200
+	TCP_MSS_DEFAULT                             = 0x218
+	TCP_MSS_DESIRED                             = 0x4c4
+	TCP_NODELAY                                 = 0x1
+	TCP_NOTSENT_LOWAT                           = 0x19
+	TCP_QUEUE_SEQ                               = 0x15
+	TCP_QUICKACK                                = 0xc
+	TCP_REPAIR                                  = 0x13
+	TCP_REPAIR_OFF                              = 0x0
+	TCP_REPAIR_OFF_NO_WP                        = -0x1
+	TCP_REPAIR_ON                               = 0x1
+	TCP_REPAIR_OPTIONS                          = 0x16
+	TCP_REPAIR_QUEUE                            = 0x14
+	TCP_REPAIR_WINDOW                           = 0x1d
+	TCP_SAVED_SYN                               = 0x1c
+	TCP_SAVE_SYN                                = 0x1b
+	TCP_SYNCNT                                  = 0x7
+	TCP_S_DATA_IN                               = 0x4
+	TCP_S_DATA_OUT                              = 0x8
+	TCP_THIN_DUPACK                             = 0x11
+	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
+	TCP_TIMESTAMP                               = 0x18
+	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
+	TIOCM_RTS                                   = 0x4
+	TIOCPKT_DATA                                = 0x0
+	TIOCPKT_DOSTOP                              = 0x20
+	TIOCPKT_FLUSHREAD                           = 0x1
+	TIOCPKT_FLUSHWRITE                          = 0x2
+	TIOCPKT_IOCTL                               = 0x40
+	TIOCPKT_NOSTOP                              = 0x10
+	TIOCPKT_START                               = 0x8
+	TIOCPKT_STOP                                = 0x4
+	TIPC_ADDR_ID                                = 0x3
+	TIPC_ADDR_MCAST                             = 0x1
+	TIPC_ADDR_NAME                              = 0x2
+	TIPC_ADDR_NAMESEQ                           = 0x1
+	TIPC_AEAD_ALG_NAME                          = 0x20
+	TIPC_AEAD_KEYLEN_MAX                        = 0x24
+	TIPC_AEAD_KEYLEN_MIN                        = 0x14
+	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
+	TIPC_CFG_SRV                                = 0x0
+	TIPC_CLUSTER_BITS                           = 0xc
+	TIPC_CLUSTER_MASK                           = 0xfff000
+	TIPC_CLUSTER_OFFSET                         = 0xc
+	TIPC_CLUSTER_SIZE                           = 0xfff
+	TIPC_CONN_SHUTDOWN                          = 0x5
+	TIPC_CONN_TIMEOUT                           = 0x82
+	TIPC_CRITICAL_IMPORTANCE                    = 0x3
+	TIPC_DESTNAME                               = 0x3
+	TIPC_DEST_DROPPABLE                         = 0x81
+	TIPC_ERRINFO                                = 0x1
+	TIPC_ERR_NO_NAME                            = 0x1
+	TIPC_ERR_NO_NODE                            = 0x3
+	TIPC_ERR_NO_PORT                            = 0x2
+	TIPC_ERR_OVERLOAD                           = 0x4
+	TIPC_GROUP_JOIN                             = 0x87
+	TIPC_GROUP_LEAVE                            = 0x88
+	TIPC_GROUP_LOOPBACK                         = 0x1
+	TIPC_GROUP_MEMBER_EVTS                      = 0x2
+	TIPC_HIGH_IMPORTANCE                        = 0x2
+	TIPC_IMPORTANCE                             = 0x7f
+	TIPC_LINK_STATE                             = 0x2
+	TIPC_LOW_IMPORTANCE                         = 0x0
+	TIPC_MAX_BEARER_NAME                        = 0x20
+	TIPC_MAX_IF_NAME                            = 0x10
+	TIPC_MAX_LINK_NAME                          = 0x44
+	TIPC_MAX_MEDIA_NAME                         = 0x10
+	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
+	TIPC_MCAST_BROADCAST                        = 0x85
+	TIPC_MCAST_REPLICAST                        = 0x86
+	TIPC_MEDIUM_IMPORTANCE                      = 0x1
+	TIPC_NODEID_LEN                             = 0x10
+	TIPC_NODELAY                                = 0x8a
+	TIPC_NODE_BITS                              = 0xc
+	TIPC_NODE_MASK                              = 0xfff
+	TIPC_NODE_OFFSET                            = 0x0
+	TIPC_NODE_RECVQ_DEPTH                       = 0x83
+	TIPC_NODE_SIZE                              = 0xfff
+	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
+	TIPC_SERVICE_RANGE                          = 0x1
+	TIPC_SOCKET_ADDR                            = 0x3
+	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
+	TIPC_SOCK_RECVQ_USED                        = 0x89
+	TIPC_SRC_DROPPABLE                          = 0x80
+	TIPC_SUBSCR_TIMEOUT                         = 0x3
+	TIPC_SUB_CANCEL                             = 0x4
+	TIPC_SUB_PORTS                              = 0x1
+	TIPC_SUB_SERVICE                            = 0x2
+	TIPC_TOP_SRV                                = 0x1
+	TIPC_WAIT_FOREVER                           = 0xffffffff
+	TIPC_WITHDRAWN                              = 0x2
+	TIPC_ZONE_BITS                              = 0x8
+	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
+	TIPC_ZONE_MASK                              = 0xff000000
+	TIPC_ZONE_OFFSET                            = 0x18
+	TIPC_ZONE_SCOPE                             = 0x1
+	TIPC_ZONE_SIZE                              = 0xff
+	TMPFS_MAGIC                                 = 0x1021994
+	TPACKET_ALIGNMENT                           = 0x10
+	TPACKET_HDRLEN                              = 0x34
+	TP_STATUS_AVAILABLE                         = 0x0
+	TP_STATUS_BLK_TMO                           = 0x20
+	TP_STATUS_COPY                              = 0x2
+	TP_STATUS_CSUMNOTREADY                      = 0x8
+	TP_STATUS_CSUM_VALID                        = 0x80
+	TP_STATUS_KERNEL                            = 0x0
+	TP_STATUS_LOSING                            = 0x4
+	TP_STATUS_SENDING                           = 0x2
+	TP_STATUS_SEND_REQUEST                      = 0x1
+	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
+	TP_STATUS_TS_SOFTWARE                       = 0x20000000
+	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
+	TP_STATUS_USER                              = 0x1
+	TP_STATUS_VLAN_TPID_VALID                   = 0x40
+	TP_STATUS_VLAN_VALID                        = 0x10
+	TP_STATUS_WRONG_FORMAT                      = 0x4
+	TRACEFS_MAGIC                               = 0x74726163
+	TS_COMM_LEN                                 = 0x20
+	UDF_SUPER_MAGIC                             = 0x15013346
+	UMOUNT_NOFOLLOW                             = 0x8
+	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
+	UTIME_NOW                                   = 0x3fffffff
+	UTIME_OMIT                                  = 0x3ffffffe
+	V9FS_MAGIC                                  = 0x1021997
+	VERASE                                      = 0x2
+	VINTR                                       = 0x0
+	VKILL                                       = 0x3
+	VLNEXT                                      = 0xf
+	VMADDR_CID_ANY                              = 0xffffffff
+	VMADDR_CID_HOST                             = 0x2
+	VMADDR_CID_HYPERVISOR                       = 0x0
+	VMADDR_CID_LOCAL                            = 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
+	WIN_ACKMEDIACHANGE                          = 0xdb
+	WIN_CHECKPOWERMODE1                         = 0xe5
+	WIN_CHECKPOWERMODE2                         = 0x98
+	WIN_DEVICE_RESET                            = 0x8
+	WIN_DIAGNOSE                                = 0x90
+	WIN_DOORLOCK                                = 0xde
+	WIN_DOORUNLOCK                              = 0xdf
+	WIN_DOWNLOAD_MICROCODE                      = 0x92
+	WIN_FLUSH_CACHE                             = 0xe7
+	WIN_FLUSH_CACHE_EXT                         = 0xea
+	WIN_FORMAT                                  = 0x50
+	WIN_GETMEDIASTATUS                          = 0xda
+	WIN_IDENTIFY                                = 0xec
+	WIN_IDENTIFY_DMA                            = 0xee
+	WIN_IDLEIMMEDIATE                           = 0xe1
+	WIN_INIT                                    = 0x60
+	WIN_MEDIAEJECT                              = 0xed
+	WIN_MULTREAD                                = 0xc4
+	WIN_MULTREAD_EXT                            = 0x29
+	WIN_MULTWRITE                               = 0xc5
+	WIN_MULTWRITE_EXT                           = 0x39
+	WIN_NOP                                     = 0x0
+	WIN_PACKETCMD                               = 0xa0
+	WIN_PIDENTIFY                               = 0xa1
+	WIN_POSTBOOT                                = 0xdc
+	WIN_PREBOOT                                 = 0xdd
+	WIN_QUEUED_SERVICE                          = 0xa2
+	WIN_READ                                    = 0x20
+	WIN_READDMA                                 = 0xc8
+	WIN_READDMA_EXT                             = 0x25
+	WIN_READDMA_ONCE                            = 0xc9
+	WIN_READDMA_QUEUED                          = 0xc7
+	WIN_READDMA_QUEUED_EXT                      = 0x26
+	WIN_READ_BUFFER                             = 0xe4
+	WIN_READ_EXT                                = 0x24
+	WIN_READ_LONG                               = 0x22
+	WIN_READ_LONG_ONCE                          = 0x23
+	WIN_READ_NATIVE_MAX                         = 0xf8
+	WIN_READ_NATIVE_MAX_EXT                     = 0x27
+	WIN_READ_ONCE                               = 0x21
+	WIN_RECAL                                   = 0x10
+	WIN_RESTORE                                 = 0x10
+	WIN_SECURITY_DISABLE                        = 0xf6
+	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
+	WIN_SECURITY_ERASE_UNIT                     = 0xf4
+	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
+	WIN_SECURITY_SET_PASS                       = 0xf1
+	WIN_SECURITY_UNLOCK                         = 0xf2
+	WIN_SEEK                                    = 0x70
+	WIN_SETFEATURES                             = 0xef
+	WIN_SETIDLE1                                = 0xe3
+	WIN_SETIDLE2                                = 0x97
+	WIN_SETMULT                                 = 0xc6
+	WIN_SET_MAX                                 = 0xf9
+	WIN_SET_MAX_EXT                             = 0x37
+	WIN_SLEEPNOW1                               = 0xe6
+	WIN_SLEEPNOW2                               = 0x99
+	WIN_SMART                                   = 0xb0
+	WIN_SPECIFY                                 = 0x91
+	WIN_SRST                                    = 0x8
+	WIN_STANDBY                                 = 0xe2
+	WIN_STANDBY2                                = 0x96
+	WIN_STANDBYNOW1                             = 0xe0
+	WIN_STANDBYNOW2                             = 0x94
+	WIN_VERIFY                                  = 0x40
+	WIN_VERIFY_EXT                              = 0x42
+	WIN_VERIFY_ONCE                             = 0x41
+	WIN_WRITE                                   = 0x30
+	WIN_WRITEDMA                                = 0xca
+	WIN_WRITEDMA_EXT                            = 0x35
+	WIN_WRITEDMA_ONCE                           = 0xcb
+	WIN_WRITEDMA_QUEUED                         = 0xcc
+	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
+	WIN_WRITE_BUFFER                            = 0xe8
+	WIN_WRITE_EXT                               = 0x34
+	WIN_WRITE_LONG                              = 0x32
+	WIN_WRITE_LONG_ONCE                         = 0x33
+	WIN_WRITE_ONCE                              = 0x31
+	WIN_WRITE_SAME                              = 0xe9
+	WIN_WRITE_VERIFY                            = 0x3c
+	WNOHANG                                     = 0x1
+	WNOTHREAD                                   = 0x20000000
+	WNOWAIT                                     = 0x1000000
+	WSTOPPED                                    = 0x2
+	WUNTRACED                                   = 0x2
+	XATTR_CREATE                                = 0x1
+	XATTR_REPLACE                               = 0x2
+	XDP_COPY                                    = 0x2
+	XDP_FLAGS_DRV_MODE                          = 0x4
+	XDP_FLAGS_HW_MODE                           = 0x8
+	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
+	XDP_OPTIONS                                 = 0x8
+	XDP_OPTIONS_ZEROCOPY                        = 0x1
+	XDP_PACKET_HEADROOM                         = 0x100
+	XDP_PGOFF_RX_RING                           = 0x0
+	XDP_PGOFF_TX_RING                           = 0x80000000
+	XDP_RING_NEED_WAKEUP                        = 0x1
+	XDP_RX_RING                                 = 0x2
+	XDP_SHARED_UMEM                             = 0x1
+	XDP_STATISTICS                              = 0x7
+	XDP_TX_RING                                 = 0x3
+	XDP_UMEM_COMPLETION_RING                    = 0x6
+	XDP_UMEM_FILL_RING                          = 0x5
+	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
+	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
+	XDP_UMEM_REG                                = 0x4
+	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
+	XDP_USE_NEED_WAKEUP                         = 0x8
+	XDP_ZEROCOPY                                = 0x4
+	XENFS_SUPER_MAGIC                           = 0xabba1974
+	XFS_SUPER_MAGIC                             = 0x58465342
+	Z3FOLD_MAGIC                                = 0x33
+	ZONEFS_MAGIC                                = 0x5a4f4653
+	ZSMALLOC_MAGIC                              = 0x58295829
+)
+
+// Errors
+const (
+	E2BIG       = syscall.Errno(0x7)
+	EACCES      = syscall.Errno(0xd)
+	EAGAIN      = syscall.Errno(0xb)
+	EBADF       = syscall.Errno(0x9)
+	EBUSY       = syscall.Errno(0x10)
+	ECHILD      = syscall.Errno(0xa)
+	EDOM        = syscall.Errno(0x21)
+	EEXIST      = syscall.Errno(0x11)
+	EFAULT      = syscall.Errno(0xe)
+	EFBIG       = syscall.Errno(0x1b)
+	EINTR       = syscall.Errno(0x4)
+	EINVAL      = syscall.Errno(0x16)
+	EIO         = syscall.Errno(0x5)
+	EISDIR      = syscall.Errno(0x15)
+	EMFILE      = syscall.Errno(0x18)
+	EMLINK      = syscall.Errno(0x1f)
+	ENFILE      = syscall.Errno(0x17)
+	ENODEV      = syscall.Errno(0x13)
+	ENOENT      = syscall.Errno(0x2)
+	ENOEXEC     = syscall.Errno(0x8)
+	ENOMEM      = syscall.Errno(0xc)
+	ENOSPC      = syscall.Errno(0x1c)
+	ENOTBLK     = syscall.Errno(0xf)
+	ENOTDIR     = syscall.Errno(0x14)
+	ENOTTY      = syscall.Errno(0x19)
+	ENXIO       = syscall.Errno(0x6)
+	EPERM       = syscall.Errno(0x1)
+	EPIPE       = syscall.Errno(0x20)
+	ERANGE      = syscall.Errno(0x22)
+	EROFS       = syscall.Errno(0x1e)
+	ESPIPE      = syscall.Errno(0x1d)
+	ESRCH       = syscall.Errno(0x3)
+	ETXTBSY     = syscall.Errno(0x1a)
+	EWOULDBLOCK = syscall.Errno(0xb)
+	EXDEV       = syscall.Errno(0x12)
+)
+
+// Signals
+const (
+	SIGABRT = syscall.Signal(0x6)
+	SIGALRM = syscall.Signal(0xe)
+	SIGFPE  = syscall.Signal(0x8)
+	SIGHUP  = syscall.Signal(0x1)
+	SIGILL  = syscall.Signal(0x4)
+	SIGINT  = syscall.Signal(0x2)
+	SIGIOT  = syscall.Signal(0x6)
+	SIGKILL = syscall.Signal(0x9)
+	SIGPIPE = syscall.Signal(0xd)
+	SIGQUIT = syscall.Signal(0x3)
+	SIGSEGV = syscall.Signal(0xb)
+	SIGTERM = syscall.Signal(0xf)
+	SIGTRAP = syscall.Signal(0x5)
+)
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 e65b02f..336e0b3 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
@@ -4,2870 +4,500 @@
 // +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/include -m32 /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x80041270
-	BLKBSZSET                                   = 0x40041271
-	BLKFLSBUF                                   = 0x1261
-	BLKFRAGET                                   = 0x1265
-	BLKFRASET                                   = 0x1264
-	BLKGETSIZE                                  = 0x1260
-	BLKGETSIZE64                                = 0x80041272
-	BLKPBSZGET                                  = 0x127b
-	BLKRAGET                                    = 0x1263
-	BLKRASET                                    = 0x1262
-	BLKROGET                                    = 0x125e
-	BLKROSET                                    = 0x125d
-	BLKRRPART                                   = 0x125f
-	BLKSECTGET                                  = 0x1267
-	BLKSECTSET                                  = 0x1266
-	BLKSSZGET                                   = 0x1268
-	BOTHER                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FP_XSTATE_MAGIC2                            = 0x46505845
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0xc
-	F_GETLK64                                   = 0xc
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0xd
-	F_SETLK64                                   = 0xd
-	F_SETLKW                                    = 0xe
-	F_SETLKW64                                  = 0xe
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_32BIT                                   = 0x40
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x20
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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                                 = 0x8000
-	O_NDELAY                                    = 0x800
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x100
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x800
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	PERF_EVENT_IOC_DISABLE                      = 0x2401
-	PERF_EVENT_IOC_ENABLE                       = 0x2400
-	PERF_EVENT_IOC_ID                           = 0x80042407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x4004240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x40042409
-	PERF_EVENT_IOC_PERIOD                       = 0x40082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc004240a
-	PERF_EVENT_IOC_REFRESH                      = 0x2402
-	PERF_EVENT_IOC_RESET                        = 0x2403
-	PERF_EVENT_IOC_SET_BPF                      = 0x40042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x40042406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x2405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8008743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40087446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x400c744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40087447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETFPXREGS                           = 0x12
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETFPXREGS                           = 0x13
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SINGLEBLOCK                          = 0x21
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_SYSEMU                               = 0x1f
-	PTRACE_SYSEMU_SINGLESTEP                    = 0x20
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x7002
-	RTC_AIE_ON                                  = 0x7001
-	RTC_ALM_READ                                = 0x80247008
-	RTC_ALM_SET                                 = 0x40247007
-	RTC_EPOCH_READ                              = 0x8004700d
-	RTC_EPOCH_SET                               = 0x4004700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8004700b
-	RTC_IRQP_SET                                = 0x4004700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x7006
-	RTC_PIE_ON                                  = 0x7005
-	RTC_PLL_GET                                 = 0x801c7011
-	RTC_PLL_SET                                 = 0x401c7012
-	RTC_RD_TIME                                 = 0x80247009
-	RTC_SET_TIME                                = 0x4024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x400854d5
-	TUNDETACHFILTER                             = 0x400854d6
-	TUNGETDEVNETNS                              = 0x54e3
-	TUNGETFEATURES                              = 0x800454cf
-	TUNGETFILTER                                = 0x800854db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x20
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	X86_FXSR_MAGIC                              = 0x0
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x80041270
+	BLKBSZSET                        = 0x40041271
+	BLKFLSBUF                        = 0x1261
+	BLKFRAGET                        = 0x1265
+	BLKFRASET                        = 0x1264
+	BLKGETSIZE                       = 0x1260
+	BLKGETSIZE64                     = 0x80041272
+	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
+	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
+	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
+	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
+	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_32BIT                        = 0x40
+	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
+	NFDBITS                          = 0x20
+	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
+	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                      = 0x8000
+	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                = 0x80042407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x40042409
+	PERF_EVENT_IOC_PERIOD            = 0x40082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc004240a
+	PERF_EVENT_IOC_REFRESH           = 0x2402
+	PERF_EVENT_IOC_RESET             = 0x2403
+	PERF_EVENT_IOC_SET_BPF           = 0x40042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x40042406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x2405
+	PPPIOCATTACH                     = 0x4004743d
+	PPPIOCATTCHAN                    = 0x40047438
+	PPPIOCCONNECT                    = 0x4004743a
+	PPPIOCDETACH                     = 0x4004743c
+	PPPIOCDISCONN                    = 0x7439
+	PPPIOCGASYNCMAP                  = 0x80047458
+	PPPIOCGCHAN                      = 0x80047437
+	PPPIOCGDEBUG                     = 0x80047441
+	PPPIOCGFLAGS                     = 0x8004745a
+	PPPIOCGIDLE                      = 0x8008743f
+	PPPIOCGIDLE32                    = 0x8008743f
+	PPPIOCGIDLE64                    = 0x8010743f
+	PPPIOCGL2TPSTATS                 = 0x80487436
+	PPPIOCGMRU                       = 0x80047453
+	PPPIOCGRASYNCMAP                 = 0x80047455
+	PPPIOCGUNIT                      = 0x80047456
+	PPPIOCGXASYNCMAP                 = 0x80207450
+	PPPIOCSACTIVE                    = 0x40087446
+	PPPIOCSASYNCMAP                  = 0x40047457
+	PPPIOCSCOMPRESS                  = 0x400c744d
+	PPPIOCSDEBUG                     = 0x40047440
+	PPPIOCSFLAGS                     = 0x40047459
+	PPPIOCSMAXCID                    = 0x40047451
+	PPPIOCSMRRU                      = 0x4004743b
+	PPPIOCSMRU                       = 0x40047452
+	PPPIOCSNPMODE                    = 0x4008744b
+	PPPIOCSPASS                      = 0x40087447
+	PPPIOCSRASYNCMAP                 = 0x40047454
+	PPPIOCSXASYNCMAP                 = 0x4020744f
+	PPPIOCXFERUNIT                   = 0x744e
+	PR_SET_PTRACER_ANY               = 0xffffffff
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GETFPXREGS                = 0x12
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SETFPXREGS                = 0x13
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SINGLEBLOCK               = 0x21
+	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                   = 0x8004700d
+	RTC_EPOCH_SET                    = 0x4004700e
+	RTC_IRQP_READ                    = 0x8004700b
+	RTC_IRQP_SET                     = 0x4004700c
+	RTC_PIE_OFF                      = 0x7006
+	RTC_PIE_ON                       = 0x7005
+	RTC_PLL_GET                      = 0x801c7011
+	RTC_PLL_SET                      = 0x401c7012
+	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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_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                  = 0x400854d5
+	TUNDETACHFILTER                  = 0x400854d6
+	TUNGETDEVNETNS                   = 0x54e3
+	TUNGETFEATURES                   = 0x800454cf
+	TUNGETFILTER                     = 0x800854db
+	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                         = 0x20
+	X86_FXSR_MAGIC                   = 0x0
+	XCASE                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2876,23 +506,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2909,8 +531,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2918,99 +538,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 b26659e..961507e 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
@@ -4,2870 +4,500 @@
 // +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/include -m64 /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FP_XSTATE_MAGIC2                            = 0x46505845
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0x5
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_32BIT                                   = 0x40
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8010743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40107446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x4010744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40107447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ARCH_PRCTL                           = 0x1e
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETFPXREGS                           = 0x12
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETFPXREGS                           = 0x13
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SINGLEBLOCK                          = 0x21
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_SYSEMU                               = 0x1f
-	PTRACE_SYSEMU_SINGLESTEP                    = 0x20
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8008700b
-	RTC_IRQP_SET                                = 0x4008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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
+	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
+	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
+	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
+	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_32BIT                        = 0x40
+	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
+	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
+	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
+	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
+	PPPIOCXFERUNIT                   = 0x744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_ARCH_PRCTL                = 0x1e
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GETFPXREGS                = 0x12
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SETFPXREGS                = 0x13
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SINGLEBLOCK               = 0x21
+	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_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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_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
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2876,23 +506,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2909,8 +531,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2918,99 +538,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 c69ddf6..a65576d 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
@@ -4,2876 +4,506 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x80041270
-	BLKBSZSET                                   = 0x40041271
-	BLKFLSBUF                                   = 0x1261
-	BLKFRAGET                                   = 0x1265
-	BLKFRASET                                   = 0x1264
-	BLKGETSIZE                                  = 0x1260
-	BLKGETSIZE64                                = 0x80041272
-	BLKPBSZGET                                  = 0x127b
-	BLKRAGET                                    = 0x1263
-	BLKRASET                                    = 0x1262
-	BLKROGET                                    = 0x125e
-	BLKROSET                                    = 0x125d
-	BLKRRPART                                   = 0x125f
-	BLKSECTGET                                  = 0x1267
-	BLKSECTSET                                  = 0x1266
-	BLKSSZGET                                   = 0x1268
-	BOTHER                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0xc
-	F_GETLK64                                   = 0xc
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0xd
-	F_SETLK64                                   = 0xd
-	F_SETLKW                                    = 0xe
-	F_SETLKW64                                  = 0xe
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x20
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x400
-	O_ASYNC                                     = 0x2000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x40
-	O_DIRECT                                    = 0x10000
-	O_DIRECTORY                                 = 0x4000
-	O_DSYNC                                     = 0x1000
-	O_EXCL                                      = 0x80
-	O_FSYNC                                     = 0x101000
-	O_LARGEFILE                                 = 0x20000
-	O_NDELAY                                    = 0x800
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x100
-	O_NOFOLLOW                                  = 0x8000
-	O_NONBLOCK                                  = 0x800
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x404000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	PERF_EVENT_IOC_DISABLE                      = 0x2401
-	PERF_EVENT_IOC_ENABLE                       = 0x2400
-	PERF_EVENT_IOC_ID                           = 0x80042407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x4004240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x40042409
-	PERF_EVENT_IOC_PERIOD                       = 0x40082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc004240a
-	PERF_EVENT_IOC_REFRESH                      = 0x2402
-	PERF_EVENT_IOC_RESET                        = 0x2403
-	PERF_EVENT_IOC_SET_BPF                      = 0x40042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x40042406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x2405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8008743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40087446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x400c744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40087447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETCRUNCHREGS                        = 0x19
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFDPIC                             = 0x1f
-	PTRACE_GETFDPIC_EXEC                        = 0x0
-	PTRACE_GETFDPIC_INTERP                      = 0x1
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETHBPREGS                           = 0x1d
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GETVFPREGS                           = 0x1b
-	PTRACE_GETWMMXREGS                          = 0x12
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x16
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETCRUNCHREGS                        = 0x1a
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETHBPREGS                           = 0x1e
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SETVFPREGS                           = 0x1c
-	PTRACE_SETWMMXREGS                          = 0x13
-	PTRACE_SET_SYSCALL                          = 0x17
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	PT_DATA_ADDR                                = 0x10004
-	PT_TEXT_ADDR                                = 0x10000
-	PT_TEXT_END_ADDR                            = 0x10008
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x7002
-	RTC_AIE_ON                                  = 0x7001
-	RTC_ALM_READ                                = 0x80247008
-	RTC_ALM_SET                                 = 0x40247007
-	RTC_EPOCH_READ                              = 0x8004700d
-	RTC_EPOCH_SET                               = 0x4004700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8004700b
-	RTC_IRQP_SET                                = 0x4004700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x7006
-	RTC_PIE_ON                                  = 0x7005
-	RTC_PLL_GET                                 = 0x801c7011
-	RTC_PLL_SET                                 = 0x401c7012
-	RTC_RD_TIME                                 = 0x80247009
-	RTC_SET_TIME                                = 0x4024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x400854d5
-	TUNDETACHFILTER                             = 0x400854d6
-	TUNGETDEVNETNS                              = 0x54e3
-	TUNGETFEATURES                              = 0x800454cf
-	TUNGETFILTER                                = 0x800854db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x20
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x80041270
+	BLKBSZSET                        = 0x40041271
+	BLKFLSBUF                        = 0x1261
+	BLKFRAGET                        = 0x1265
+	BLKFRASET                        = 0x1264
+	BLKGETSIZE                       = 0x1260
+	BLKGETSIZE64                     = 0x80041272
+	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
+	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
+	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
+	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
+	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
+	NFDBITS                          = 0x20
+	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
+	O_APPEND                         = 0x400
+	O_ASYNC                          = 0x2000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x40
+	O_DIRECT                         = 0x10000
+	O_DIRECTORY                      = 0x4000
+	O_DSYNC                          = 0x1000
+	O_EXCL                           = 0x80
+	O_FSYNC                          = 0x101000
+	O_LARGEFILE                      = 0x20000
+	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                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	PERF_EVENT_IOC_DISABLE           = 0x2401
+	PERF_EVENT_IOC_ENABLE            = 0x2400
+	PERF_EVENT_IOC_ID                = 0x80042407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x40042409
+	PERF_EVENT_IOC_PERIOD            = 0x40082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc004240a
+	PERF_EVENT_IOC_REFRESH           = 0x2402
+	PERF_EVENT_IOC_RESET             = 0x2403
+	PERF_EVENT_IOC_SET_BPF           = 0x40042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x40042406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x2405
+	PPPIOCATTACH                     = 0x4004743d
+	PPPIOCATTCHAN                    = 0x40047438
+	PPPIOCCONNECT                    = 0x4004743a
+	PPPIOCDETACH                     = 0x4004743c
+	PPPIOCDISCONN                    = 0x7439
+	PPPIOCGASYNCMAP                  = 0x80047458
+	PPPIOCGCHAN                      = 0x80047437
+	PPPIOCGDEBUG                     = 0x80047441
+	PPPIOCGFLAGS                     = 0x8004745a
+	PPPIOCGIDLE                      = 0x8008743f
+	PPPIOCGIDLE32                    = 0x8008743f
+	PPPIOCGIDLE64                    = 0x8010743f
+	PPPIOCGL2TPSTATS                 = 0x80487436
+	PPPIOCGMRU                       = 0x80047453
+	PPPIOCGRASYNCMAP                 = 0x80047455
+	PPPIOCGUNIT                      = 0x80047456
+	PPPIOCGXASYNCMAP                 = 0x80207450
+	PPPIOCSACTIVE                    = 0x40087446
+	PPPIOCSASYNCMAP                  = 0x40047457
+	PPPIOCSCOMPRESS                  = 0x400c744d
+	PPPIOCSDEBUG                     = 0x40047440
+	PPPIOCSFLAGS                     = 0x40047459
+	PPPIOCSMAXCID                    = 0x40047451
+	PPPIOCSMRRU                      = 0x4004743b
+	PPPIOCSMRU                       = 0x40047452
+	PPPIOCSNPMODE                    = 0x4008744b
+	PPPIOCSPASS                      = 0x40087447
+	PPPIOCSRASYNCMAP                 = 0x40047454
+	PPPIOCSXASYNCMAP                 = 0x4020744f
+	PPPIOCXFERUNIT                   = 0x744e
+	PR_SET_PTRACER_ANY               = 0xffffffff
+	PTRACE_GETCRUNCHREGS             = 0x19
+	PTRACE_GETFDPIC                  = 0x1f
+	PTRACE_GETFDPIC_EXEC             = 0x0
+	PTRACE_GETFDPIC_INTERP           = 0x1
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GETHBPREGS                = 0x1d
+	PTRACE_GETVFPREGS                = 0x1b
+	PTRACE_GETWMMXREGS               = 0x12
+	PTRACE_GET_THREAD_AREA           = 0x16
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_SETCRUNCHREGS             = 0x1a
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SETHBPREGS                = 0x1e
+	PTRACE_SETVFPREGS                = 0x1c
+	PTRACE_SETWMMXREGS               = 0x13
+	PTRACE_SET_SYSCALL               = 0x17
+	PT_DATA_ADDR                     = 0x10004
+	PT_TEXT_ADDR                     = 0x10000
+	PT_TEXT_END_ADDR                 = 0x10008
+	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                   = 0x8004700d
+	RTC_EPOCH_SET                    = 0x4004700e
+	RTC_IRQP_READ                    = 0x8004700b
+	RTC_IRQP_SET                     = 0x4004700c
+	RTC_PIE_OFF                      = 0x7006
+	RTC_PIE_ON                       = 0x7005
+	RTC_PLL_GET                      = 0x801c7011
+	RTC_PLL_SET                      = 0x401c7012
+	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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_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                  = 0x400854d5
+	TUNDETACHFILTER                  = 0x400854d6
+	TUNGETDEVNETNS                   = 0x54e3
+	TUNGETFEATURES                   = 0x800454cf
+	TUNGETFILTER                     = 0x800854db
+	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                         = 0x20
+	XCASE                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2882,23 +512,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2915,8 +537,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2924,99 +544,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 4a14044..cf075ca 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
@@ -4,2863 +4,496 @@
 // +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/include -fsigned-char /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ESR_MAGIC                                   = 0x45535201
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	EXTRA_MAGIC                                 = 0x45585401
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FPSIMD_MAGIC                                = 0x46508001
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0x5
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x400
-	O_ASYNC                                     = 0x2000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x40
-	O_DIRECT                                    = 0x10000
-	O_DIRECTORY                                 = 0x4000
-	O_DSYNC                                     = 0x1000
-	O_EXCL                                      = 0x80
-	O_FSYNC                                     = 0x101000
-	O_LARGEFILE                                 = 0x0
-	O_NDELAY                                    = 0x800
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x100
-	O_NOFOLLOW                                  = 0x8000
-	O_NONBLOCK                                  = 0x800
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x404000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8010743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40107446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x4010744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40107447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_SYSEMU                               = 0x1f
-	PTRACE_SYSEMU_SINGLESTEP                    = 0x20
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8008700b
-	RTC_IRQP_SET                                = 0x4008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SVE_MAGIC                                   = 0x53564501
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x80000
+	EFD_NONBLOCK                     = 0x800
+	EPOLL_CLOEXEC                    = 0x80000
+	ESR_MAGIC                        = 0x45535201
+	EXTPROC                          = 0x10000
+	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
+	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
+	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
+	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
+	O_APPEND                         = 0x400
+	O_ASYNC                          = 0x2000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x40
+	O_DIRECT                         = 0x10000
+	O_DIRECTORY                      = 0x4000
+	O_DSYNC                          = 0x1000
+	O_EXCL                           = 0x80
+	O_FSYNC                          = 0x101000
+	O_LARGEFILE                      = 0x0
+	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                           = 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
+	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
+	PPPIOCXFERUNIT                   = 0x744e
+	PROT_BTI                         = 0x10
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_PEEKMTETAGS               = 0x21
+	PTRACE_POKEMTETAGS               = 0x22
+	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_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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_TXTIME                        = 0x3d
+	SO_TYPE                          = 0x3
+	SO_WIFI_STATUS                   = 0x29
+	SO_ZEROCOPY                      = 0x3c
+	SVE_MAGIC                        = 0x53564501
+	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
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2869,23 +502,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2902,8 +527,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2911,99 +534,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 1bbc52c..efe90de 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
@@ -4,2872 +4,502 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x80
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x2000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x21
-	F_GETLK64                                   = 0x21
-	F_GETOWN                                    = 0x17
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x22
-	F_SETLK64                                   = 0x22
-	F_SETLKW                                    = 0x23
-	F_SETLKW64                                  = 0x23
-	F_SETOWN                                    = 0x18
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x100
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x80
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x800
-	MAP_ANONYMOUS                               = 0x800
-	MAP_DENYWRITE                               = 0x2000
-	MAP_EXECUTABLE                              = 0x4000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x1000
-	MAP_HUGETLB                                 = 0x80000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x8000
-	MAP_NONBLOCK                                = 0x20000
-	MAP_NORESERVE                               = 0x400
-	MAP_POPULATE                                = 0x10000
-	MAP_PRIVATE                                 = 0x2
-	MAP_RENAME                                  = 0x800
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x40000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x20
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x8
-	O_ASYNC                                     = 0x1000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x100
-	O_DIRECT                                    = 0x8000
-	O_DIRECTORY                                 = 0x10000
-	O_DSYNC                                     = 0x10
-	O_EXCL                                      = 0x400
-	O_FSYNC                                     = 0x4010
-	O_LARGEFILE                                 = 0x2000
-	O_NDELAY                                    = 0x80
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x800
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x80
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x4010
-	O_SYNC                                      = 0x4010
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4008743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80087446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x800c744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80087447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_GET_THREAD_AREA_3264                 = 0xc4
-	PTRACE_GET_WATCH_REGS                       = 0xd0
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKDATA_3264                        = 0xc1
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKTEXT_3264                        = 0xc0
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKEDATA_3264                        = 0xc3
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKETEXT_3264                        = 0xc2
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SET_WATCH_REGS                       = 0xd1
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x6
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x9
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x5
-	RLIMIT_NPROC                                = 0x8
-	RLIMIT_RSS                                  = 0x7
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4004700b
-	RTC_IRQP_SET                                = 0x8004700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x80
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x40047307
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x40047309
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x467f
-	SIOCOUTQ                                    = 0x7472
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x80047308
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x1
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x80
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x2
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0xffff
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1009
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	SO_ATTACH_REUSEPORT_CBPF                    = 0x33
-	SO_ATTACH_REUSEPORT_EBPF                    = 0x34
-	SO_BINDTODEVICE                             = 0x19
-	SO_BINDTOIFINDEX                            = 0x3e
-	SO_BPF_EXTENSIONS                           = 0x30
-	SO_BROADCAST                                = 0x20
-	SO_BSDCOMPAT                                = 0xe
-	SO_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x1029
-	SO_DONTROUTE                                = 0x10
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x1007
-	SO_GET_FILTER                               = 0x1a
-	SO_INCOMING_CPU                             = 0x31
-	SO_INCOMING_NAPI_ID                         = 0x38
-	SO_KEEPALIVE                                = 0x8
-	SO_LINGER                                   = 0x80
-	SO_LOCK_FILTER                              = 0x2c
-	SO_MARK                                     = 0x24
-	SO_MAX_PACING_RATE                          = 0x2f
-	SO_MEMINFO                                  = 0x37
-	SO_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0x100
-	SO_PASSCRED                                 = 0x11
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x12
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1e
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x1028
-	SO_RCVBUF                                   = 0x1002
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x1004
-	SO_RCVTIMEO                                 = 0x1006
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x1006
-	SO_REUSEADDR                                = 0x4
-	SO_REUSEPORT                                = 0x200
-	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                                   = 0x1001
-	SO_SNDBUFFORCE                              = 0x1f
-	SO_SNDLOWAT                                 = 0x1003
-	SO_SNDTIMEO                                 = 0x1005
-	SO_SNDTIMEO_NEW                             = 0x43
-	SO_SNDTIMEO_OLD                             = 0x1005
-	SO_STYLE                                    = 0x1008
-	SO_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x1008
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x5407
-	TCGETA                                      = 0x5401
-	TCGETS                                      = 0x540d
-	TCGETS2                                     = 0x4030542a
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x5410
-	TCSBRK                                      = 0x5405
-	TCSBRKP                                     = 0x5486
-	TCSETA                                      = 0x5402
-	TCSETAF                                     = 0x5404
-	TCSETAW                                     = 0x5403
-	TCSETS                                      = 0x540e
-	TCSETS2                                     = 0x8030542b
-	TCSETSF                                     = 0x5410
-	TCSETSF2                                    = 0x8030542d
-	TCSETSW                                     = 0x540f
-	TCSETSW2                                    = 0x8030542c
-	TCXONC                                      = 0x5406
-	TIMER_ABSTIME                               = 0x1
-	TIOCCBRK                                    = 0x5428
-	TIOCCONS                                    = 0x80047478
-	TIOCEXCL                                    = 0x740d
-	TIOCGDEV                                    = 0x40045432
-	TIOCGETD                                    = 0x7400
-	TIOCGETP                                    = 0x7408
-	TIOCGEXCL                                   = 0x40045440
-	TIOCGICOUNT                                 = 0x5492
-	TIOCGISO7816                                = 0x40285442
-	TIOCGLCKTRMIOS                              = 0x548b
-	TIOCGLTC                                    = 0x7474
-	TIOCGPGRP                                   = 0x40047477
-	TIOCGPKT                                    = 0x40045438
-	TIOCGPTLCK                                  = 0x40045439
-	TIOCGPTN                                    = 0x40045430
-	TIOCGPTPEER                                 = 0x20005441
-	TIOCGRS485                                  = 0x4020542e
-	TIOCGSERIAL                                 = 0x5484
-	TIOCGSID                                    = 0x7416
-	TIOCGSOFTCAR                                = 0x5481
-	TIOCGWINSZ                                  = 0x40087468
-	TIOCINQ                                     = 0x467f
-	TIOCLINUX                                   = 0x5483
-	TIOCMBIC                                    = 0x741c
-	TIOCMBIS                                    = 0x741b
-	TIOCMGET                                    = 0x741d
-	TIOCMIWAIT                                  = 0x5491
-	TIOCMSET                                    = 0x741a
-	TIOCM_CAR                                   = 0x100
-	TIOCM_CD                                    = 0x100
-	TIOCM_CTS                                   = 0x40
-	TIOCM_DSR                                   = 0x400
-	TIOCM_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x200
-	TIOCM_RNG                                   = 0x200
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x20
-	TIOCM_ST                                    = 0x10
-	TIOCNOTTY                                   = 0x5471
-	TIOCNXCL                                    = 0x740e
-	TIOCOUTQ                                    = 0x7472
-	TIOCPKT                                     = 0x5470
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	TIOCSBRK                                    = 0x5427
-	TIOCSCTTY                                   = 0x5480
-	TIOCSERCONFIG                               = 0x5488
-	TIOCSERGETLSR                               = 0x548e
-	TIOCSERGETMULTI                             = 0x548f
-	TIOCSERGSTRUCT                              = 0x548d
-	TIOCSERGWILD                                = 0x5489
-	TIOCSERSETMULTI                             = 0x5490
-	TIOCSERSWILD                                = 0x548a
-	TIOCSER_TEMT                                = 0x1
-	TIOCSETD                                    = 0x7401
-	TIOCSETN                                    = 0x740a
-	TIOCSETP                                    = 0x7409
-	TIOCSIG                                     = 0x80045436
-	TIOCSISO7816                                = 0xc0285443
-	TIOCSLCKTRMIOS                              = 0x548c
-	TIOCSLTC                                    = 0x7475
-	TIOCSPGRP                                   = 0x80047476
-	TIOCSPTLCK                                  = 0x80045431
-	TIOCSRS485                                  = 0xc020542f
-	TIOCSSERIAL                                 = 0x5485
-	TIOCSSOFTCAR                                = 0x5482
-	TIOCSTI                                     = 0x5472
-	TIOCSWINSZ                                  = 0x80087467
-	TIOCVHANGUP                                 = 0x5437
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x8000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x10
-	VEOL                                        = 0x11
-	VEOL2                                       = 0x6
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x4
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VSWTCH                                      = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x20
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 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                           = 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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x80000
+	EFD_NONBLOCK                     = 0x80
+	EPOLL_CLOEXEC                    = 0x80000
+	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
+	F_GETOWN                         = 0x17
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x22
+	F_SETLK64                        = 0x22
+	F_SETLKW                         = 0x23
+	F_SETLKW64                       = 0x23
+	F_SETOWN                         = 0x18
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	HUPCL                            = 0x400
+	ICANON                           = 0x2
+	IEXTEN                           = 0x100
+	IN_CLOEXEC                       = 0x80000
+	IN_NONBLOCK                      = 0x80
+	IOCTL_VM_SOCKETS_GET_LOCAL_CID   = 0x200007b9
+	ISIG                             = 0x1
+	IUCLC                            = 0x200
+	IXOFF                            = 0x1000
+	IXON                             = 0x400
+	MAP_ANON                         = 0x800
+	MAP_ANONYMOUS                    = 0x800
+	MAP_DENYWRITE                    = 0x2000
+	MAP_EXECUTABLE                   = 0x4000
+	MAP_GROWSDOWN                    = 0x1000
+	MAP_HUGETLB                      = 0x80000
+	MAP_LOCKED                       = 0x8000
+	MAP_NONBLOCK                     = 0x20000
+	MAP_NORESERVE                    = 0x400
+	MAP_POPULATE                     = 0x10000
+	MAP_RENAME                       = 0x800
+	MAP_STACK                        = 0x40000
+	MCL_CURRENT                      = 0x1
+	MCL_FUTURE                       = 0x2
+	MCL_ONFAULT                      = 0x4
+	NFDBITS                          = 0x20
+	NLDLY                            = 0x100
+	NOFLSH                           = 0x80
+	NS_GET_NSTYPE                    = 0x2000b703
+	NS_GET_OWNER_UID                 = 0x2000b704
+	NS_GET_PARENT                    = 0x2000b702
+	NS_GET_USERNS                    = 0x2000b701
+	OLCUC                            = 0x2
+	ONLCR                            = 0x4
+	O_APPEND                         = 0x8
+	O_ASYNC                          = 0x1000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x100
+	O_DIRECT                         = 0x8000
+	O_DIRECTORY                      = 0x10000
+	O_DSYNC                          = 0x10
+	O_EXCL                           = 0x400
+	O_FSYNC                          = 0x4010
+	O_LARGEFILE                      = 0x2000
+	O_NDELAY                         = 0x80
+	O_NOATIME                        = 0x40000
+	O_NOCTTY                         = 0x800
+	O_NOFOLLOW                       = 0x20000
+	O_NONBLOCK                       = 0x80
+	O_PATH                           = 0x200000
+	O_RSYNC                          = 0x4010
+	O_SYNC                           = 0x4010
+	O_TMPFILE                        = 0x410000
+	O_TRUNC                          = 0x200
+	PARENB                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	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
+	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
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PR_SET_PTRACER_ANY               = 0xffffffff
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_GET_THREAD_AREA_3264      = 0xc4
+	PTRACE_GET_WATCH_REGS            = 0xd0
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_PEEKDATA_3264             = 0xc1
+	PTRACE_PEEKTEXT_3264             = 0xc0
+	PTRACE_POKEDATA_3264             = 0xc3
+	PTRACE_POKETEXT_3264             = 0xc2
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SET_WATCH_REGS            = 0xd1
+	RLIMIT_AS                        = 0x6
+	RLIMIT_MEMLOCK                   = 0x9
+	RLIMIT_NOFILE                    = 0x5
+	RLIMIT_NPROC                     = 0x8
+	RLIMIT_RSS                       = 0x7
+	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_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                     = 0x80
+	SIOCATMARK                       = 0x40047307
+	SIOCGPGRP                        = 0x40047309
+	SIOCGSTAMPNS_NEW                 = 0x40108907
+	SIOCGSTAMP_NEW                   = 0x40108906
+	SIOCINQ                          = 0x467f
+	SIOCOUTQ                         = 0x7472
+	SIOCSPGRP                        = 0x80047308
+	SOCK_CLOEXEC                     = 0x80000
+	SOCK_DGRAM                       = 0x1
+	SOCK_NONBLOCK                    = 0x80
+	SOCK_STREAM                      = 0x2
+	SOL_SOCKET                       = 0xffff
+	SO_ACCEPTCONN                    = 0x1009
+	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                     = 0x20
+	SO_BSDCOMPAT                     = 0xe
+	SO_BUSY_POLL                     = 0x2e
+	SO_CNX_ADVICE                    = 0x35
+	SO_COOKIE                        = 0x39
+	SO_DETACH_REUSEPORT_BPF          = 0x44
+	SO_DOMAIN                        = 0x1029
+	SO_DONTROUTE                     = 0x10
+	SO_ERROR                         = 0x1007
+	SO_INCOMING_CPU                  = 0x31
+	SO_INCOMING_NAPI_ID              = 0x38
+	SO_KEEPALIVE                     = 0x8
+	SO_LINGER                        = 0x80
+	SO_LOCK_FILTER                   = 0x2c
+	SO_MARK                          = 0x24
+	SO_MAX_PACING_RATE               = 0x2f
+	SO_MEMINFO                       = 0x37
+	SO_NOFCS                         = 0x2b
+	SO_OOBINLINE                     = 0x100
+	SO_PASSCRED                      = 0x11
+	SO_PASSSEC                       = 0x22
+	SO_PEEK_OFF                      = 0x2a
+	SO_PEERCRED                      = 0x12
+	SO_PEERGROUPS                    = 0x3b
+	SO_PEERSEC                       = 0x1e
+	SO_PROTOCOL                      = 0x1028
+	SO_RCVBUF                        = 0x1002
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x1004
+	SO_RCVTIMEO                      = 0x1006
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x1006
+	SO_REUSEADDR                     = 0x4
+	SO_REUSEPORT                     = 0x200
+	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                        = 0x1001
+	SO_SNDBUFFORCE                   = 0x1f
+	SO_SNDLOWAT                      = 0x1003
+	SO_SNDTIMEO                      = 0x1005
+	SO_SNDTIMEO_NEW                  = 0x43
+	SO_SNDTIMEO_OLD                  = 0x1005
+	SO_STYLE                         = 0x1008
+	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_TXTIME                        = 0x3d
+	SO_TYPE                          = 0x1008
+	SO_WIFI_STATUS                   = 0x29
+	SO_ZEROCOPY                      = 0x3c
+	TAB1                             = 0x800
+	TAB2                             = 0x1000
+	TAB3                             = 0x1800
+	TABDLY                           = 0x1800
+	TCFLSH                           = 0x5407
+	TCGETA                           = 0x5401
+	TCGETS                           = 0x540d
+	TCGETS2                          = 0x4030542a
+	TCSAFLUSH                        = 0x5410
+	TCSBRK                           = 0x5405
+	TCSBRKP                          = 0x5486
+	TCSETA                           = 0x5402
+	TCSETAF                          = 0x5404
+	TCSETAW                          = 0x5403
+	TCSETS                           = 0x540e
+	TCSETS2                          = 0x8030542b
+	TCSETSF                          = 0x5410
+	TCSETSF2                         = 0x8030542d
+	TCSETSW                          = 0x540f
+	TCSETSW2                         = 0x8030542c
+	TCXONC                           = 0x5406
+	TFD_CLOEXEC                      = 0x80000
+	TFD_NONBLOCK                     = 0x80
+	TIOCCBRK                         = 0x5428
+	TIOCCONS                         = 0x80047478
+	TIOCEXCL                         = 0x740d
+	TIOCGDEV                         = 0x40045432
+	TIOCGETD                         = 0x7400
+	TIOCGETP                         = 0x7408
+	TIOCGEXCL                        = 0x40045440
+	TIOCGICOUNT                      = 0x5492
+	TIOCGISO7816                     = 0x40285442
+	TIOCGLCKTRMIOS                   = 0x548b
+	TIOCGLTC                         = 0x7474
+	TIOCGPGRP                        = 0x40047477
+	TIOCGPKT                         = 0x40045438
+	TIOCGPTLCK                       = 0x40045439
+	TIOCGPTN                         = 0x40045430
+	TIOCGPTPEER                      = 0x20005441
+	TIOCGRS485                       = 0x4020542e
+	TIOCGSERIAL                      = 0x5484
+	TIOCGSID                         = 0x7416
+	TIOCGSOFTCAR                     = 0x5481
+	TIOCGWINSZ                       = 0x40087468
+	TIOCINQ                          = 0x467f
+	TIOCLINUX                        = 0x5483
+	TIOCMBIC                         = 0x741c
+	TIOCMBIS                         = 0x741b
+	TIOCMGET                         = 0x741d
+	TIOCMIWAIT                       = 0x5491
+	TIOCMSET                         = 0x741a
+	TIOCM_CAR                        = 0x100
+	TIOCM_CD                         = 0x100
+	TIOCM_CTS                        = 0x40
+	TIOCM_DSR                        = 0x400
+	TIOCM_RI                         = 0x200
+	TIOCM_RNG                        = 0x200
+	TIOCM_SR                         = 0x20
+	TIOCM_ST                         = 0x10
+	TIOCNOTTY                        = 0x5471
+	TIOCNXCL                         = 0x740e
+	TIOCOUTQ                         = 0x7472
+	TIOCPKT                          = 0x5470
+	TIOCSBRK                         = 0x5427
+	TIOCSCTTY                        = 0x5480
+	TIOCSERCONFIG                    = 0x5488
+	TIOCSERGETLSR                    = 0x548e
+	TIOCSERGETMULTI                  = 0x548f
+	TIOCSERGSTRUCT                   = 0x548d
+	TIOCSERGWILD                     = 0x5489
+	TIOCSERSETMULTI                  = 0x5490
+	TIOCSERSWILD                     = 0x548a
+	TIOCSER_TEMT                     = 0x1
+	TIOCSETD                         = 0x7401
+	TIOCSETN                         = 0x740a
+	TIOCSETP                         = 0x7409
+	TIOCSIG                          = 0x80045436
+	TIOCSISO7816                     = 0xc0285443
+	TIOCSLCKTRMIOS                   = 0x548c
+	TIOCSLTC                         = 0x7475
+	TIOCSPGRP                        = 0x80047476
+	TIOCSPTLCK                       = 0x80045431
+	TIOCSRS485                       = 0xc020542f
+	TIOCSSERIAL                      = 0x5485
+	TIOCSSOFTCAR                     = 0x5482
+	TIOCSTI                          = 0x5472
+	TIOCSWINSZ                       = 0x80087467
+	TIOCVHANGUP                      = 0x5437
+	TOSTOP                           = 0x8000
+	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                         = 0xd
+	VEOF                             = 0x10
+	VEOL                             = 0x11
+	VEOL2                            = 0x6
+	VMIN                             = 0x4
+	VREPRINT                         = 0xc
+	VSTART                           = 0x8
+	VSTOP                            = 0x9
+	VSUSP                            = 0xa
+	VSWTC                            = 0x7
+	VSWTCH                           = 0x7
+	VT1                              = 0x4000
+	VTDLY                            = 0x4000
+	VTIME                            = 0x5
+	VWERASE                          = 0xe
+	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                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x7d)
 	EADDRNOTAVAIL   = syscall.Errno(0x7e)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x7c)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x95)
 	EBADE           = syscall.Errno(0x32)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x51)
 	EBADMSG         = syscall.Errno(0x4d)
 	EBADR           = syscall.Errno(0x33)
 	EBADRQC         = syscall.Errno(0x36)
 	EBADSLT         = syscall.Errno(0x37)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x9e)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x25)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x82)
@@ -2878,12 +508,8 @@ const (
 	EDEADLK         = syscall.Errno(0x2d)
 	EDEADLOCK       = syscall.Errno(0x38)
 	EDESTADDRREQ    = syscall.Errno(0x60)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x46d)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x93)
 	EHOSTUNREACH    = syscall.Errno(0x94)
 	EHWPOISON       = syscall.Errno(0xa8)
@@ -2891,11 +517,7 @@ const (
 	EILSEQ          = syscall.Errno(0x58)
 	EINIT           = syscall.Errno(0x8d)
 	EINPROGRESS     = syscall.Errno(0x96)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x85)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x8b)
 	EKEYEXPIRED     = syscall.Errno(0xa2)
 	EKEYREJECTED    = syscall.Errno(0xa4)
@@ -2912,8 +534,6 @@ const (
 	ELNRNG          = syscall.Errno(0x29)
 	ELOOP           = syscall.Errno(0x5a)
 	EMEDIUMTYPE     = syscall.Errno(0xa0)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x61)
 	EMULTIHOP       = syscall.Errno(0x4a)
 	ENAMETOOLONG    = syscall.Errno(0x4e)
@@ -2921,100 +541,68 @@ const (
 	ENETDOWN        = syscall.Errno(0x7f)
 	ENETRESET       = syscall.Errno(0x81)
 	ENETUNREACH     = syscall.Errno(0x80)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x35)
 	ENOBUFS         = syscall.Errno(0x84)
 	ENOCSI          = syscall.Errno(0x2b)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0xa1)
 	ENOLCK          = syscall.Errno(0x2e)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x9f)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x23)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x63)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x59)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x86)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x5d)
 	ENOTNAM         = syscall.Errno(0x89)
 	ENOTRECOVERABLE = syscall.Errno(0xa6)
 	ENOTSOCK        = syscall.Errno(0x5f)
 	ENOTSUP         = syscall.Errno(0x7a)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x50)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x7a)
 	EOVERFLOW       = syscall.Errno(0x4f)
 	EOWNERDEAD      = syscall.Errno(0xa5)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x7b)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x78)
 	EPROTOTYPE      = syscall.Errno(0x62)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x52)
 	EREMDEV         = syscall.Errno(0x8e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x8c)
 	ERESTART        = syscall.Errno(0x5b)
 	ERFKILL         = syscall.Errno(0xa7)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x8f)
 	ESOCKTNOSUPPORT = syscall.Errno(0x79)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x97)
 	ESTRPIPE        = syscall.Errno(0x5c)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x91)
 	ETOOMANYREFS    = syscall.Errno(0x90)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x87)
 	EUNATCH         = syscall.Errno(0x2a)
 	EUSERS          = syscall.Errno(0x5e)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x34)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0xa)
 	SIGCHLD   = syscall.Signal(0x12)
 	SIGCLD    = syscall.Signal(0x12)
 	SIGCONT   = syscall.Signal(0x19)
 	SIGEMT    = syscall.Signal(0x7)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x16)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x16)
 	SIGPROF   = syscall.Signal(0x1d)
 	SIGPWR    = syscall.Signal(0x13)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTOP   = syscall.Signal(0x17)
 	SIGSYS    = syscall.Signal(0xc)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x18)
 	SIGTTIN   = syscall.Signal(0x1a)
 	SIGTTOU   = syscall.Signal(0x1b)
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 2b339ef..8b0e891 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
@@ -4,2872 +4,502 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x40081270
-	BLKBSZSET                                   = 0x80081271
-	BLKFLSBUF                                   = 0x20001261
-	BLKFRAGET                                   = 0x20001265
-	BLKFRASET                                   = 0x20001264
-	BLKGETSIZE                                  = 0x20001260
-	BLKGETSIZE64                                = 0x40081272
-	BLKPBSZGET                                  = 0x2000127b
-	BLKRAGET                                    = 0x20001263
-	BLKRASET                                    = 0x20001262
-	BLKROGET                                    = 0x2000125e
-	BLKROSET                                    = 0x2000125d
-	BLKRRPART                                   = 0x2000125f
-	BLKSECTGET                                  = 0x20001267
-	BLKSECTSET                                  = 0x20001266
-	BLKSSZGET                                   = 0x20001268
-	BOTHER                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x80
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x2000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0xe
-	F_GETLK64                                   = 0xe
-	F_GETOWN                                    = 0x17
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x18
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x100
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x80
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x800
-	MAP_ANONYMOUS                               = 0x800
-	MAP_DENYWRITE                               = 0x2000
-	MAP_EXECUTABLE                              = 0x4000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x1000
-	MAP_HUGETLB                                 = 0x80000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x8000
-	MAP_NONBLOCK                                = 0x20000
-	MAP_NORESERVE                               = 0x400
-	MAP_POPULATE                                = 0x10000
-	MAP_PRIVATE                                 = 0x2
-	MAP_RENAME                                  = 0x800
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x40000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x8
-	O_ASYNC                                     = 0x1000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x100
-	O_DIRECT                                    = 0x8000
-	O_DIRECTORY                                 = 0x10000
-	O_DSYNC                                     = 0x10
-	O_EXCL                                      = 0x400
-	O_FSYNC                                     = 0x4010
-	O_LARGEFILE                                 = 0x0
-	O_NDELAY                                    = 0x80
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x800
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x80
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x4010
-	O_SYNC                                      = 0x4010
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	PERF_EVENT_IOC_DISABLE                      = 0x20002401
-	PERF_EVENT_IOC_ENABLE                       = 0x20002400
-	PERF_EVENT_IOC_ID                           = 0x40082407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x8008240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x80042409
-	PERF_EVENT_IOC_PERIOD                       = 0x80082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc008240a
-	PERF_EVENT_IOC_REFRESH                      = 0x20002402
-	PERF_EVENT_IOC_RESET                        = 0x20002403
-	PERF_EVENT_IOC_SET_BPF                      = 0x80042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x80082406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x20002405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4010743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80107446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x8010744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80107447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_GET_THREAD_AREA_3264                 = 0xc4
-	PTRACE_GET_WATCH_REGS                       = 0xd0
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKDATA_3264                        = 0xc1
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKTEXT_3264                        = 0xc0
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKEDATA_3264                        = 0xc3
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKETEXT_3264                        = 0xc2
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SET_WATCH_REGS                       = 0xd1
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x6
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x9
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x5
-	RLIMIT_NPROC                                = 0x8
-	RLIMIT_RSS                                  = 0x7
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x20007002
-	RTC_AIE_ON                                  = 0x20007001
-	RTC_ALM_READ                                = 0x40247008
-	RTC_ALM_SET                                 = 0x80247007
-	RTC_EPOCH_READ                              = 0x4008700d
-	RTC_EPOCH_SET                               = 0x8008700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4008700b
-	RTC_IRQP_SET                                = 0x8008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x20007006
-	RTC_PIE_ON                                  = 0x20007005
-	RTC_PLL_GET                                 = 0x40207011
-	RTC_PLL_SET                                 = 0x80207012
-	RTC_RD_TIME                                 = 0x40247009
-	RTC_SET_TIME                                = 0x8024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x80
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x40047307
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x40047309
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x467f
-	SIOCOUTQ                                    = 0x7472
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x80047308
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x1
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x80
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x2
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0xffff
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1009
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	SO_ATTACH_REUSEPORT_CBPF                    = 0x33
-	SO_ATTACH_REUSEPORT_EBPF                    = 0x34
-	SO_BINDTODEVICE                             = 0x19
-	SO_BINDTOIFINDEX                            = 0x3e
-	SO_BPF_EXTENSIONS                           = 0x30
-	SO_BROADCAST                                = 0x20
-	SO_BSDCOMPAT                                = 0xe
-	SO_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x1029
-	SO_DONTROUTE                                = 0x10
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x1007
-	SO_GET_FILTER                               = 0x1a
-	SO_INCOMING_CPU                             = 0x31
-	SO_INCOMING_NAPI_ID                         = 0x38
-	SO_KEEPALIVE                                = 0x8
-	SO_LINGER                                   = 0x80
-	SO_LOCK_FILTER                              = 0x2c
-	SO_MARK                                     = 0x24
-	SO_MAX_PACING_RATE                          = 0x2f
-	SO_MEMINFO                                  = 0x37
-	SO_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0x100
-	SO_PASSCRED                                 = 0x11
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x12
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1e
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x1028
-	SO_RCVBUF                                   = 0x1002
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x1004
-	SO_RCVTIMEO                                 = 0x1006
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x1006
-	SO_REUSEADDR                                = 0x4
-	SO_REUSEPORT                                = 0x200
-	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                                   = 0x1001
-	SO_SNDBUFFORCE                              = 0x1f
-	SO_SNDLOWAT                                 = 0x1003
-	SO_SNDTIMEO                                 = 0x1005
-	SO_SNDTIMEO_NEW                             = 0x43
-	SO_SNDTIMEO_OLD                             = 0x1005
-	SO_STYLE                                    = 0x1008
-	SO_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x1008
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x5407
-	TCGETA                                      = 0x5401
-	TCGETS                                      = 0x540d
-	TCGETS2                                     = 0x4030542a
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x5410
-	TCSBRK                                      = 0x5405
-	TCSBRKP                                     = 0x5486
-	TCSETA                                      = 0x5402
-	TCSETAF                                     = 0x5404
-	TCSETAW                                     = 0x5403
-	TCSETS                                      = 0x540e
-	TCSETS2                                     = 0x8030542b
-	TCSETSF                                     = 0x5410
-	TCSETSF2                                    = 0x8030542d
-	TCSETSW                                     = 0x540f
-	TCSETSW2                                    = 0x8030542c
-	TCXONC                                      = 0x5406
-	TIMER_ABSTIME                               = 0x1
-	TIOCCBRK                                    = 0x5428
-	TIOCCONS                                    = 0x80047478
-	TIOCEXCL                                    = 0x740d
-	TIOCGDEV                                    = 0x40045432
-	TIOCGETD                                    = 0x7400
-	TIOCGETP                                    = 0x7408
-	TIOCGEXCL                                   = 0x40045440
-	TIOCGICOUNT                                 = 0x5492
-	TIOCGISO7816                                = 0x40285442
-	TIOCGLCKTRMIOS                              = 0x548b
-	TIOCGLTC                                    = 0x7474
-	TIOCGPGRP                                   = 0x40047477
-	TIOCGPKT                                    = 0x40045438
-	TIOCGPTLCK                                  = 0x40045439
-	TIOCGPTN                                    = 0x40045430
-	TIOCGPTPEER                                 = 0x20005441
-	TIOCGRS485                                  = 0x4020542e
-	TIOCGSERIAL                                 = 0x5484
-	TIOCGSID                                    = 0x7416
-	TIOCGSOFTCAR                                = 0x5481
-	TIOCGWINSZ                                  = 0x40087468
-	TIOCINQ                                     = 0x467f
-	TIOCLINUX                                   = 0x5483
-	TIOCMBIC                                    = 0x741c
-	TIOCMBIS                                    = 0x741b
-	TIOCMGET                                    = 0x741d
-	TIOCMIWAIT                                  = 0x5491
-	TIOCMSET                                    = 0x741a
-	TIOCM_CAR                                   = 0x100
-	TIOCM_CD                                    = 0x100
-	TIOCM_CTS                                   = 0x40
-	TIOCM_DSR                                   = 0x400
-	TIOCM_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x200
-	TIOCM_RNG                                   = 0x200
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x20
-	TIOCM_ST                                    = 0x10
-	TIOCNOTTY                                   = 0x5471
-	TIOCNXCL                                    = 0x740e
-	TIOCOUTQ                                    = 0x7472
-	TIOCPKT                                     = 0x5470
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	TIOCSBRK                                    = 0x5427
-	TIOCSCTTY                                   = 0x5480
-	TIOCSERCONFIG                               = 0x5488
-	TIOCSERGETLSR                               = 0x548e
-	TIOCSERGETMULTI                             = 0x548f
-	TIOCSERGSTRUCT                              = 0x548d
-	TIOCSERGWILD                                = 0x5489
-	TIOCSERSETMULTI                             = 0x5490
-	TIOCSERSWILD                                = 0x548a
-	TIOCSER_TEMT                                = 0x1
-	TIOCSETD                                    = 0x7401
-	TIOCSETN                                    = 0x740a
-	TIOCSETP                                    = 0x7409
-	TIOCSIG                                     = 0x80045436
-	TIOCSISO7816                                = 0xc0285443
-	TIOCSLCKTRMIOS                              = 0x548c
-	TIOCSLTC                                    = 0x7475
-	TIOCSPGRP                                   = 0x80047476
-	TIOCSPTLCK                                  = 0x80045431
-	TIOCSRS485                                  = 0xc020542f
-	TIOCSSERIAL                                 = 0x5485
-	TIOCSSOFTCAR                                = 0x5482
-	TIOCSTI                                     = 0x5472
-	TIOCSWINSZ                                  = 0x80087467
-	TIOCVHANGUP                                 = 0x5437
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x8000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x801054d5
-	TUNDETACHFILTER                             = 0x801054d6
-	TUNGETDEVNETNS                              = 0x200054e3
-	TUNGETFEATURES                              = 0x400454cf
-	TUNGETFILTER                                = 0x401054db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x10
-	VEOL                                        = 0x11
-	VEOL2                                       = 0x6
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x4
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VSWTCH                                      = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x40081270
+	BLKBSZSET                        = 0x80081271
+	BLKFLSBUF                        = 0x20001261
+	BLKFRAGET                        = 0x20001265
+	BLKFRASET                        = 0x20001264
+	BLKGETSIZE                       = 0x20001260
+	BLKGETSIZE64                     = 0x40081272
+	BLKPBSZGET                       = 0x2000127b
+	BLKRAGET                         = 0x20001263
+	BLKRASET                         = 0x20001262
+	BLKROGET                         = 0x2000125e
+	BLKROSET                         = 0x2000125d
+	BLKRRPART                        = 0x2000125f
+	BLKSECTGET                       = 0x20001267
+	BLKSECTSET                       = 0x20001266
+	BLKSSZGET                        = 0x20001268
+	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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x80000
+	EFD_NONBLOCK                     = 0x80
+	EPOLL_CLOEXEC                    = 0x80000
+	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
+	F_GETOWN                         = 0x17
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x6
+	F_SETLK64                        = 0x6
+	F_SETLKW                         = 0x7
+	F_SETLKW64                       = 0x7
+	F_SETOWN                         = 0x18
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	HUPCL                            = 0x400
+	ICANON                           = 0x2
+	IEXTEN                           = 0x100
+	IN_CLOEXEC                       = 0x80000
+	IN_NONBLOCK                      = 0x80
+	IOCTL_VM_SOCKETS_GET_LOCAL_CID   = 0x200007b9
+	ISIG                             = 0x1
+	IUCLC                            = 0x200
+	IXOFF                            = 0x1000
+	IXON                             = 0x400
+	MAP_ANON                         = 0x800
+	MAP_ANONYMOUS                    = 0x800
+	MAP_DENYWRITE                    = 0x2000
+	MAP_EXECUTABLE                   = 0x4000
+	MAP_GROWSDOWN                    = 0x1000
+	MAP_HUGETLB                      = 0x80000
+	MAP_LOCKED                       = 0x8000
+	MAP_NONBLOCK                     = 0x20000
+	MAP_NORESERVE                    = 0x400
+	MAP_POPULATE                     = 0x10000
+	MAP_RENAME                       = 0x800
+	MAP_STACK                        = 0x40000
+	MCL_CURRENT                      = 0x1
+	MCL_FUTURE                       = 0x2
+	MCL_ONFAULT                      = 0x4
+	NFDBITS                          = 0x40
+	NLDLY                            = 0x100
+	NOFLSH                           = 0x80
+	NS_GET_NSTYPE                    = 0x2000b703
+	NS_GET_OWNER_UID                 = 0x2000b704
+	NS_GET_PARENT                    = 0x2000b702
+	NS_GET_USERNS                    = 0x2000b701
+	OLCUC                            = 0x2
+	ONLCR                            = 0x4
+	O_APPEND                         = 0x8
+	O_ASYNC                          = 0x1000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x100
+	O_DIRECT                         = 0x8000
+	O_DIRECTORY                      = 0x10000
+	O_DSYNC                          = 0x10
+	O_EXCL                           = 0x400
+	O_FSYNC                          = 0x4010
+	O_LARGEFILE                      = 0x0
+	O_NDELAY                         = 0x80
+	O_NOATIME                        = 0x40000
+	O_NOCTTY                         = 0x800
+	O_NOFOLLOW                       = 0x20000
+	O_NONBLOCK                       = 0x80
+	O_PATH                           = 0x200000
+	O_RSYNC                          = 0x4010
+	O_SYNC                           = 0x4010
+	O_TMPFILE                        = 0x410000
+	O_TRUNC                          = 0x200
+	PARENB                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	PERF_EVENT_IOC_DISABLE           = 0x20002401
+	PERF_EVENT_IOC_ENABLE            = 0x20002400
+	PERF_EVENT_IOC_ID                = 0x40082407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x80042409
+	PERF_EVENT_IOC_PERIOD            = 0x80082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc008240a
+	PERF_EVENT_IOC_REFRESH           = 0x20002402
+	PERF_EVENT_IOC_RESET             = 0x20002403
+	PERF_EVENT_IOC_SET_BPF           = 0x80042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x80082406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x20002405
+	PPPIOCATTACH                     = 0x8004743d
+	PPPIOCATTCHAN                    = 0x80047438
+	PPPIOCCONNECT                    = 0x8004743a
+	PPPIOCDETACH                     = 0x8004743c
+	PPPIOCDISCONN                    = 0x20007439
+	PPPIOCGASYNCMAP                  = 0x40047458
+	PPPIOCGCHAN                      = 0x40047437
+	PPPIOCGDEBUG                     = 0x40047441
+	PPPIOCGFLAGS                     = 0x4004745a
+	PPPIOCGIDLE                      = 0x4010743f
+	PPPIOCGIDLE32                    = 0x4008743f
+	PPPIOCGIDLE64                    = 0x4010743f
+	PPPIOCGL2TPSTATS                 = 0x40487436
+	PPPIOCGMRU                       = 0x40047453
+	PPPIOCGRASYNCMAP                 = 0x40047455
+	PPPIOCGUNIT                      = 0x40047456
+	PPPIOCGXASYNCMAP                 = 0x40207450
+	PPPIOCSACTIVE                    = 0x80107446
+	PPPIOCSASYNCMAP                  = 0x80047457
+	PPPIOCSCOMPRESS                  = 0x8010744d
+	PPPIOCSDEBUG                     = 0x80047440
+	PPPIOCSFLAGS                     = 0x80047459
+	PPPIOCSMAXCID                    = 0x80047451
+	PPPIOCSMRRU                      = 0x8004743b
+	PPPIOCSMRU                       = 0x80047452
+	PPPIOCSNPMODE                    = 0x8008744b
+	PPPIOCSPASS                      = 0x80107447
+	PPPIOCSRASYNCMAP                 = 0x80047454
+	PPPIOCSXASYNCMAP                 = 0x8020744f
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_GET_THREAD_AREA_3264      = 0xc4
+	PTRACE_GET_WATCH_REGS            = 0xd0
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_PEEKDATA_3264             = 0xc1
+	PTRACE_PEEKTEXT_3264             = 0xc0
+	PTRACE_POKEDATA_3264             = 0xc3
+	PTRACE_POKETEXT_3264             = 0xc2
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SET_WATCH_REGS            = 0xd1
+	RLIMIT_AS                        = 0x6
+	RLIMIT_MEMLOCK                   = 0x9
+	RLIMIT_NOFILE                    = 0x5
+	RLIMIT_NPROC                     = 0x8
+	RLIMIT_RSS                       = 0x7
+	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                   = 0x4008700d
+	RTC_EPOCH_SET                    = 0x8008700e
+	RTC_IRQP_READ                    = 0x4008700b
+	RTC_IRQP_SET                     = 0x8008700c
+	RTC_PIE_OFF                      = 0x20007006
+	RTC_PIE_ON                       = 0x20007005
+	RTC_PLL_GET                      = 0x40207011
+	RTC_PLL_SET                      = 0x80207012
+	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                     = 0x80
+	SIOCATMARK                       = 0x40047307
+	SIOCGPGRP                        = 0x40047309
+	SIOCGSTAMPNS_NEW                 = 0x40108907
+	SIOCGSTAMP_NEW                   = 0x40108906
+	SIOCINQ                          = 0x467f
+	SIOCOUTQ                         = 0x7472
+	SIOCSPGRP                        = 0x80047308
+	SOCK_CLOEXEC                     = 0x80000
+	SOCK_DGRAM                       = 0x1
+	SOCK_NONBLOCK                    = 0x80
+	SOCK_STREAM                      = 0x2
+	SOL_SOCKET                       = 0xffff
+	SO_ACCEPTCONN                    = 0x1009
+	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                     = 0x20
+	SO_BSDCOMPAT                     = 0xe
+	SO_BUSY_POLL                     = 0x2e
+	SO_CNX_ADVICE                    = 0x35
+	SO_COOKIE                        = 0x39
+	SO_DETACH_REUSEPORT_BPF          = 0x44
+	SO_DOMAIN                        = 0x1029
+	SO_DONTROUTE                     = 0x10
+	SO_ERROR                         = 0x1007
+	SO_INCOMING_CPU                  = 0x31
+	SO_INCOMING_NAPI_ID              = 0x38
+	SO_KEEPALIVE                     = 0x8
+	SO_LINGER                        = 0x80
+	SO_LOCK_FILTER                   = 0x2c
+	SO_MARK                          = 0x24
+	SO_MAX_PACING_RATE               = 0x2f
+	SO_MEMINFO                       = 0x37
+	SO_NOFCS                         = 0x2b
+	SO_OOBINLINE                     = 0x100
+	SO_PASSCRED                      = 0x11
+	SO_PASSSEC                       = 0x22
+	SO_PEEK_OFF                      = 0x2a
+	SO_PEERCRED                      = 0x12
+	SO_PEERGROUPS                    = 0x3b
+	SO_PEERSEC                       = 0x1e
+	SO_PROTOCOL                      = 0x1028
+	SO_RCVBUF                        = 0x1002
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x1004
+	SO_RCVTIMEO                      = 0x1006
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x1006
+	SO_REUSEADDR                     = 0x4
+	SO_REUSEPORT                     = 0x200
+	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                        = 0x1001
+	SO_SNDBUFFORCE                   = 0x1f
+	SO_SNDLOWAT                      = 0x1003
+	SO_SNDTIMEO                      = 0x1005
+	SO_SNDTIMEO_NEW                  = 0x43
+	SO_SNDTIMEO_OLD                  = 0x1005
+	SO_STYLE                         = 0x1008
+	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_TXTIME                        = 0x3d
+	SO_TYPE                          = 0x1008
+	SO_WIFI_STATUS                   = 0x29
+	SO_ZEROCOPY                      = 0x3c
+	TAB1                             = 0x800
+	TAB2                             = 0x1000
+	TAB3                             = 0x1800
+	TABDLY                           = 0x1800
+	TCFLSH                           = 0x5407
+	TCGETA                           = 0x5401
+	TCGETS                           = 0x540d
+	TCGETS2                          = 0x4030542a
+	TCSAFLUSH                        = 0x5410
+	TCSBRK                           = 0x5405
+	TCSBRKP                          = 0x5486
+	TCSETA                           = 0x5402
+	TCSETAF                          = 0x5404
+	TCSETAW                          = 0x5403
+	TCSETS                           = 0x540e
+	TCSETS2                          = 0x8030542b
+	TCSETSF                          = 0x5410
+	TCSETSF2                         = 0x8030542d
+	TCSETSW                          = 0x540f
+	TCSETSW2                         = 0x8030542c
+	TCXONC                           = 0x5406
+	TFD_CLOEXEC                      = 0x80000
+	TFD_NONBLOCK                     = 0x80
+	TIOCCBRK                         = 0x5428
+	TIOCCONS                         = 0x80047478
+	TIOCEXCL                         = 0x740d
+	TIOCGDEV                         = 0x40045432
+	TIOCGETD                         = 0x7400
+	TIOCGETP                         = 0x7408
+	TIOCGEXCL                        = 0x40045440
+	TIOCGICOUNT                      = 0x5492
+	TIOCGISO7816                     = 0x40285442
+	TIOCGLCKTRMIOS                   = 0x548b
+	TIOCGLTC                         = 0x7474
+	TIOCGPGRP                        = 0x40047477
+	TIOCGPKT                         = 0x40045438
+	TIOCGPTLCK                       = 0x40045439
+	TIOCGPTN                         = 0x40045430
+	TIOCGPTPEER                      = 0x20005441
+	TIOCGRS485                       = 0x4020542e
+	TIOCGSERIAL                      = 0x5484
+	TIOCGSID                         = 0x7416
+	TIOCGSOFTCAR                     = 0x5481
+	TIOCGWINSZ                       = 0x40087468
+	TIOCINQ                          = 0x467f
+	TIOCLINUX                        = 0x5483
+	TIOCMBIC                         = 0x741c
+	TIOCMBIS                         = 0x741b
+	TIOCMGET                         = 0x741d
+	TIOCMIWAIT                       = 0x5491
+	TIOCMSET                         = 0x741a
+	TIOCM_CAR                        = 0x100
+	TIOCM_CD                         = 0x100
+	TIOCM_CTS                        = 0x40
+	TIOCM_DSR                        = 0x400
+	TIOCM_RI                         = 0x200
+	TIOCM_RNG                        = 0x200
+	TIOCM_SR                         = 0x20
+	TIOCM_ST                         = 0x10
+	TIOCNOTTY                        = 0x5471
+	TIOCNXCL                         = 0x740e
+	TIOCOUTQ                         = 0x7472
+	TIOCPKT                          = 0x5470
+	TIOCSBRK                         = 0x5427
+	TIOCSCTTY                        = 0x5480
+	TIOCSERCONFIG                    = 0x5488
+	TIOCSERGETLSR                    = 0x548e
+	TIOCSERGETMULTI                  = 0x548f
+	TIOCSERGSTRUCT                   = 0x548d
+	TIOCSERGWILD                     = 0x5489
+	TIOCSERSETMULTI                  = 0x5490
+	TIOCSERSWILD                     = 0x548a
+	TIOCSER_TEMT                     = 0x1
+	TIOCSETD                         = 0x7401
+	TIOCSETN                         = 0x740a
+	TIOCSETP                         = 0x7409
+	TIOCSIG                          = 0x80045436
+	TIOCSISO7816                     = 0xc0285443
+	TIOCSLCKTRMIOS                   = 0x548c
+	TIOCSLTC                         = 0x7475
+	TIOCSPGRP                        = 0x80047476
+	TIOCSPTLCK                       = 0x80045431
+	TIOCSRS485                       = 0xc020542f
+	TIOCSSERIAL                      = 0x5485
+	TIOCSSOFTCAR                     = 0x5482
+	TIOCSTI                          = 0x5472
+	TIOCSWINSZ                       = 0x80087467
+	TIOCVHANGUP                      = 0x5437
+	TOSTOP                           = 0x8000
+	TUNATTACHFILTER                  = 0x801054d5
+	TUNDETACHFILTER                  = 0x801054d6
+	TUNGETDEVNETNS                   = 0x200054e3
+	TUNGETFEATURES                   = 0x400454cf
+	TUNGETFILTER                     = 0x401054db
+	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                         = 0xd
+	VEOF                             = 0x10
+	VEOL                             = 0x11
+	VEOL2                            = 0x6
+	VMIN                             = 0x4
+	VREPRINT                         = 0xc
+	VSTART                           = 0x8
+	VSTOP                            = 0x9
+	VSUSP                            = 0xa
+	VSWTC                            = 0x7
+	VSWTCH                           = 0x7
+	VT1                              = 0x4000
+	VTDLY                            = 0x4000
+	VTIME                            = 0x5
+	VWERASE                          = 0xe
+	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                         = 0x40
+	XCASE                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x7d)
 	EADDRNOTAVAIL   = syscall.Errno(0x7e)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x7c)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x95)
 	EBADE           = syscall.Errno(0x32)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x51)
 	EBADMSG         = syscall.Errno(0x4d)
 	EBADR           = syscall.Errno(0x33)
 	EBADRQC         = syscall.Errno(0x36)
 	EBADSLT         = syscall.Errno(0x37)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x9e)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x25)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x82)
@@ -2878,12 +508,8 @@ const (
 	EDEADLK         = syscall.Errno(0x2d)
 	EDEADLOCK       = syscall.Errno(0x38)
 	EDESTADDRREQ    = syscall.Errno(0x60)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x46d)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x93)
 	EHOSTUNREACH    = syscall.Errno(0x94)
 	EHWPOISON       = syscall.Errno(0xa8)
@@ -2891,11 +517,7 @@ const (
 	EILSEQ          = syscall.Errno(0x58)
 	EINIT           = syscall.Errno(0x8d)
 	EINPROGRESS     = syscall.Errno(0x96)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x85)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x8b)
 	EKEYEXPIRED     = syscall.Errno(0xa2)
 	EKEYREJECTED    = syscall.Errno(0xa4)
@@ -2912,8 +534,6 @@ const (
 	ELNRNG          = syscall.Errno(0x29)
 	ELOOP           = syscall.Errno(0x5a)
 	EMEDIUMTYPE     = syscall.Errno(0xa0)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x61)
 	EMULTIHOP       = syscall.Errno(0x4a)
 	ENAMETOOLONG    = syscall.Errno(0x4e)
@@ -2921,100 +541,68 @@ const (
 	ENETDOWN        = syscall.Errno(0x7f)
 	ENETRESET       = syscall.Errno(0x81)
 	ENETUNREACH     = syscall.Errno(0x80)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x35)
 	ENOBUFS         = syscall.Errno(0x84)
 	ENOCSI          = syscall.Errno(0x2b)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0xa1)
 	ENOLCK          = syscall.Errno(0x2e)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x9f)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x23)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x63)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x59)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x86)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x5d)
 	ENOTNAM         = syscall.Errno(0x89)
 	ENOTRECOVERABLE = syscall.Errno(0xa6)
 	ENOTSOCK        = syscall.Errno(0x5f)
 	ENOTSUP         = syscall.Errno(0x7a)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x50)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x7a)
 	EOVERFLOW       = syscall.Errno(0x4f)
 	EOWNERDEAD      = syscall.Errno(0xa5)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x7b)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x78)
 	EPROTOTYPE      = syscall.Errno(0x62)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x52)
 	EREMDEV         = syscall.Errno(0x8e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x8c)
 	ERESTART        = syscall.Errno(0x5b)
 	ERFKILL         = syscall.Errno(0xa7)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x8f)
 	ESOCKTNOSUPPORT = syscall.Errno(0x79)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x97)
 	ESTRPIPE        = syscall.Errno(0x5c)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x91)
 	ETOOMANYREFS    = syscall.Errno(0x90)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x87)
 	EUNATCH         = syscall.Errno(0x2a)
 	EUSERS          = syscall.Errno(0x5e)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x34)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0xa)
 	SIGCHLD   = syscall.Signal(0x12)
 	SIGCLD    = syscall.Signal(0x12)
 	SIGCONT   = syscall.Signal(0x19)
 	SIGEMT    = syscall.Signal(0x7)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x16)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x16)
 	SIGPROF   = syscall.Signal(0x1d)
 	SIGPWR    = syscall.Signal(0x13)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTOP   = syscall.Signal(0x17)
 	SIGSYS    = syscall.Signal(0xc)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x18)
 	SIGTTIN   = syscall.Signal(0x1a)
 	SIGTTOU   = syscall.Signal(0x1b)
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 1c697f3..e9430cd 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
@@ -4,2872 +4,502 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x40081270
-	BLKBSZSET                                   = 0x80081271
-	BLKFLSBUF                                   = 0x20001261
-	BLKFRAGET                                   = 0x20001265
-	BLKFRASET                                   = 0x20001264
-	BLKGETSIZE                                  = 0x20001260
-	BLKGETSIZE64                                = 0x40081272
-	BLKPBSZGET                                  = 0x2000127b
-	BLKRAGET                                    = 0x20001263
-	BLKRASET                                    = 0x20001262
-	BLKROGET                                    = 0x2000125e
-	BLKROSET                                    = 0x2000125d
-	BLKRRPART                                   = 0x2000125f
-	BLKSECTGET                                  = 0x20001267
-	BLKSECTSET                                  = 0x20001266
-	BLKSSZGET                                   = 0x20001268
-	BOTHER                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x80
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x2000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0xe
-	F_GETLK64                                   = 0xe
-	F_GETOWN                                    = 0x17
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x18
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x100
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x80
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x800
-	MAP_ANONYMOUS                               = 0x800
-	MAP_DENYWRITE                               = 0x2000
-	MAP_EXECUTABLE                              = 0x4000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x1000
-	MAP_HUGETLB                                 = 0x80000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x8000
-	MAP_NONBLOCK                                = 0x20000
-	MAP_NORESERVE                               = 0x400
-	MAP_POPULATE                                = 0x10000
-	MAP_PRIVATE                                 = 0x2
-	MAP_RENAME                                  = 0x800
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x40000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x8
-	O_ASYNC                                     = 0x1000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x100
-	O_DIRECT                                    = 0x8000
-	O_DIRECTORY                                 = 0x10000
-	O_DSYNC                                     = 0x10
-	O_EXCL                                      = 0x400
-	O_FSYNC                                     = 0x4010
-	O_LARGEFILE                                 = 0x0
-	O_NDELAY                                    = 0x80
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x800
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x80
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x4010
-	O_SYNC                                      = 0x4010
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	PERF_EVENT_IOC_DISABLE                      = 0x20002401
-	PERF_EVENT_IOC_ENABLE                       = 0x20002400
-	PERF_EVENT_IOC_ID                           = 0x40082407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x8008240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x80042409
-	PERF_EVENT_IOC_PERIOD                       = 0x80082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc008240a
-	PERF_EVENT_IOC_REFRESH                      = 0x20002402
-	PERF_EVENT_IOC_RESET                        = 0x20002403
-	PERF_EVENT_IOC_SET_BPF                      = 0x80042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x80082406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x20002405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4010743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80107446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x8010744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80107447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_GET_THREAD_AREA_3264                 = 0xc4
-	PTRACE_GET_WATCH_REGS                       = 0xd0
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKDATA_3264                        = 0xc1
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKTEXT_3264                        = 0xc0
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKEDATA_3264                        = 0xc3
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKETEXT_3264                        = 0xc2
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SET_WATCH_REGS                       = 0xd1
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x6
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x9
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x5
-	RLIMIT_NPROC                                = 0x8
-	RLIMIT_RSS                                  = 0x7
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x20007002
-	RTC_AIE_ON                                  = 0x20007001
-	RTC_ALM_READ                                = 0x40247008
-	RTC_ALM_SET                                 = 0x80247007
-	RTC_EPOCH_READ                              = 0x4008700d
-	RTC_EPOCH_SET                               = 0x8008700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4008700b
-	RTC_IRQP_SET                                = 0x8008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x20007006
-	RTC_PIE_ON                                  = 0x20007005
-	RTC_PLL_GET                                 = 0x40207011
-	RTC_PLL_SET                                 = 0x80207012
-	RTC_RD_TIME                                 = 0x40247009
-	RTC_SET_TIME                                = 0x8024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x80
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x40047307
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x40047309
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x467f
-	SIOCOUTQ                                    = 0x7472
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x80047308
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x1
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x80
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x2
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0xffff
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1009
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	SO_ATTACH_REUSEPORT_CBPF                    = 0x33
-	SO_ATTACH_REUSEPORT_EBPF                    = 0x34
-	SO_BINDTODEVICE                             = 0x19
-	SO_BINDTOIFINDEX                            = 0x3e
-	SO_BPF_EXTENSIONS                           = 0x30
-	SO_BROADCAST                                = 0x20
-	SO_BSDCOMPAT                                = 0xe
-	SO_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x1029
-	SO_DONTROUTE                                = 0x10
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x1007
-	SO_GET_FILTER                               = 0x1a
-	SO_INCOMING_CPU                             = 0x31
-	SO_INCOMING_NAPI_ID                         = 0x38
-	SO_KEEPALIVE                                = 0x8
-	SO_LINGER                                   = 0x80
-	SO_LOCK_FILTER                              = 0x2c
-	SO_MARK                                     = 0x24
-	SO_MAX_PACING_RATE                          = 0x2f
-	SO_MEMINFO                                  = 0x37
-	SO_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0x100
-	SO_PASSCRED                                 = 0x11
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x12
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1e
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x1028
-	SO_RCVBUF                                   = 0x1002
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x1004
-	SO_RCVTIMEO                                 = 0x1006
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x1006
-	SO_REUSEADDR                                = 0x4
-	SO_REUSEPORT                                = 0x200
-	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                                   = 0x1001
-	SO_SNDBUFFORCE                              = 0x1f
-	SO_SNDLOWAT                                 = 0x1003
-	SO_SNDTIMEO                                 = 0x1005
-	SO_SNDTIMEO_NEW                             = 0x43
-	SO_SNDTIMEO_OLD                             = 0x1005
-	SO_STYLE                                    = 0x1008
-	SO_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x1008
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x5407
-	TCGETA                                      = 0x5401
-	TCGETS                                      = 0x540d
-	TCGETS2                                     = 0x4030542a
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x5410
-	TCSBRK                                      = 0x5405
-	TCSBRKP                                     = 0x5486
-	TCSETA                                      = 0x5402
-	TCSETAF                                     = 0x5404
-	TCSETAW                                     = 0x5403
-	TCSETS                                      = 0x540e
-	TCSETS2                                     = 0x8030542b
-	TCSETSF                                     = 0x5410
-	TCSETSF2                                    = 0x8030542d
-	TCSETSW                                     = 0x540f
-	TCSETSW2                                    = 0x8030542c
-	TCXONC                                      = 0x5406
-	TIMER_ABSTIME                               = 0x1
-	TIOCCBRK                                    = 0x5428
-	TIOCCONS                                    = 0x80047478
-	TIOCEXCL                                    = 0x740d
-	TIOCGDEV                                    = 0x40045432
-	TIOCGETD                                    = 0x7400
-	TIOCGETP                                    = 0x7408
-	TIOCGEXCL                                   = 0x40045440
-	TIOCGICOUNT                                 = 0x5492
-	TIOCGISO7816                                = 0x40285442
-	TIOCGLCKTRMIOS                              = 0x548b
-	TIOCGLTC                                    = 0x7474
-	TIOCGPGRP                                   = 0x40047477
-	TIOCGPKT                                    = 0x40045438
-	TIOCGPTLCK                                  = 0x40045439
-	TIOCGPTN                                    = 0x40045430
-	TIOCGPTPEER                                 = 0x20005441
-	TIOCGRS485                                  = 0x4020542e
-	TIOCGSERIAL                                 = 0x5484
-	TIOCGSID                                    = 0x7416
-	TIOCGSOFTCAR                                = 0x5481
-	TIOCGWINSZ                                  = 0x40087468
-	TIOCINQ                                     = 0x467f
-	TIOCLINUX                                   = 0x5483
-	TIOCMBIC                                    = 0x741c
-	TIOCMBIS                                    = 0x741b
-	TIOCMGET                                    = 0x741d
-	TIOCMIWAIT                                  = 0x5491
-	TIOCMSET                                    = 0x741a
-	TIOCM_CAR                                   = 0x100
-	TIOCM_CD                                    = 0x100
-	TIOCM_CTS                                   = 0x40
-	TIOCM_DSR                                   = 0x400
-	TIOCM_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x200
-	TIOCM_RNG                                   = 0x200
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x20
-	TIOCM_ST                                    = 0x10
-	TIOCNOTTY                                   = 0x5471
-	TIOCNXCL                                    = 0x740e
-	TIOCOUTQ                                    = 0x7472
-	TIOCPKT                                     = 0x5470
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	TIOCSBRK                                    = 0x5427
-	TIOCSCTTY                                   = 0x5480
-	TIOCSERCONFIG                               = 0x5488
-	TIOCSERGETLSR                               = 0x548e
-	TIOCSERGETMULTI                             = 0x548f
-	TIOCSERGSTRUCT                              = 0x548d
-	TIOCSERGWILD                                = 0x5489
-	TIOCSERSETMULTI                             = 0x5490
-	TIOCSERSWILD                                = 0x548a
-	TIOCSER_TEMT                                = 0x1
-	TIOCSETD                                    = 0x7401
-	TIOCSETN                                    = 0x740a
-	TIOCSETP                                    = 0x7409
-	TIOCSIG                                     = 0x80045436
-	TIOCSISO7816                                = 0xc0285443
-	TIOCSLCKTRMIOS                              = 0x548c
-	TIOCSLTC                                    = 0x7475
-	TIOCSPGRP                                   = 0x80047476
-	TIOCSPTLCK                                  = 0x80045431
-	TIOCSRS485                                  = 0xc020542f
-	TIOCSSERIAL                                 = 0x5485
-	TIOCSSOFTCAR                                = 0x5482
-	TIOCSTI                                     = 0x5472
-	TIOCSWINSZ                                  = 0x80087467
-	TIOCVHANGUP                                 = 0x5437
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x8000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x801054d5
-	TUNDETACHFILTER                             = 0x801054d6
-	TUNGETDEVNETNS                              = 0x200054e3
-	TUNGETFEATURES                              = 0x400454cf
-	TUNGETFILTER                                = 0x401054db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x10
-	VEOL                                        = 0x11
-	VEOL2                                       = 0x6
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x4
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VSWTCH                                      = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x40081270
+	BLKBSZSET                        = 0x80081271
+	BLKFLSBUF                        = 0x20001261
+	BLKFRAGET                        = 0x20001265
+	BLKFRASET                        = 0x20001264
+	BLKGETSIZE                       = 0x20001260
+	BLKGETSIZE64                     = 0x40081272
+	BLKPBSZGET                       = 0x2000127b
+	BLKRAGET                         = 0x20001263
+	BLKRASET                         = 0x20001262
+	BLKROGET                         = 0x2000125e
+	BLKROSET                         = 0x2000125d
+	BLKRRPART                        = 0x2000125f
+	BLKSECTGET                       = 0x20001267
+	BLKSECTSET                       = 0x20001266
+	BLKSSZGET                        = 0x20001268
+	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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x80000
+	EFD_NONBLOCK                     = 0x80
+	EPOLL_CLOEXEC                    = 0x80000
+	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
+	F_GETOWN                         = 0x17
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x6
+	F_SETLK64                        = 0x6
+	F_SETLKW                         = 0x7
+	F_SETLKW64                       = 0x7
+	F_SETOWN                         = 0x18
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	HUPCL                            = 0x400
+	ICANON                           = 0x2
+	IEXTEN                           = 0x100
+	IN_CLOEXEC                       = 0x80000
+	IN_NONBLOCK                      = 0x80
+	IOCTL_VM_SOCKETS_GET_LOCAL_CID   = 0x200007b9
+	ISIG                             = 0x1
+	IUCLC                            = 0x200
+	IXOFF                            = 0x1000
+	IXON                             = 0x400
+	MAP_ANON                         = 0x800
+	MAP_ANONYMOUS                    = 0x800
+	MAP_DENYWRITE                    = 0x2000
+	MAP_EXECUTABLE                   = 0x4000
+	MAP_GROWSDOWN                    = 0x1000
+	MAP_HUGETLB                      = 0x80000
+	MAP_LOCKED                       = 0x8000
+	MAP_NONBLOCK                     = 0x20000
+	MAP_NORESERVE                    = 0x400
+	MAP_POPULATE                     = 0x10000
+	MAP_RENAME                       = 0x800
+	MAP_STACK                        = 0x40000
+	MCL_CURRENT                      = 0x1
+	MCL_FUTURE                       = 0x2
+	MCL_ONFAULT                      = 0x4
+	NFDBITS                          = 0x40
+	NLDLY                            = 0x100
+	NOFLSH                           = 0x80
+	NS_GET_NSTYPE                    = 0x2000b703
+	NS_GET_OWNER_UID                 = 0x2000b704
+	NS_GET_PARENT                    = 0x2000b702
+	NS_GET_USERNS                    = 0x2000b701
+	OLCUC                            = 0x2
+	ONLCR                            = 0x4
+	O_APPEND                         = 0x8
+	O_ASYNC                          = 0x1000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x100
+	O_DIRECT                         = 0x8000
+	O_DIRECTORY                      = 0x10000
+	O_DSYNC                          = 0x10
+	O_EXCL                           = 0x400
+	O_FSYNC                          = 0x4010
+	O_LARGEFILE                      = 0x0
+	O_NDELAY                         = 0x80
+	O_NOATIME                        = 0x40000
+	O_NOCTTY                         = 0x800
+	O_NOFOLLOW                       = 0x20000
+	O_NONBLOCK                       = 0x80
+	O_PATH                           = 0x200000
+	O_RSYNC                          = 0x4010
+	O_SYNC                           = 0x4010
+	O_TMPFILE                        = 0x410000
+	O_TRUNC                          = 0x200
+	PARENB                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	PERF_EVENT_IOC_DISABLE           = 0x20002401
+	PERF_EVENT_IOC_ENABLE            = 0x20002400
+	PERF_EVENT_IOC_ID                = 0x40082407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x80042409
+	PERF_EVENT_IOC_PERIOD            = 0x80082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc008240a
+	PERF_EVENT_IOC_REFRESH           = 0x20002402
+	PERF_EVENT_IOC_RESET             = 0x20002403
+	PERF_EVENT_IOC_SET_BPF           = 0x80042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x80082406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x20002405
+	PPPIOCATTACH                     = 0x8004743d
+	PPPIOCATTCHAN                    = 0x80047438
+	PPPIOCCONNECT                    = 0x8004743a
+	PPPIOCDETACH                     = 0x8004743c
+	PPPIOCDISCONN                    = 0x20007439
+	PPPIOCGASYNCMAP                  = 0x40047458
+	PPPIOCGCHAN                      = 0x40047437
+	PPPIOCGDEBUG                     = 0x40047441
+	PPPIOCGFLAGS                     = 0x4004745a
+	PPPIOCGIDLE                      = 0x4010743f
+	PPPIOCGIDLE32                    = 0x4008743f
+	PPPIOCGIDLE64                    = 0x4010743f
+	PPPIOCGL2TPSTATS                 = 0x40487436
+	PPPIOCGMRU                       = 0x40047453
+	PPPIOCGRASYNCMAP                 = 0x40047455
+	PPPIOCGUNIT                      = 0x40047456
+	PPPIOCGXASYNCMAP                 = 0x40207450
+	PPPIOCSACTIVE                    = 0x80107446
+	PPPIOCSASYNCMAP                  = 0x80047457
+	PPPIOCSCOMPRESS                  = 0x8010744d
+	PPPIOCSDEBUG                     = 0x80047440
+	PPPIOCSFLAGS                     = 0x80047459
+	PPPIOCSMAXCID                    = 0x80047451
+	PPPIOCSMRRU                      = 0x8004743b
+	PPPIOCSMRU                       = 0x80047452
+	PPPIOCSNPMODE                    = 0x8008744b
+	PPPIOCSPASS                      = 0x80107447
+	PPPIOCSRASYNCMAP                 = 0x80047454
+	PPPIOCSXASYNCMAP                 = 0x8020744f
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_GET_THREAD_AREA_3264      = 0xc4
+	PTRACE_GET_WATCH_REGS            = 0xd0
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_PEEKDATA_3264             = 0xc1
+	PTRACE_PEEKTEXT_3264             = 0xc0
+	PTRACE_POKEDATA_3264             = 0xc3
+	PTRACE_POKETEXT_3264             = 0xc2
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SET_WATCH_REGS            = 0xd1
+	RLIMIT_AS                        = 0x6
+	RLIMIT_MEMLOCK                   = 0x9
+	RLIMIT_NOFILE                    = 0x5
+	RLIMIT_NPROC                     = 0x8
+	RLIMIT_RSS                       = 0x7
+	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                   = 0x4008700d
+	RTC_EPOCH_SET                    = 0x8008700e
+	RTC_IRQP_READ                    = 0x4008700b
+	RTC_IRQP_SET                     = 0x8008700c
+	RTC_PIE_OFF                      = 0x20007006
+	RTC_PIE_ON                       = 0x20007005
+	RTC_PLL_GET                      = 0x40207011
+	RTC_PLL_SET                      = 0x80207012
+	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                     = 0x80
+	SIOCATMARK                       = 0x40047307
+	SIOCGPGRP                        = 0x40047309
+	SIOCGSTAMPNS_NEW                 = 0x40108907
+	SIOCGSTAMP_NEW                   = 0x40108906
+	SIOCINQ                          = 0x467f
+	SIOCOUTQ                         = 0x7472
+	SIOCSPGRP                        = 0x80047308
+	SOCK_CLOEXEC                     = 0x80000
+	SOCK_DGRAM                       = 0x1
+	SOCK_NONBLOCK                    = 0x80
+	SOCK_STREAM                      = 0x2
+	SOL_SOCKET                       = 0xffff
+	SO_ACCEPTCONN                    = 0x1009
+	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                     = 0x20
+	SO_BSDCOMPAT                     = 0xe
+	SO_BUSY_POLL                     = 0x2e
+	SO_CNX_ADVICE                    = 0x35
+	SO_COOKIE                        = 0x39
+	SO_DETACH_REUSEPORT_BPF          = 0x44
+	SO_DOMAIN                        = 0x1029
+	SO_DONTROUTE                     = 0x10
+	SO_ERROR                         = 0x1007
+	SO_INCOMING_CPU                  = 0x31
+	SO_INCOMING_NAPI_ID              = 0x38
+	SO_KEEPALIVE                     = 0x8
+	SO_LINGER                        = 0x80
+	SO_LOCK_FILTER                   = 0x2c
+	SO_MARK                          = 0x24
+	SO_MAX_PACING_RATE               = 0x2f
+	SO_MEMINFO                       = 0x37
+	SO_NOFCS                         = 0x2b
+	SO_OOBINLINE                     = 0x100
+	SO_PASSCRED                      = 0x11
+	SO_PASSSEC                       = 0x22
+	SO_PEEK_OFF                      = 0x2a
+	SO_PEERCRED                      = 0x12
+	SO_PEERGROUPS                    = 0x3b
+	SO_PEERSEC                       = 0x1e
+	SO_PROTOCOL                      = 0x1028
+	SO_RCVBUF                        = 0x1002
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x1004
+	SO_RCVTIMEO                      = 0x1006
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x1006
+	SO_REUSEADDR                     = 0x4
+	SO_REUSEPORT                     = 0x200
+	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                        = 0x1001
+	SO_SNDBUFFORCE                   = 0x1f
+	SO_SNDLOWAT                      = 0x1003
+	SO_SNDTIMEO                      = 0x1005
+	SO_SNDTIMEO_NEW                  = 0x43
+	SO_SNDTIMEO_OLD                  = 0x1005
+	SO_STYLE                         = 0x1008
+	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_TXTIME                        = 0x3d
+	SO_TYPE                          = 0x1008
+	SO_WIFI_STATUS                   = 0x29
+	SO_ZEROCOPY                      = 0x3c
+	TAB1                             = 0x800
+	TAB2                             = 0x1000
+	TAB3                             = 0x1800
+	TABDLY                           = 0x1800
+	TCFLSH                           = 0x5407
+	TCGETA                           = 0x5401
+	TCGETS                           = 0x540d
+	TCGETS2                          = 0x4030542a
+	TCSAFLUSH                        = 0x5410
+	TCSBRK                           = 0x5405
+	TCSBRKP                          = 0x5486
+	TCSETA                           = 0x5402
+	TCSETAF                          = 0x5404
+	TCSETAW                          = 0x5403
+	TCSETS                           = 0x540e
+	TCSETS2                          = 0x8030542b
+	TCSETSF                          = 0x5410
+	TCSETSF2                         = 0x8030542d
+	TCSETSW                          = 0x540f
+	TCSETSW2                         = 0x8030542c
+	TCXONC                           = 0x5406
+	TFD_CLOEXEC                      = 0x80000
+	TFD_NONBLOCK                     = 0x80
+	TIOCCBRK                         = 0x5428
+	TIOCCONS                         = 0x80047478
+	TIOCEXCL                         = 0x740d
+	TIOCGDEV                         = 0x40045432
+	TIOCGETD                         = 0x7400
+	TIOCGETP                         = 0x7408
+	TIOCGEXCL                        = 0x40045440
+	TIOCGICOUNT                      = 0x5492
+	TIOCGISO7816                     = 0x40285442
+	TIOCGLCKTRMIOS                   = 0x548b
+	TIOCGLTC                         = 0x7474
+	TIOCGPGRP                        = 0x40047477
+	TIOCGPKT                         = 0x40045438
+	TIOCGPTLCK                       = 0x40045439
+	TIOCGPTN                         = 0x40045430
+	TIOCGPTPEER                      = 0x20005441
+	TIOCGRS485                       = 0x4020542e
+	TIOCGSERIAL                      = 0x5484
+	TIOCGSID                         = 0x7416
+	TIOCGSOFTCAR                     = 0x5481
+	TIOCGWINSZ                       = 0x40087468
+	TIOCINQ                          = 0x467f
+	TIOCLINUX                        = 0x5483
+	TIOCMBIC                         = 0x741c
+	TIOCMBIS                         = 0x741b
+	TIOCMGET                         = 0x741d
+	TIOCMIWAIT                       = 0x5491
+	TIOCMSET                         = 0x741a
+	TIOCM_CAR                        = 0x100
+	TIOCM_CD                         = 0x100
+	TIOCM_CTS                        = 0x40
+	TIOCM_DSR                        = 0x400
+	TIOCM_RI                         = 0x200
+	TIOCM_RNG                        = 0x200
+	TIOCM_SR                         = 0x20
+	TIOCM_ST                         = 0x10
+	TIOCNOTTY                        = 0x5471
+	TIOCNXCL                         = 0x740e
+	TIOCOUTQ                         = 0x7472
+	TIOCPKT                          = 0x5470
+	TIOCSBRK                         = 0x5427
+	TIOCSCTTY                        = 0x5480
+	TIOCSERCONFIG                    = 0x5488
+	TIOCSERGETLSR                    = 0x548e
+	TIOCSERGETMULTI                  = 0x548f
+	TIOCSERGSTRUCT                   = 0x548d
+	TIOCSERGWILD                     = 0x5489
+	TIOCSERSETMULTI                  = 0x5490
+	TIOCSERSWILD                     = 0x548a
+	TIOCSER_TEMT                     = 0x1
+	TIOCSETD                         = 0x7401
+	TIOCSETN                         = 0x740a
+	TIOCSETP                         = 0x7409
+	TIOCSIG                          = 0x80045436
+	TIOCSISO7816                     = 0xc0285443
+	TIOCSLCKTRMIOS                   = 0x548c
+	TIOCSLTC                         = 0x7475
+	TIOCSPGRP                        = 0x80047476
+	TIOCSPTLCK                       = 0x80045431
+	TIOCSRS485                       = 0xc020542f
+	TIOCSSERIAL                      = 0x5485
+	TIOCSSOFTCAR                     = 0x5482
+	TIOCSTI                          = 0x5472
+	TIOCSWINSZ                       = 0x80087467
+	TIOCVHANGUP                      = 0x5437
+	TOSTOP                           = 0x8000
+	TUNATTACHFILTER                  = 0x801054d5
+	TUNDETACHFILTER                  = 0x801054d6
+	TUNGETDEVNETNS                   = 0x200054e3
+	TUNGETFEATURES                   = 0x400454cf
+	TUNGETFILTER                     = 0x401054db
+	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                         = 0xd
+	VEOF                             = 0x10
+	VEOL                             = 0x11
+	VEOL2                            = 0x6
+	VMIN                             = 0x4
+	VREPRINT                         = 0xc
+	VSTART                           = 0x8
+	VSTOP                            = 0x9
+	VSUSP                            = 0xa
+	VSWTC                            = 0x7
+	VSWTCH                           = 0x7
+	VT1                              = 0x4000
+	VTDLY                            = 0x4000
+	VTIME                            = 0x5
+	VWERASE                          = 0xe
+	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                         = 0x40
+	XCASE                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x7d)
 	EADDRNOTAVAIL   = syscall.Errno(0x7e)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x7c)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x95)
 	EBADE           = syscall.Errno(0x32)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x51)
 	EBADMSG         = syscall.Errno(0x4d)
 	EBADR           = syscall.Errno(0x33)
 	EBADRQC         = syscall.Errno(0x36)
 	EBADSLT         = syscall.Errno(0x37)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x9e)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x25)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x82)
@@ -2878,12 +508,8 @@ const (
 	EDEADLK         = syscall.Errno(0x2d)
 	EDEADLOCK       = syscall.Errno(0x38)
 	EDESTADDRREQ    = syscall.Errno(0x60)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x46d)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x93)
 	EHOSTUNREACH    = syscall.Errno(0x94)
 	EHWPOISON       = syscall.Errno(0xa8)
@@ -2891,11 +517,7 @@ const (
 	EILSEQ          = syscall.Errno(0x58)
 	EINIT           = syscall.Errno(0x8d)
 	EINPROGRESS     = syscall.Errno(0x96)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x85)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x8b)
 	EKEYEXPIRED     = syscall.Errno(0xa2)
 	EKEYREJECTED    = syscall.Errno(0xa4)
@@ -2912,8 +534,6 @@ const (
 	ELNRNG          = syscall.Errno(0x29)
 	ELOOP           = syscall.Errno(0x5a)
 	EMEDIUMTYPE     = syscall.Errno(0xa0)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x61)
 	EMULTIHOP       = syscall.Errno(0x4a)
 	ENAMETOOLONG    = syscall.Errno(0x4e)
@@ -2921,100 +541,68 @@ const (
 	ENETDOWN        = syscall.Errno(0x7f)
 	ENETRESET       = syscall.Errno(0x81)
 	ENETUNREACH     = syscall.Errno(0x80)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x35)
 	ENOBUFS         = syscall.Errno(0x84)
 	ENOCSI          = syscall.Errno(0x2b)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0xa1)
 	ENOLCK          = syscall.Errno(0x2e)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x9f)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x23)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x63)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x59)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x86)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x5d)
 	ENOTNAM         = syscall.Errno(0x89)
 	ENOTRECOVERABLE = syscall.Errno(0xa6)
 	ENOTSOCK        = syscall.Errno(0x5f)
 	ENOTSUP         = syscall.Errno(0x7a)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x50)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x7a)
 	EOVERFLOW       = syscall.Errno(0x4f)
 	EOWNERDEAD      = syscall.Errno(0xa5)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x7b)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x78)
 	EPROTOTYPE      = syscall.Errno(0x62)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x52)
 	EREMDEV         = syscall.Errno(0x8e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x8c)
 	ERESTART        = syscall.Errno(0x5b)
 	ERFKILL         = syscall.Errno(0xa7)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x8f)
 	ESOCKTNOSUPPORT = syscall.Errno(0x79)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x97)
 	ESTRPIPE        = syscall.Errno(0x5c)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x91)
 	ETOOMANYREFS    = syscall.Errno(0x90)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x87)
 	EUNATCH         = syscall.Errno(0x2a)
 	EUSERS          = syscall.Errno(0x5e)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x34)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0xa)
 	SIGCHLD   = syscall.Signal(0x12)
 	SIGCLD    = syscall.Signal(0x12)
 	SIGCONT   = syscall.Signal(0x19)
 	SIGEMT    = syscall.Signal(0x7)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x16)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x16)
 	SIGPROF   = syscall.Signal(0x1d)
 	SIGPWR    = syscall.Signal(0x13)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTOP   = syscall.Signal(0x17)
 	SIGSYS    = syscall.Signal(0xc)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x18)
 	SIGTTIN   = syscall.Signal(0x1a)
 	SIGTTOU   = syscall.Signal(0x1b)
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 264898c..61e4f5d 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
@@ -4,2872 +4,502 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x80
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x2000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x21
-	F_GETLK64                                   = 0x21
-	F_GETOWN                                    = 0x17
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x22
-	F_SETLK64                                   = 0x22
-	F_SETLKW                                    = 0x23
-	F_SETLKW64                                  = 0x23
-	F_SETOWN                                    = 0x18
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x100
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x80
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x800
-	MAP_ANONYMOUS                               = 0x800
-	MAP_DENYWRITE                               = 0x2000
-	MAP_EXECUTABLE                              = 0x4000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x1000
-	MAP_HUGETLB                                 = 0x80000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x8000
-	MAP_NONBLOCK                                = 0x20000
-	MAP_NORESERVE                               = 0x400
-	MAP_POPULATE                                = 0x10000
-	MAP_PRIVATE                                 = 0x2
-	MAP_RENAME                                  = 0x800
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x40000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x20
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x8
-	O_ASYNC                                     = 0x1000
-	O_CLOEXEC                                   = 0x80000
-	O_CREAT                                     = 0x100
-	O_DIRECT                                    = 0x8000
-	O_DIRECTORY                                 = 0x10000
-	O_DSYNC                                     = 0x10
-	O_EXCL                                      = 0x400
-	O_FSYNC                                     = 0x4010
-	O_LARGEFILE                                 = 0x2000
-	O_NDELAY                                    = 0x80
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x800
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x80
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x4010
-	O_SYNC                                      = 0x4010
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4008743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80087446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x800c744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80087447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_GET_THREAD_AREA                      = 0x19
-	PTRACE_GET_THREAD_AREA_3264                 = 0xc4
-	PTRACE_GET_WATCH_REGS                       = 0xd0
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKDATA_3264                        = 0xc1
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKTEXT_3264                        = 0xc0
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKEDATA_3264                        = 0xc3
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKETEXT_3264                        = 0xc2
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SET_THREAD_AREA                      = 0x1a
-	PTRACE_SET_WATCH_REGS                       = 0xd1
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x6
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x9
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x5
-	RLIMIT_NPROC                                = 0x8
-	RLIMIT_RSS                                  = 0x7
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4004700b
-	RTC_IRQP_SET                                = 0x8004700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x80
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x40047307
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x40047309
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x467f
-	SIOCOUTQ                                    = 0x7472
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x80047308
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x1
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x80
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x2
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0xffff
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1009
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	SO_ATTACH_REUSEPORT_CBPF                    = 0x33
-	SO_ATTACH_REUSEPORT_EBPF                    = 0x34
-	SO_BINDTODEVICE                             = 0x19
-	SO_BINDTOIFINDEX                            = 0x3e
-	SO_BPF_EXTENSIONS                           = 0x30
-	SO_BROADCAST                                = 0x20
-	SO_BSDCOMPAT                                = 0xe
-	SO_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x1029
-	SO_DONTROUTE                                = 0x10
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x1007
-	SO_GET_FILTER                               = 0x1a
-	SO_INCOMING_CPU                             = 0x31
-	SO_INCOMING_NAPI_ID                         = 0x38
-	SO_KEEPALIVE                                = 0x8
-	SO_LINGER                                   = 0x80
-	SO_LOCK_FILTER                              = 0x2c
-	SO_MARK                                     = 0x24
-	SO_MAX_PACING_RATE                          = 0x2f
-	SO_MEMINFO                                  = 0x37
-	SO_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0x100
-	SO_PASSCRED                                 = 0x11
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x12
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1e
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x1028
-	SO_RCVBUF                                   = 0x1002
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x1004
-	SO_RCVTIMEO                                 = 0x1006
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x1006
-	SO_REUSEADDR                                = 0x4
-	SO_REUSEPORT                                = 0x200
-	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                                   = 0x1001
-	SO_SNDBUFFORCE                              = 0x1f
-	SO_SNDLOWAT                                 = 0x1003
-	SO_SNDTIMEO                                 = 0x1005
-	SO_SNDTIMEO_NEW                             = 0x43
-	SO_SNDTIMEO_OLD                             = 0x1005
-	SO_STYLE                                    = 0x1008
-	SO_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x1008
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x5407
-	TCGETA                                      = 0x5401
-	TCGETS                                      = 0x540d
-	TCGETS2                                     = 0x4030542a
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x5410
-	TCSBRK                                      = 0x5405
-	TCSBRKP                                     = 0x5486
-	TCSETA                                      = 0x5402
-	TCSETAF                                     = 0x5404
-	TCSETAW                                     = 0x5403
-	TCSETS                                      = 0x540e
-	TCSETS2                                     = 0x8030542b
-	TCSETSF                                     = 0x5410
-	TCSETSF2                                    = 0x8030542d
-	TCSETSW                                     = 0x540f
-	TCSETSW2                                    = 0x8030542c
-	TCXONC                                      = 0x5406
-	TIMER_ABSTIME                               = 0x1
-	TIOCCBRK                                    = 0x5428
-	TIOCCONS                                    = 0x80047478
-	TIOCEXCL                                    = 0x740d
-	TIOCGDEV                                    = 0x40045432
-	TIOCGETD                                    = 0x7400
-	TIOCGETP                                    = 0x7408
-	TIOCGEXCL                                   = 0x40045440
-	TIOCGICOUNT                                 = 0x5492
-	TIOCGISO7816                                = 0x40285442
-	TIOCGLCKTRMIOS                              = 0x548b
-	TIOCGLTC                                    = 0x7474
-	TIOCGPGRP                                   = 0x40047477
-	TIOCGPKT                                    = 0x40045438
-	TIOCGPTLCK                                  = 0x40045439
-	TIOCGPTN                                    = 0x40045430
-	TIOCGPTPEER                                 = 0x20005441
-	TIOCGRS485                                  = 0x4020542e
-	TIOCGSERIAL                                 = 0x5484
-	TIOCGSID                                    = 0x7416
-	TIOCGSOFTCAR                                = 0x5481
-	TIOCGWINSZ                                  = 0x40087468
-	TIOCINQ                                     = 0x467f
-	TIOCLINUX                                   = 0x5483
-	TIOCMBIC                                    = 0x741c
-	TIOCMBIS                                    = 0x741b
-	TIOCMGET                                    = 0x741d
-	TIOCMIWAIT                                  = 0x5491
-	TIOCMSET                                    = 0x741a
-	TIOCM_CAR                                   = 0x100
-	TIOCM_CD                                    = 0x100
-	TIOCM_CTS                                   = 0x40
-	TIOCM_DSR                                   = 0x400
-	TIOCM_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x200
-	TIOCM_RNG                                   = 0x200
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x20
-	TIOCM_ST                                    = 0x10
-	TIOCNOTTY                                   = 0x5471
-	TIOCNXCL                                    = 0x740e
-	TIOCOUTQ                                    = 0x7472
-	TIOCPKT                                     = 0x5470
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	TIOCSBRK                                    = 0x5427
-	TIOCSCTTY                                   = 0x5480
-	TIOCSERCONFIG                               = 0x5488
-	TIOCSERGETLSR                               = 0x548e
-	TIOCSERGETMULTI                             = 0x548f
-	TIOCSERGSTRUCT                              = 0x548d
-	TIOCSERGWILD                                = 0x5489
-	TIOCSERSETMULTI                             = 0x5490
-	TIOCSERSWILD                                = 0x548a
-	TIOCSER_TEMT                                = 0x1
-	TIOCSETD                                    = 0x7401
-	TIOCSETN                                    = 0x740a
-	TIOCSETP                                    = 0x7409
-	TIOCSIG                                     = 0x80045436
-	TIOCSISO7816                                = 0xc0285443
-	TIOCSLCKTRMIOS                              = 0x548c
-	TIOCSLTC                                    = 0x7475
-	TIOCSPGRP                                   = 0x80047476
-	TIOCSPTLCK                                  = 0x80045431
-	TIOCSRS485                                  = 0xc020542f
-	TIOCSSERIAL                                 = 0x5485
-	TIOCSSOFTCAR                                = 0x5482
-	TIOCSTI                                     = 0x5472
-	TIOCSWINSZ                                  = 0x80087467
-	TIOCVHANGUP                                 = 0x5437
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x8000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x10
-	VEOL                                        = 0x11
-	VEOL2                                       = 0x6
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x4
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VSWTCH                                      = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x20
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 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                           = 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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x80000
+	EFD_NONBLOCK                     = 0x80
+	EPOLL_CLOEXEC                    = 0x80000
+	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
+	F_GETOWN                         = 0x17
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x22
+	F_SETLK64                        = 0x22
+	F_SETLKW                         = 0x23
+	F_SETLKW64                       = 0x23
+	F_SETOWN                         = 0x18
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	HUPCL                            = 0x400
+	ICANON                           = 0x2
+	IEXTEN                           = 0x100
+	IN_CLOEXEC                       = 0x80000
+	IN_NONBLOCK                      = 0x80
+	IOCTL_VM_SOCKETS_GET_LOCAL_CID   = 0x200007b9
+	ISIG                             = 0x1
+	IUCLC                            = 0x200
+	IXOFF                            = 0x1000
+	IXON                             = 0x400
+	MAP_ANON                         = 0x800
+	MAP_ANONYMOUS                    = 0x800
+	MAP_DENYWRITE                    = 0x2000
+	MAP_EXECUTABLE                   = 0x4000
+	MAP_GROWSDOWN                    = 0x1000
+	MAP_HUGETLB                      = 0x80000
+	MAP_LOCKED                       = 0x8000
+	MAP_NONBLOCK                     = 0x20000
+	MAP_NORESERVE                    = 0x400
+	MAP_POPULATE                     = 0x10000
+	MAP_RENAME                       = 0x800
+	MAP_STACK                        = 0x40000
+	MCL_CURRENT                      = 0x1
+	MCL_FUTURE                       = 0x2
+	MCL_ONFAULT                      = 0x4
+	NFDBITS                          = 0x20
+	NLDLY                            = 0x100
+	NOFLSH                           = 0x80
+	NS_GET_NSTYPE                    = 0x2000b703
+	NS_GET_OWNER_UID                 = 0x2000b704
+	NS_GET_PARENT                    = 0x2000b702
+	NS_GET_USERNS                    = 0x2000b701
+	OLCUC                            = 0x2
+	ONLCR                            = 0x4
+	O_APPEND                         = 0x8
+	O_ASYNC                          = 0x1000
+	O_CLOEXEC                        = 0x80000
+	O_CREAT                          = 0x100
+	O_DIRECT                         = 0x8000
+	O_DIRECTORY                      = 0x10000
+	O_DSYNC                          = 0x10
+	O_EXCL                           = 0x400
+	O_FSYNC                          = 0x4010
+	O_LARGEFILE                      = 0x2000
+	O_NDELAY                         = 0x80
+	O_NOATIME                        = 0x40000
+	O_NOCTTY                         = 0x800
+	O_NOFOLLOW                       = 0x20000
+	O_NONBLOCK                       = 0x80
+	O_PATH                           = 0x200000
+	O_RSYNC                          = 0x4010
+	O_SYNC                           = 0x4010
+	O_TMPFILE                        = 0x410000
+	O_TRUNC                          = 0x200
+	PARENB                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	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
+	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
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PR_SET_PTRACER_ANY               = 0xffffffff
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GET_THREAD_AREA           = 0x19
+	PTRACE_GET_THREAD_AREA_3264      = 0xc4
+	PTRACE_GET_WATCH_REGS            = 0xd0
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_PEEKDATA_3264             = 0xc1
+	PTRACE_PEEKTEXT_3264             = 0xc0
+	PTRACE_POKEDATA_3264             = 0xc3
+	PTRACE_POKETEXT_3264             = 0xc2
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SET_THREAD_AREA           = 0x1a
+	PTRACE_SET_WATCH_REGS            = 0xd1
+	RLIMIT_AS                        = 0x6
+	RLIMIT_MEMLOCK                   = 0x9
+	RLIMIT_NOFILE                    = 0x5
+	RLIMIT_NPROC                     = 0x8
+	RLIMIT_RSS                       = 0x7
+	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_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                     = 0x80
+	SIOCATMARK                       = 0x40047307
+	SIOCGPGRP                        = 0x40047309
+	SIOCGSTAMPNS_NEW                 = 0x40108907
+	SIOCGSTAMP_NEW                   = 0x40108906
+	SIOCINQ                          = 0x467f
+	SIOCOUTQ                         = 0x7472
+	SIOCSPGRP                        = 0x80047308
+	SOCK_CLOEXEC                     = 0x80000
+	SOCK_DGRAM                       = 0x1
+	SOCK_NONBLOCK                    = 0x80
+	SOCK_STREAM                      = 0x2
+	SOL_SOCKET                       = 0xffff
+	SO_ACCEPTCONN                    = 0x1009
+	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                     = 0x20
+	SO_BSDCOMPAT                     = 0xe
+	SO_BUSY_POLL                     = 0x2e
+	SO_CNX_ADVICE                    = 0x35
+	SO_COOKIE                        = 0x39
+	SO_DETACH_REUSEPORT_BPF          = 0x44
+	SO_DOMAIN                        = 0x1029
+	SO_DONTROUTE                     = 0x10
+	SO_ERROR                         = 0x1007
+	SO_INCOMING_CPU                  = 0x31
+	SO_INCOMING_NAPI_ID              = 0x38
+	SO_KEEPALIVE                     = 0x8
+	SO_LINGER                        = 0x80
+	SO_LOCK_FILTER                   = 0x2c
+	SO_MARK                          = 0x24
+	SO_MAX_PACING_RATE               = 0x2f
+	SO_MEMINFO                       = 0x37
+	SO_NOFCS                         = 0x2b
+	SO_OOBINLINE                     = 0x100
+	SO_PASSCRED                      = 0x11
+	SO_PASSSEC                       = 0x22
+	SO_PEEK_OFF                      = 0x2a
+	SO_PEERCRED                      = 0x12
+	SO_PEERGROUPS                    = 0x3b
+	SO_PEERSEC                       = 0x1e
+	SO_PROTOCOL                      = 0x1028
+	SO_RCVBUF                        = 0x1002
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x1004
+	SO_RCVTIMEO                      = 0x1006
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x1006
+	SO_REUSEADDR                     = 0x4
+	SO_REUSEPORT                     = 0x200
+	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                        = 0x1001
+	SO_SNDBUFFORCE                   = 0x1f
+	SO_SNDLOWAT                      = 0x1003
+	SO_SNDTIMEO                      = 0x1005
+	SO_SNDTIMEO_NEW                  = 0x43
+	SO_SNDTIMEO_OLD                  = 0x1005
+	SO_STYLE                         = 0x1008
+	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_TXTIME                        = 0x3d
+	SO_TYPE                          = 0x1008
+	SO_WIFI_STATUS                   = 0x29
+	SO_ZEROCOPY                      = 0x3c
+	TAB1                             = 0x800
+	TAB2                             = 0x1000
+	TAB3                             = 0x1800
+	TABDLY                           = 0x1800
+	TCFLSH                           = 0x5407
+	TCGETA                           = 0x5401
+	TCGETS                           = 0x540d
+	TCGETS2                          = 0x4030542a
+	TCSAFLUSH                        = 0x5410
+	TCSBRK                           = 0x5405
+	TCSBRKP                          = 0x5486
+	TCSETA                           = 0x5402
+	TCSETAF                          = 0x5404
+	TCSETAW                          = 0x5403
+	TCSETS                           = 0x540e
+	TCSETS2                          = 0x8030542b
+	TCSETSF                          = 0x5410
+	TCSETSF2                         = 0x8030542d
+	TCSETSW                          = 0x540f
+	TCSETSW2                         = 0x8030542c
+	TCXONC                           = 0x5406
+	TFD_CLOEXEC                      = 0x80000
+	TFD_NONBLOCK                     = 0x80
+	TIOCCBRK                         = 0x5428
+	TIOCCONS                         = 0x80047478
+	TIOCEXCL                         = 0x740d
+	TIOCGDEV                         = 0x40045432
+	TIOCGETD                         = 0x7400
+	TIOCGETP                         = 0x7408
+	TIOCGEXCL                        = 0x40045440
+	TIOCGICOUNT                      = 0x5492
+	TIOCGISO7816                     = 0x40285442
+	TIOCGLCKTRMIOS                   = 0x548b
+	TIOCGLTC                         = 0x7474
+	TIOCGPGRP                        = 0x40047477
+	TIOCGPKT                         = 0x40045438
+	TIOCGPTLCK                       = 0x40045439
+	TIOCGPTN                         = 0x40045430
+	TIOCGPTPEER                      = 0x20005441
+	TIOCGRS485                       = 0x4020542e
+	TIOCGSERIAL                      = 0x5484
+	TIOCGSID                         = 0x7416
+	TIOCGSOFTCAR                     = 0x5481
+	TIOCGWINSZ                       = 0x40087468
+	TIOCINQ                          = 0x467f
+	TIOCLINUX                        = 0x5483
+	TIOCMBIC                         = 0x741c
+	TIOCMBIS                         = 0x741b
+	TIOCMGET                         = 0x741d
+	TIOCMIWAIT                       = 0x5491
+	TIOCMSET                         = 0x741a
+	TIOCM_CAR                        = 0x100
+	TIOCM_CD                         = 0x100
+	TIOCM_CTS                        = 0x40
+	TIOCM_DSR                        = 0x400
+	TIOCM_RI                         = 0x200
+	TIOCM_RNG                        = 0x200
+	TIOCM_SR                         = 0x20
+	TIOCM_ST                         = 0x10
+	TIOCNOTTY                        = 0x5471
+	TIOCNXCL                         = 0x740e
+	TIOCOUTQ                         = 0x7472
+	TIOCPKT                          = 0x5470
+	TIOCSBRK                         = 0x5427
+	TIOCSCTTY                        = 0x5480
+	TIOCSERCONFIG                    = 0x5488
+	TIOCSERGETLSR                    = 0x548e
+	TIOCSERGETMULTI                  = 0x548f
+	TIOCSERGSTRUCT                   = 0x548d
+	TIOCSERGWILD                     = 0x5489
+	TIOCSERSETMULTI                  = 0x5490
+	TIOCSERSWILD                     = 0x548a
+	TIOCSER_TEMT                     = 0x1
+	TIOCSETD                         = 0x7401
+	TIOCSETN                         = 0x740a
+	TIOCSETP                         = 0x7409
+	TIOCSIG                          = 0x80045436
+	TIOCSISO7816                     = 0xc0285443
+	TIOCSLCKTRMIOS                   = 0x548c
+	TIOCSLTC                         = 0x7475
+	TIOCSPGRP                        = 0x80047476
+	TIOCSPTLCK                       = 0x80045431
+	TIOCSRS485                       = 0xc020542f
+	TIOCSSERIAL                      = 0x5485
+	TIOCSSOFTCAR                     = 0x5482
+	TIOCSTI                          = 0x5472
+	TIOCSWINSZ                       = 0x80087467
+	TIOCVHANGUP                      = 0x5437
+	TOSTOP                           = 0x8000
+	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                         = 0xd
+	VEOF                             = 0x10
+	VEOL                             = 0x11
+	VEOL2                            = 0x6
+	VMIN                             = 0x4
+	VREPRINT                         = 0xc
+	VSTART                           = 0x8
+	VSTOP                            = 0x9
+	VSUSP                            = 0xa
+	VSWTC                            = 0x7
+	VSWTCH                           = 0x7
+	VT1                              = 0x4000
+	VTDLY                            = 0x4000
+	VTIME                            = 0x5
+	VWERASE                          = 0xe
+	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                            = 0x4
+	XTABS                            = 0x1800
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x7d)
 	EADDRNOTAVAIL   = syscall.Errno(0x7e)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x7c)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x95)
 	EBADE           = syscall.Errno(0x32)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x51)
 	EBADMSG         = syscall.Errno(0x4d)
 	EBADR           = syscall.Errno(0x33)
 	EBADRQC         = syscall.Errno(0x36)
 	EBADSLT         = syscall.Errno(0x37)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x9e)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x25)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x82)
@@ -2878,12 +508,8 @@ const (
 	EDEADLK         = syscall.Errno(0x2d)
 	EDEADLOCK       = syscall.Errno(0x38)
 	EDESTADDRREQ    = syscall.Errno(0x60)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x46d)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x93)
 	EHOSTUNREACH    = syscall.Errno(0x94)
 	EHWPOISON       = syscall.Errno(0xa8)
@@ -2891,11 +517,7 @@ const (
 	EILSEQ          = syscall.Errno(0x58)
 	EINIT           = syscall.Errno(0x8d)
 	EINPROGRESS     = syscall.Errno(0x96)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x85)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x8b)
 	EKEYEXPIRED     = syscall.Errno(0xa2)
 	EKEYREJECTED    = syscall.Errno(0xa4)
@@ -2912,8 +534,6 @@ const (
 	ELNRNG          = syscall.Errno(0x29)
 	ELOOP           = syscall.Errno(0x5a)
 	EMEDIUMTYPE     = syscall.Errno(0xa0)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x61)
 	EMULTIHOP       = syscall.Errno(0x4a)
 	ENAMETOOLONG    = syscall.Errno(0x4e)
@@ -2921,100 +541,68 @@ const (
 	ENETDOWN        = syscall.Errno(0x7f)
 	ENETRESET       = syscall.Errno(0x81)
 	ENETUNREACH     = syscall.Errno(0x80)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x35)
 	ENOBUFS         = syscall.Errno(0x84)
 	ENOCSI          = syscall.Errno(0x2b)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0xa1)
 	ENOLCK          = syscall.Errno(0x2e)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x9f)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x23)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x63)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x59)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x86)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x5d)
 	ENOTNAM         = syscall.Errno(0x89)
 	ENOTRECOVERABLE = syscall.Errno(0xa6)
 	ENOTSOCK        = syscall.Errno(0x5f)
 	ENOTSUP         = syscall.Errno(0x7a)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x50)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x7a)
 	EOVERFLOW       = syscall.Errno(0x4f)
 	EOWNERDEAD      = syscall.Errno(0xa5)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x7b)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x78)
 	EPROTOTYPE      = syscall.Errno(0x62)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x52)
 	EREMDEV         = syscall.Errno(0x8e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x8c)
 	ERESTART        = syscall.Errno(0x5b)
 	ERFKILL         = syscall.Errno(0xa7)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x8f)
 	ESOCKTNOSUPPORT = syscall.Errno(0x79)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x97)
 	ESTRPIPE        = syscall.Errno(0x5c)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x91)
 	ETOOMANYREFS    = syscall.Errno(0x90)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x87)
 	EUNATCH         = syscall.Errno(0x2a)
 	EUSERS          = syscall.Errno(0x5e)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x34)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0xa)
 	SIGCHLD   = syscall.Signal(0x12)
 	SIGCLD    = syscall.Signal(0x12)
 	SIGCONT   = syscall.Signal(0x19)
 	SIGEMT    = syscall.Signal(0x7)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x16)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x16)
 	SIGPROF   = syscall.Signal(0x1d)
 	SIGPWR    = syscall.Signal(0x13)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTOP   = syscall.Signal(0x17)
 	SIGSYS    = syscall.Signal(0xc)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x18)
 	SIGTTIN   = syscall.Signal(0x1a)
 	SIGTTOU   = syscall.Signal(0x1b)
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 7afa93a..973ad93 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
@@ -4,2932 +4,562 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x17
-	B110                                        = 0x3
-	B115200                                     = 0x11
-	B1152000                                    = 0x18
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x19
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x1a
-	B230400                                     = 0x12
-	B2400                                       = 0xb
-	B2500000                                    = 0x1b
-	B300                                        = 0x7
-	B3000000                                    = 0x1c
-	B3500000                                    = 0x1d
-	B38400                                      = 0xf
-	B4000000                                    = 0x1e
-	B460800                                     = 0x13
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x14
-	B57600                                      = 0x10
-	B576000                                     = 0x15
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x16
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x40081270
-	BLKBSZSET                                   = 0x80081271
-	BLKFLSBUF                                   = 0x20001261
-	BLKFRAGET                                   = 0x20001265
-	BLKFRASET                                   = 0x20001264
-	BLKGETSIZE                                  = 0x20001260
-	BLKGETSIZE64                                = 0x40081272
-	BLKPBSZGET                                  = 0x2000127b
-	BLKRAGET                                    = 0x20001263
-	BLKRASET                                    = 0x20001262
-	BLKROGET                                    = 0x2000125e
-	BLKROSET                                    = 0x2000125d
-	BLKRRPART                                   = 0x2000125f
-	BLKSECTGET                                  = 0x20001267
-	BLKSECTSET                                  = 0x20001266
-	BLKSSZGET                                   = 0x20001268
-	BOTHER                                      = 0x1f
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x8000
-	BSDLY                                       = 0x8000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0xff
-	CBAUDEX                                     = 0x0
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0xff0000
-	CLOCAL                                      = 0x8000
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x1000
-	CR2                                         = 0x2000
-	CR3                                         = 0x3000
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x3000
-	CREAD                                       = 0x800
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x100
-	CS7                                         = 0x200
-	CS8                                         = 0x300
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x300
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x400
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x4000
-	FFDLY                                       = 0x4000
-	FLUSHO                                      = 0x800000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0xc
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0xd
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0xe
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x4000
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x100
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x400
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x80
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x1000
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x400
-	IXON                                        = 0x200
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x80
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x40
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x2000
-	MCL_FUTURE                                  = 0x4000
-	MCL_ONFAULT                                 = 0x8000
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NL2                                         = 0x200
-	NL3                                         = 0x300
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x300
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80000000
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x4
-	ONLCR                                       = 0x2
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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                                 = 0x0
-	O_NDELAY                                    = 0x800
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x100
-	O_NOFOLLOW                                  = 0x8000
-	O_NONBLOCK                                  = 0x800
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x404000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x1000
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x2000
-	PENDIN                                      = 0x20000000
-	PERF_EVENT_IOC_DISABLE                      = 0x20002401
-	PERF_EVENT_IOC_ENABLE                       = 0x20002400
-	PERF_EVENT_IOC_ID                           = 0x40082407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x8008240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x80042409
-	PERF_EVENT_IOC_PERIOD                       = 0x80082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc008240a
-	PERF_EVENT_IOC_REFRESH                      = 0x20002402
-	PERF_EVENT_IOC_RESET                        = 0x20002403
-	PERF_EVENT_IOC_SET_BPF                      = 0x80042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x80082406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x20002405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4010743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80107446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x8010744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80107447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_SAO                                    = 0x10
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETEVRREGS                           = 0x14
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGS64                            = 0x16
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GETVRREGS                            = 0x12
-	PTRACE_GETVSRREGS                           = 0x1b
-	PTRACE_GET_DEBUGREG                         = 0x19
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETEVRREGS                           = 0x15
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGS64                            = 0x17
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SETVRREGS                            = 0x13
-	PTRACE_SETVSRREGS                           = 0x1c
-	PTRACE_SET_DEBUGREG                         = 0x1a
-	PTRACE_SINGLEBLOCK                          = 0x100
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_SYSEMU                               = 0x1d
-	PTRACE_SYSEMU_SINGLESTEP                    = 0x1e
-	PTRACE_TRACEME                              = 0x0
-	PT_CCR                                      = 0x26
-	PT_CTR                                      = 0x23
-	PT_DAR                                      = 0x29
-	PT_DSCR                                     = 0x2c
-	PT_DSISR                                    = 0x2a
-	PT_FPR0                                     = 0x30
-	PT_FPSCR                                    = 0x50
-	PT_LNK                                      = 0x24
-	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_SOFTE                                    = 0x27
-	PT_TRAP                                     = 0x28
-	PT_VR0                                      = 0x52
-	PT_VRSAVE                                   = 0x94
-	PT_VSCR                                     = 0x93
-	PT_VSR0                                     = 0x96
-	PT_VSR31                                    = 0xd4
-	PT_XER                                      = 0x25
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x20007002
-	RTC_AIE_ON                                  = 0x20007001
-	RTC_ALM_READ                                = 0x40247008
-	RTC_ALM_SET                                 = 0x80247007
-	RTC_EPOCH_READ                              = 0x4008700d
-	RTC_EPOCH_SET                               = 0x8008700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4008700b
-	RTC_IRQP_SET                                = 0x8008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x20007006
-	RTC_PIE_ON                                  = 0x20007005
-	RTC_PLL_GET                                 = 0x40207011
-	RTC_PLL_SET                                 = 0x80207012
-	RTC_RD_TIME                                 = 0x40247009
-	RTC_SET_TIME                                = 0x8024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x4004667f
-	SIOCOUTQ                                    = 0x40047473
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x14
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x15
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x10
-	SO_RCVTIMEO                                 = 0x12
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x12
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0xc00
-	TABDLY                                      = 0xc00
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x2000741f
-	TCGETA                                      = 0x40147417
-	TCGETS                                      = 0x402c7413
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x2
-	TCSBRK                                      = 0x2000741d
-	TCSBRKP                                     = 0x5425
-	TCSETA                                      = 0x80147418
-	TCSETAF                                     = 0x8014741c
-	TCSETAW                                     = 0x80147419
-	TCSETS                                      = 0x802c7414
-	TCSETSF                                     = 0x802c7416
-	TCSETSW                                     = 0x802c7415
-	TCXONC                                      = 0x2000741e
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_LOOP                                  = 0x8000
-	TIOCM_OUT1                                  = 0x2000
-	TIOCM_OUT2                                  = 0x4000
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x40047473
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x400000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x801054d5
-	TUNDETACHFILTER                             = 0x801054d6
-	TUNGETDEVNETNS                              = 0x200054e3
-	TUNGETFEATURES                              = 0x400454cf
-	TUNGETFILTER                                = 0x401054db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0x10
-	VEOF                                        = 0x4
-	VEOL                                        = 0x6
-	VEOL2                                       = 0x8
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x5
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xb
-	VSTART                                      = 0xd
-	VSTOP                                       = 0xe
-	VSUSP                                       = 0xc
-	VSWTC                                       = 0x9
-	VT0                                         = 0x0
-	VT1                                         = 0x10000
-	VTDLY                                       = 0x10000
-	VTIME                                       = 0x7
-	VWERASE                                     = 0xa
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4000
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0xc00
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x40081270
+	BLKBSZSET                        = 0x80081271
+	BLKFLSBUF                        = 0x20001261
+	BLKFRAGET                        = 0x20001265
+	BLKFRASET                        = 0x20001264
+	BLKGETSIZE                       = 0x20001260
+	BLKGETSIZE64                     = 0x40081272
+	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
+	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                  = 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
+	F_GETOWN                         = 0x9
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x6
+	F_SETLK64                        = 0xd
+	F_SETLKW                         = 0x7
+	F_SETLKW64                       = 0xe
+	F_SETOWN                         = 0x8
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	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
+	NFDBITS                          = 0x40
+	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
+	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                      = 0x0
+	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                = 0x40082407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x80042409
+	PERF_EVENT_IOC_PERIOD            = 0x80082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc008240a
+	PERF_EVENT_IOC_REFRESH           = 0x20002402
+	PERF_EVENT_IOC_RESET             = 0x20002403
+	PERF_EVENT_IOC_SET_BPF           = 0x80042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x80082406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x20002405
+	PPPIOCATTACH                     = 0x8004743d
+	PPPIOCATTCHAN                    = 0x80047438
+	PPPIOCCONNECT                    = 0x8004743a
+	PPPIOCDETACH                     = 0x8004743c
+	PPPIOCDISCONN                    = 0x20007439
+	PPPIOCGASYNCMAP                  = 0x40047458
+	PPPIOCGCHAN                      = 0x40047437
+	PPPIOCGDEBUG                     = 0x40047441
+	PPPIOCGFLAGS                     = 0x4004745a
+	PPPIOCGIDLE                      = 0x4010743f
+	PPPIOCGIDLE32                    = 0x4008743f
+	PPPIOCGIDLE64                    = 0x4010743f
+	PPPIOCGL2TPSTATS                 = 0x40487436
+	PPPIOCGMRU                       = 0x40047453
+	PPPIOCGRASYNCMAP                 = 0x40047455
+	PPPIOCGUNIT                      = 0x40047456
+	PPPIOCGXASYNCMAP                 = 0x40207450
+	PPPIOCSACTIVE                    = 0x80107446
+	PPPIOCSASYNCMAP                  = 0x80047457
+	PPPIOCSCOMPRESS                  = 0x8010744d
+	PPPIOCSDEBUG                     = 0x80047440
+	PPPIOCSFLAGS                     = 0x80047459
+	PPPIOCSMAXCID                    = 0x80047451
+	PPPIOCSMRRU                      = 0x8004743b
+	PPPIOCSMRU                       = 0x80047452
+	PPPIOCSNPMODE                    = 0x8008744b
+	PPPIOCSPASS                      = 0x80107447
+	PPPIOCSRASYNCMAP                 = 0x80047454
+	PPPIOCSXASYNCMAP                 = 0x8020744f
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PROT_SAO                         = 0x10
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	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_FPSCR                         = 0x50
+	PT_LNK                           = 0x24
+	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_SOFTE                         = 0x27
+	PT_TRAP                          = 0x28
+	PT_VR0                           = 0x52
+	PT_VRSAVE                        = 0x94
+	PT_VSCR                          = 0x93
+	PT_VSR0                          = 0x96
+	PT_VSR31                         = 0xd4
+	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                   = 0x4008700d
+	RTC_EPOCH_SET                    = 0x8008700e
+	RTC_IRQP_READ                    = 0x4008700b
+	RTC_IRQP_SET                     = 0x8008700c
+	RTC_PIE_OFF                      = 0x20007006
+	RTC_PIE_ON                       = 0x20007005
+	RTC_PLL_GET                      = 0x40207011
+	RTC_PLL_SET                      = 0x80207012
+	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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x10
+	SO_RCVTIMEO                      = 0x12
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x12
+	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_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                  = 0x801054d5
+	TUNDETACHFILTER                  = 0x801054d6
+	TUNGETDEVNETNS                   = 0x200054e3
+	TUNGETFEATURES                   = 0x400454cf
+	TUNGETFILTER                     = 0x401054db
+	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                         = 0x40
+	XCASE                            = 0x4000
+	XTABS                            = 0xc00
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2938,23 +568,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x3a)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2971,8 +593,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2980,99 +600,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 7e68440..70a7406 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
@@ -4,2932 +4,562 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x17
-	B110                                        = 0x3
-	B115200                                     = 0x11
-	B1152000                                    = 0x18
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x19
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x1a
-	B230400                                     = 0x12
-	B2400                                       = 0xb
-	B2500000                                    = 0x1b
-	B300                                        = 0x7
-	B3000000                                    = 0x1c
-	B3500000                                    = 0x1d
-	B38400                                      = 0xf
-	B4000000                                    = 0x1e
-	B460800                                     = 0x13
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x14
-	B57600                                      = 0x10
-	B576000                                     = 0x15
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x16
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x40081270
-	BLKBSZSET                                   = 0x80081271
-	BLKFLSBUF                                   = 0x20001261
-	BLKFRAGET                                   = 0x20001265
-	BLKFRASET                                   = 0x20001264
-	BLKGETSIZE                                  = 0x20001260
-	BLKGETSIZE64                                = 0x40081272
-	BLKPBSZGET                                  = 0x2000127b
-	BLKRAGET                                    = 0x20001263
-	BLKRASET                                    = 0x20001262
-	BLKROGET                                    = 0x2000125e
-	BLKROSET                                    = 0x2000125d
-	BLKRRPART                                   = 0x2000125f
-	BLKSECTGET                                  = 0x20001267
-	BLKSECTSET                                  = 0x20001266
-	BLKSSZGET                                   = 0x20001268
-	BOTHER                                      = 0x1f
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x8000
-	BSDLY                                       = 0x8000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0xff
-	CBAUDEX                                     = 0x0
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0xff0000
-	CLOCAL                                      = 0x8000
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x1000
-	CR2                                         = 0x2000
-	CR3                                         = 0x3000
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x3000
-	CREAD                                       = 0x800
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x100
-	CS7                                         = 0x200
-	CS8                                         = 0x300
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x300
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x400
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x4000
-	FFDLY                                       = 0x4000
-	FLUSHO                                      = 0x800000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0xc
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0xd
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0xe
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x4000
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x100
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x400
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x80
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x1000
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x400
-	IXON                                        = 0x200
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x80
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x40
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x2000
-	MCL_FUTURE                                  = 0x4000
-	MCL_ONFAULT                                 = 0x8000
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NL2                                         = 0x200
-	NL3                                         = 0x300
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x300
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80000000
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x4
-	ONLCR                                       = 0x2
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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                                 = 0x0
-	O_NDELAY                                    = 0x800
-	O_NOATIME                                   = 0x40000
-	O_NOCTTY                                    = 0x100
-	O_NOFOLLOW                                  = 0x8000
-	O_NONBLOCK                                  = 0x800
-	O_PATH                                      = 0x200000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x404000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x1000
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x2000
-	PENDIN                                      = 0x20000000
-	PERF_EVENT_IOC_DISABLE                      = 0x20002401
-	PERF_EVENT_IOC_ENABLE                       = 0x20002400
-	PERF_EVENT_IOC_ID                           = 0x40082407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x8008240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x80042409
-	PERF_EVENT_IOC_PERIOD                       = 0x80082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc008240a
-	PERF_EVENT_IOC_REFRESH                      = 0x20002402
-	PERF_EVENT_IOC_RESET                        = 0x20002403
-	PERF_EVENT_IOC_SET_BPF                      = 0x80042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x80082406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x20002405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4010743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80107446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x8010744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80107447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_SAO                                    = 0x10
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETEVRREGS                           = 0x14
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGS64                            = 0x16
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GETVRREGS                            = 0x12
-	PTRACE_GETVSRREGS                           = 0x1b
-	PTRACE_GET_DEBUGREG                         = 0x19
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETEVRREGS                           = 0x15
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGS64                            = 0x17
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SETVRREGS                            = 0x13
-	PTRACE_SETVSRREGS                           = 0x1c
-	PTRACE_SET_DEBUGREG                         = 0x1a
-	PTRACE_SINGLEBLOCK                          = 0x100
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_SYSEMU                               = 0x1d
-	PTRACE_SYSEMU_SINGLESTEP                    = 0x1e
-	PTRACE_TRACEME                              = 0x0
-	PT_CCR                                      = 0x26
-	PT_CTR                                      = 0x23
-	PT_DAR                                      = 0x29
-	PT_DSCR                                     = 0x2c
-	PT_DSISR                                    = 0x2a
-	PT_FPR0                                     = 0x30
-	PT_FPSCR                                    = 0x50
-	PT_LNK                                      = 0x24
-	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_SOFTE                                    = 0x27
-	PT_TRAP                                     = 0x28
-	PT_VR0                                      = 0x52
-	PT_VRSAVE                                   = 0x94
-	PT_VSCR                                     = 0x93
-	PT_VSR0                                     = 0x96
-	PT_VSR31                                    = 0xd4
-	PT_XER                                      = 0x25
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x20007002
-	RTC_AIE_ON                                  = 0x20007001
-	RTC_ALM_READ                                = 0x40247008
-	RTC_ALM_SET                                 = 0x80247007
-	RTC_EPOCH_READ                              = 0x4008700d
-	RTC_EPOCH_SET                               = 0x8008700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4008700b
-	RTC_IRQP_SET                                = 0x8008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x20007006
-	RTC_PIE_ON                                  = 0x20007005
-	RTC_PLL_GET                                 = 0x40207011
-	RTC_PLL_SET                                 = 0x80207012
-	RTC_RD_TIME                                 = 0x40247009
-	RTC_SET_TIME                                = 0x8024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x4004667f
-	SIOCOUTQ                                    = 0x40047473
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x14
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x15
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x10
-	SO_RCVTIMEO                                 = 0x12
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x12
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0xc00
-	TABDLY                                      = 0xc00
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x2000741f
-	TCGETA                                      = 0x40147417
-	TCGETS                                      = 0x402c7413
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x2
-	TCSBRK                                      = 0x2000741d
-	TCSBRKP                                     = 0x5425
-	TCSETA                                      = 0x80147418
-	TCSETAF                                     = 0x8014741c
-	TCSETAW                                     = 0x80147419
-	TCSETS                                      = 0x802c7414
-	TCSETSF                                     = 0x802c7416
-	TCSETSW                                     = 0x802c7415
-	TCXONC                                      = 0x2000741e
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_LOOP                                  = 0x8000
-	TIOCM_OUT1                                  = 0x2000
-	TIOCM_OUT2                                  = 0x4000
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x40047473
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x400000
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x801054d5
-	TUNDETACHFILTER                             = 0x801054d6
-	TUNGETDEVNETNS                              = 0x200054e3
-	TUNGETFEATURES                              = 0x400454cf
-	TUNGETFILTER                                = 0x401054db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0x10
-	VEOF                                        = 0x4
-	VEOL                                        = 0x6
-	VEOL2                                       = 0x8
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x5
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xb
-	VSTART                                      = 0xd
-	VSTOP                                       = 0xe
-	VSUSP                                       = 0xc
-	VSWTC                                       = 0x9
-	VT0                                         = 0x0
-	VT1                                         = 0x10000
-	VTDLY                                       = 0x10000
-	VTIME                                       = 0x7
-	VWERASE                                     = 0xa
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4000
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0xc00
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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                        = 0x40081270
+	BLKBSZSET                        = 0x80081271
+	BLKFLSBUF                        = 0x20001261
+	BLKFRAGET                        = 0x20001265
+	BLKFRASET                        = 0x20001264
+	BLKGETSIZE                       = 0x20001260
+	BLKGETSIZE64                     = 0x40081272
+	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
+	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                  = 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
+	F_GETOWN                         = 0x9
+	F_RDLCK                          = 0x0
+	F_SETLK                          = 0x6
+	F_SETLK64                        = 0xd
+	F_SETLKW                         = 0x7
+	F_SETLKW64                       = 0xe
+	F_SETOWN                         = 0x8
+	F_UNLCK                          = 0x2
+	F_WRLCK                          = 0x1
+	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
+	NFDBITS                          = 0x40
+	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
+	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                      = 0x0
+	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                = 0x40082407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x80042409
+	PERF_EVENT_IOC_PERIOD            = 0x80082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc008240a
+	PERF_EVENT_IOC_REFRESH           = 0x20002402
+	PERF_EVENT_IOC_RESET             = 0x20002403
+	PERF_EVENT_IOC_SET_BPF           = 0x80042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x80082406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x20002405
+	PPPIOCATTACH                     = 0x8004743d
+	PPPIOCATTCHAN                    = 0x80047438
+	PPPIOCCONNECT                    = 0x8004743a
+	PPPIOCDETACH                     = 0x8004743c
+	PPPIOCDISCONN                    = 0x20007439
+	PPPIOCGASYNCMAP                  = 0x40047458
+	PPPIOCGCHAN                      = 0x40047437
+	PPPIOCGDEBUG                     = 0x40047441
+	PPPIOCGFLAGS                     = 0x4004745a
+	PPPIOCGIDLE                      = 0x4010743f
+	PPPIOCGIDLE32                    = 0x4008743f
+	PPPIOCGIDLE64                    = 0x4010743f
+	PPPIOCGL2TPSTATS                 = 0x40487436
+	PPPIOCGMRU                       = 0x40047453
+	PPPIOCGRASYNCMAP                 = 0x40047455
+	PPPIOCGUNIT                      = 0x40047456
+	PPPIOCGXASYNCMAP                 = 0x40207450
+	PPPIOCSACTIVE                    = 0x80107446
+	PPPIOCSASYNCMAP                  = 0x80047457
+	PPPIOCSCOMPRESS                  = 0x8010744d
+	PPPIOCSDEBUG                     = 0x80047440
+	PPPIOCSFLAGS                     = 0x80047459
+	PPPIOCSMAXCID                    = 0x80047451
+	PPPIOCSMRRU                      = 0x8004743b
+	PPPIOCSMRU                       = 0x80047452
+	PPPIOCSNPMODE                    = 0x8008744b
+	PPPIOCSPASS                      = 0x80107447
+	PPPIOCSRASYNCMAP                 = 0x80047454
+	PPPIOCSXASYNCMAP                 = 0x8020744f
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PROT_SAO                         = 0x10
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	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_FPSCR                         = 0x50
+	PT_LNK                           = 0x24
+	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_SOFTE                         = 0x27
+	PT_TRAP                          = 0x28
+	PT_VR0                           = 0x52
+	PT_VRSAVE                        = 0x94
+	PT_VSCR                          = 0x93
+	PT_VSR0                          = 0x96
+	PT_VSR31                         = 0xd4
+	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                   = 0x4008700d
+	RTC_EPOCH_SET                    = 0x8008700e
+	RTC_IRQP_READ                    = 0x4008700b
+	RTC_IRQP_SET                     = 0x8008700c
+	RTC_PIE_OFF                      = 0x20007006
+	RTC_PIE_ON                       = 0x20007005
+	RTC_PLL_GET                      = 0x40207011
+	RTC_PLL_SET                      = 0x80207012
+	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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x10
+	SO_RCVTIMEO                      = 0x12
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x12
+	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_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                  = 0x801054d5
+	TUNDETACHFILTER                  = 0x801054d6
+	TUNGETDEVNETNS                   = 0x200054e3
+	TUNGETFEATURES                   = 0x400454cf
+	TUNGETFILTER                     = 0x401054db
+	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                         = 0x40
+	XCASE                            = 0x4000
+	XTABS                            = 0xc00
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2938,23 +568,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x3a)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2971,8 +593,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2980,99 +600,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 30afa57..b1bf799 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
@@ -4,2857 +4,487 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0x5
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8010743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40107446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x4010744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40107447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8008700b
-	RTC_IRQP_SET                                = 0x4008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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
+	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
+	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
+	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
+	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
+	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
+	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
+	PPPIOCXFERUNIT                   = 0x744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	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_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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_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
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2863,23 +493,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2896,8 +518,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2905,99 +525,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 5dc08e9..7053d10 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
@@ -4,2930 +4,560 @@
 // +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/include -fsigned-char /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	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
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x80000
-	EFD_NONBLOCK                                = 0x800
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x80000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x400c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x40106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x800c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x5
-	F_GETLK64                                   = 0x5
-	F_GETOWN                                    = 0x9
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x0
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x6
-	F_SETLK64                                   = 0x6
-	F_SETLKW                                    = 0x7
-	F_SETLKW64                                  = 0x7
-	F_SETOWN                                    = 0x8
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x2
-	F_WRLCK                                     = 0x1
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x80000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x800
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x7b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x100
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x2000
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x4000
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x1
-	MCL_FUTURE                                  = 0x2
-	MCL_ONFAULT                                 = 0x4
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0xb703
-	NS_GET_OWNER_UID                            = 0xb704
-	NS_GET_PARENT                               = 0xb702
-	NS_GET_USERNS                               = 0xb701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	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_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x101000
-	O_SYNC                                      = 0x101000
-	O_TMPFILE                                   = 0x410000
-	O_TRUNC                                     = 0x200
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	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
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x4004743d
-	PPPIOCATTCHAN                               = 0x40047438
-	PPPIOCCONNECT                               = 0x4004743a
-	PPPIOCDETACH                                = 0x4004743c
-	PPPIOCDISCONN                               = 0x7439
-	PPPIOCGASYNCMAP                             = 0x80047458
-	PPPIOCGCHAN                                 = 0x80047437
-	PPPIOCGDEBUG                                = 0x80047441
-	PPPIOCGFLAGS                                = 0x8004745a
-	PPPIOCGIDLE                                 = 0x8010743f
-	PPPIOCGIDLE32                               = 0x8008743f
-	PPPIOCGIDLE64                               = 0x8010743f
-	PPPIOCGL2TPSTATS                            = 0x80487436
-	PPPIOCGMRU                                  = 0x80047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x80047455
-	PPPIOCGUNIT                                 = 0x80047456
-	PPPIOCGXASYNCMAP                            = 0x80207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x40107446
-	PPPIOCSASYNCMAP                             = 0x40047457
-	PPPIOCSCOMPRESS                             = 0x4010744d
-	PPPIOCSDEBUG                                = 0x40047440
-	PPPIOCSFLAGS                                = 0x40047459
-	PPPIOCSMAXCID                               = 0x40047451
-	PPPIOCSMRRU                                 = 0x4004743b
-	PPPIOCSMRU                                  = 0x40047452
-	PPPIOCSNPMODE                               = 0x4008744b
-	PPPIOCSPASS                                 = 0x40107447
-	PPPIOCSRASYNCMAP                            = 0x40047454
-	PPPIOCSXASYNCMAP                            = 0x4020744f
-	PPPIOCXFERUNIT                              = 0x744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_DISABLE_TE                           = 0x5010
-	PTRACE_ENABLE_TE                            = 0x5009
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_LAST_BREAK                       = 0x5006
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_OLDSETOPTIONS                        = 0x15
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKDATA_AREA                        = 0x5003
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKTEXT_AREA                        = 0x5002
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_PEEKUSR_AREA                         = 0x5000
-	PTRACE_PEEK_SYSTEM_CALL                     = 0x5007
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKEDATA_AREA                        = 0x5005
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKETEXT_AREA                        = 0x5004
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_POKEUSR_AREA                         = 0x5001
-	PTRACE_POKE_SYSTEM_CALL                     = 0x5008
-	PTRACE_PROT                                 = 0x15
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SINGLEBLOCK                          = 0xc
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TE_ABORT_RAND                        = 0x5011
-	PTRACE_TRACEME                              = 0x0
-	PT_ACR0                                     = 0x90
-	PT_ACR1                                     = 0x94
-	PT_ACR10                                    = 0xb8
-	PT_ACR11                                    = 0xbc
-	PT_ACR12                                    = 0xc0
-	PT_ACR13                                    = 0xc4
-	PT_ACR14                                    = 0xc8
-	PT_ACR15                                    = 0xcc
-	PT_ACR2                                     = 0x98
-	PT_ACR3                                     = 0x9c
-	PT_ACR4                                     = 0xa0
-	PT_ACR5                                     = 0xa4
-	PT_ACR6                                     = 0xa8
-	PT_ACR7                                     = 0xac
-	PT_ACR8                                     = 0xb0
-	PT_ACR9                                     = 0xb4
-	PT_CR_10                                    = 0x168
-	PT_CR_11                                    = 0x170
-	PT_CR_9                                     = 0x160
-	PT_ENDREGS                                  = 0x1af
-	PT_FPC                                      = 0xd8
-	PT_FPR0                                     = 0xe0
-	PT_FPR1                                     = 0xe8
-	PT_FPR10                                    = 0x130
-	PT_FPR11                                    = 0x138
-	PT_FPR12                                    = 0x140
-	PT_FPR13                                    = 0x148
-	PT_FPR14                                    = 0x150
-	PT_FPR15                                    = 0x158
-	PT_FPR2                                     = 0xf0
-	PT_FPR3                                     = 0xf8
-	PT_FPR4                                     = 0x100
-	PT_FPR5                                     = 0x108
-	PT_FPR6                                     = 0x110
-	PT_FPR7                                     = 0x118
-	PT_FPR8                                     = 0x120
-	PT_FPR9                                     = 0x128
-	PT_GPR0                                     = 0x10
-	PT_GPR1                                     = 0x18
-	PT_GPR10                                    = 0x60
-	PT_GPR11                                    = 0x68
-	PT_GPR12                                    = 0x70
-	PT_GPR13                                    = 0x78
-	PT_GPR14                                    = 0x80
-	PT_GPR15                                    = 0x88
-	PT_GPR2                                     = 0x20
-	PT_GPR3                                     = 0x28
-	PT_GPR4                                     = 0x30
-	PT_GPR5                                     = 0x38
-	PT_GPR6                                     = 0x40
-	PT_GPR7                                     = 0x48
-	PT_GPR8                                     = 0x50
-	PT_GPR9                                     = 0x58
-	PT_IEEE_IP                                  = 0x1a8
-	PT_LASTOFF                                  = 0x1a8
-	PT_ORIGGPR2                                 = 0xd0
-	PT_PSWADDR                                  = 0x8
-	PT_PSWMASK                                  = 0x0
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x7
-	RLIMIT_NPROC                                = 0x6
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x40085203
-	RNDADDTOENTCNT                              = 0x40045201
-	RNDCLEARPOOL                                = 0x5206
-	RNDGETENTCNT                                = 0x80045200
-	RNDGETPOOL                                  = 0x80085202
-	RNDRESEEDCRNG                               = 0x5207
-	RNDZAPENTCNT                                = 0x5204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	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_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x8008700b
-	RTC_IRQP_SET                                = 0x4008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	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_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x25
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x36
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3a
-	SCM_TIMESTAMPNS                             = 0x23
-	SCM_TXTIME                                  = 0x3d
-	SCM_WIFI_STATUS                             = 0x29
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x80000
-	SFD_NONBLOCK                                = 0x800
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x80108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x80108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x541b
-	SIOCOUTQ                                    = 0x5411
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x80000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x800
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0x1
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x1e
-	SO_ATTACH_BPF                               = 0x32
-	SO_ATTACH_FILTER                            = 0x1a
-	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_BUSY_POLL                                = 0x2e
-	SO_CNX_ADVICE                               = 0x35
-	SO_COOKIE                                   = 0x39
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x44
-	SO_DOMAIN                                   = 0x27
-	SO_DONTROUTE                                = 0x5
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x4
-	SO_GET_FILTER                               = 0x1a
-	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_NOFCS                                    = 0x2b
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0xa
-	SO_PASSCRED                                 = 0x10
-	SO_PASSSEC                                  = 0x22
-	SO_PEEK_OFF                                 = 0x2a
-	SO_PEERCRED                                 = 0x11
-	SO_PEERGROUPS                               = 0x3b
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1f
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x26
-	SO_RCVBUF                                   = 0x8
-	SO_RCVBUFFORCE                              = 0x21
-	SO_RCVLOWAT                                 = 0x12
-	SO_RCVTIMEO                                 = 0x14
-	SO_RCVTIMEO_NEW                             = 0x42
-	SO_RCVTIMEO_OLD                             = 0x14
-	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_TIMESTAMP                                = 0x1d
-	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_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3d
-	SO_TYPE                                     = 0x3
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x29
-	SO_ZEROCOPY                                 = 0x3c
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x540b
-	TCGETA                                      = 0x5405
-	TCGETS                                      = 0x5401
-	TCGETS2                                     = 0x802c542a
-	TCGETX                                      = 0x5432
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	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
-	TIMER_ABSTIME                               = 0x1
-	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_DTR                                   = 0x2
-	TIOCM_LE                                    = 0x1
-	TIOCM_RI                                    = 0x80
-	TIOCM_RNG                                   = 0x80
-	TIOCM_RTS                                   = 0x4
-	TIOCM_SR                                    = 0x10
-	TIOCM_ST                                    = 0x8
-	TIOCNOTTY                                   = 0x5422
-	TIOCNXCL                                    = 0x540d
-	TIOCOUTQ                                    = 0x5411
-	TIOCPKT                                     = 0x5420
-	TIOCPKT_DATA                                = 0x0
-	TIOCPKT_DOSTOP                              = 0x20
-	TIOCPKT_FLUSHREAD                           = 0x1
-	TIOCPKT_FLUSHWRITE                          = 0x2
-	TIOCPKT_IOCTL                               = 0x40
-	TIOCPKT_NOSTOP                              = 0x10
-	TIOCPKT_START                               = 0x8
-	TIOCPKT_STOP                                = 0x4
-	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
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
+	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
+	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
+	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
+	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
+	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
+	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
+	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
+	PPPIOCXFERUNIT                   = 0x744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_DISABLE_TE                = 0x5010
+	PTRACE_ENABLE_TE                 = 0x5009
+	PTRACE_GET_LAST_BREAK            = 0x5006
+	PTRACE_OLDSETOPTIONS             = 0x15
+	PTRACE_PEEKDATA_AREA             = 0x5003
+	PTRACE_PEEKTEXT_AREA             = 0x5002
+	PTRACE_PEEKUSR_AREA              = 0x5000
+	PTRACE_PEEK_SYSTEM_CALL          = 0x5007
+	PTRACE_POKEDATA_AREA             = 0x5005
+	PTRACE_POKETEXT_AREA             = 0x5004
+	PTRACE_POKEUSR_AREA              = 0x5001
+	PTRACE_POKE_SYSTEM_CALL          = 0x5008
+	PTRACE_PROT                      = 0x15
+	PTRACE_SINGLEBLOCK               = 0xc
+	PTRACE_TE_ABORT_RAND             = 0x5011
+	PT_ACR0                          = 0x90
+	PT_ACR1                          = 0x94
+	PT_ACR10                         = 0xb8
+	PT_ACR11                         = 0xbc
+	PT_ACR12                         = 0xc0
+	PT_ACR13                         = 0xc4
+	PT_ACR14                         = 0xc8
+	PT_ACR15                         = 0xcc
+	PT_ACR2                          = 0x98
+	PT_ACR3                          = 0x9c
+	PT_ACR4                          = 0xa0
+	PT_ACR5                          = 0xa4
+	PT_ACR6                          = 0xa8
+	PT_ACR7                          = 0xac
+	PT_ACR8                          = 0xb0
+	PT_ACR9                          = 0xb4
+	PT_CR_10                         = 0x168
+	PT_CR_11                         = 0x170
+	PT_CR_9                          = 0x160
+	PT_ENDREGS                       = 0x1af
+	PT_FPC                           = 0xd8
+	PT_FPR0                          = 0xe0
+	PT_FPR1                          = 0xe8
+	PT_FPR10                         = 0x130
+	PT_FPR11                         = 0x138
+	PT_FPR12                         = 0x140
+	PT_FPR13                         = 0x148
+	PT_FPR14                         = 0x150
+	PT_FPR15                         = 0x158
+	PT_FPR2                          = 0xf0
+	PT_FPR3                          = 0xf8
+	PT_FPR4                          = 0x100
+	PT_FPR5                          = 0x108
+	PT_FPR6                          = 0x110
+	PT_FPR7                          = 0x118
+	PT_FPR8                          = 0x120
+	PT_FPR9                          = 0x128
+	PT_GPR0                          = 0x10
+	PT_GPR1                          = 0x18
+	PT_GPR10                         = 0x60
+	PT_GPR11                         = 0x68
+	PT_GPR12                         = 0x70
+	PT_GPR13                         = 0x78
+	PT_GPR14                         = 0x80
+	PT_GPR15                         = 0x88
+	PT_GPR2                          = 0x20
+	PT_GPR3                          = 0x28
+	PT_GPR4                          = 0x30
+	PT_GPR5                          = 0x38
+	PT_GPR6                          = 0x40
+	PT_GPR7                          = 0x48
+	PT_GPR8                          = 0x50
+	PT_GPR9                          = 0x58
+	PT_IEEE_IP                       = 0x1a8
+	PT_LASTOFF                       = 0x1a8
+	PT_ORIGGPR2                      = 0xd0
+	PT_PSWADDR                       = 0x8
+	PT_PSWMASK                       = 0x0
+	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_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_BUSY_POLL                     = 0x2e
+	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_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_PROTOCOL                      = 0x26
+	SO_RCVBUF                        = 0x8
+	SO_RCVBUFFORCE                   = 0x21
+	SO_RCVLOWAT                      = 0x12
+	SO_RCVTIMEO                      = 0x14
+	SO_RCVTIMEO_NEW                  = 0x42
+	SO_RCVTIMEO_OLD                  = 0x14
+	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_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
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x62)
 	EADDRNOTAVAIL   = syscall.Errno(0x63)
 	EADV            = syscall.Errno(0x44)
 	EAFNOSUPPORT    = syscall.Errno(0x61)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x72)
 	EBADE           = syscall.Errno(0x34)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x4d)
 	EBADMSG         = syscall.Errno(0x4a)
 	EBADR           = syscall.Errno(0x35)
 	EBADRQC         = syscall.Errno(0x38)
 	EBADSLT         = syscall.Errno(0x39)
 	EBFONT          = syscall.Errno(0x3b)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7d)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x2c)
 	ECOMM           = syscall.Errno(0x46)
 	ECONNABORTED    = syscall.Errno(0x67)
@@ -2936,23 +566,15 @@ const (
 	EDEADLK         = syscall.Errno(0x23)
 	EDEADLOCK       = syscall.Errno(0x23)
 	EDESTADDRREQ    = syscall.Errno(0x59)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x49)
 	EDQUOT          = syscall.Errno(0x7a)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x70)
 	EHOSTUNREACH    = syscall.Errno(0x71)
 	EHWPOISON       = syscall.Errno(0x85)
 	EIDRM           = syscall.Errno(0x2b)
 	EILSEQ          = syscall.Errno(0x54)
 	EINPROGRESS     = syscall.Errno(0x73)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x6a)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x7f)
 	EKEYREJECTED    = syscall.Errno(0x81)
@@ -2969,8 +591,6 @@ const (
 	ELNRNG          = syscall.Errno(0x30)
 	ELOOP           = syscall.Errno(0x28)
 	EMEDIUMTYPE     = syscall.Errno(0x7c)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x5a)
 	EMULTIHOP       = syscall.Errno(0x48)
 	ENAMETOOLONG    = syscall.Errno(0x24)
@@ -2978,99 +598,67 @@ const (
 	ENETDOWN        = syscall.Errno(0x64)
 	ENETRESET       = syscall.Errno(0x66)
 	ENETUNREACH     = syscall.Errno(0x65)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x37)
 	ENOBUFS         = syscall.Errno(0x69)
 	ENOCSI          = syscall.Errno(0x32)
 	ENODATA         = syscall.Errno(0x3d)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x7e)
 	ENOLCK          = syscall.Errno(0x25)
 	ENOLINK         = syscall.Errno(0x43)
 	ENOMEDIUM       = syscall.Errno(0x7b)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x2a)
 	ENONET          = syscall.Errno(0x40)
 	ENOPKG          = syscall.Errno(0x41)
 	ENOPROTOOPT     = syscall.Errno(0x5c)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x3f)
 	ENOSTR          = syscall.Errno(0x3c)
 	ENOSYS          = syscall.Errno(0x26)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x6b)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x27)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x83)
 	ENOTSOCK        = syscall.Errno(0x58)
 	ENOTSUP         = syscall.Errno(0x5f)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x4c)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x5f)
 	EOVERFLOW       = syscall.Errno(0x4b)
 	EOWNERDEAD      = syscall.Errno(0x82)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x60)
-	EPIPE           = syscall.Errno(0x20)
 	EPROTO          = syscall.Errno(0x47)
 	EPROTONOSUPPORT = syscall.Errno(0x5d)
 	EPROTOTYPE      = syscall.Errno(0x5b)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x4e)
 	EREMOTE         = syscall.Errno(0x42)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x55)
 	ERFKILL         = syscall.Errno(0x84)
-	EROFS           = syscall.Errno(0x1e)
 	ESHUTDOWN       = syscall.Errno(0x6c)
 	ESOCKTNOSUPPORT = syscall.Errno(0x5e)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x45)
 	ESTALE          = syscall.Errno(0x74)
 	ESTRPIPE        = syscall.Errno(0x56)
 	ETIME           = syscall.Errno(0x3e)
 	ETIMEDOUT       = syscall.Errno(0x6e)
 	ETOOMANYREFS    = syscall.Errno(0x6d)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x31)
 	EUSERS          = syscall.Errno(0x57)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x36)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0x7)
 	SIGCHLD   = syscall.Signal(0x11)
 	SIGCLD    = syscall.Signal(0x11)
 	SIGCONT   = syscall.Signal(0x12)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x1d)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x1d)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1e)
-	SIGQUIT   = syscall.Signal(0x3)
-	SIGSEGV   = syscall.Signal(0xb)
 	SIGSTKFLT = syscall.Signal(0x10)
 	SIGSTOP   = syscall.Signal(0x13)
 	SIGSYS    = syscall.Signal(0x1f)
-	SIGTERM   = syscall.Signal(0xf)
-	SIGTRAP   = syscall.Signal(0x5)
 	SIGTSTP   = syscall.Signal(0x14)
 	SIGTTIN   = syscall.Signal(0x15)
 	SIGTTOU   = syscall.Signal(0x16)
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 cf1c386..137cfe7 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
@@ -4,2921 +4,551 @@
 // +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/include /build/_const.go
 
 package unix
 
 import "syscall"
 
 const (
-	AAFS_MAGIC                                  = 0x5a3c69f0
-	ADFS_SUPER_MAGIC                            = 0xadf5
-	AFFS_SUPER_MAGIC                            = 0xadff
-	AFS_FS_MAGIC                                = 0x6b414653
-	AFS_SUPER_MAGIC                             = 0x5346414f
-	AF_ALG                                      = 0x26
-	AF_APPLETALK                                = 0x5
-	AF_ASH                                      = 0x12
-	AF_ATMPVC                                   = 0x8
-	AF_ATMSVC                                   = 0x14
-	AF_AX25                                     = 0x3
-	AF_BLUETOOTH                                = 0x1f
-	AF_BRIDGE                                   = 0x7
-	AF_CAIF                                     = 0x25
-	AF_CAN                                      = 0x1d
-	AF_DECnet                                   = 0xc
-	AF_ECONET                                   = 0x13
-	AF_FILE                                     = 0x1
-	AF_IB                                       = 0x1b
-	AF_IEEE802154                               = 0x24
-	AF_INET                                     = 0x2
-	AF_INET6                                    = 0xa
-	AF_IPX                                      = 0x4
-	AF_IRDA                                     = 0x17
-	AF_ISDN                                     = 0x22
-	AF_IUCV                                     = 0x20
-	AF_KCM                                      = 0x29
-	AF_KEY                                      = 0xf
-	AF_LLC                                      = 0x1a
-	AF_LOCAL                                    = 0x1
-	AF_MAX                                      = 0x2d
-	AF_MPLS                                     = 0x1c
-	AF_NETBEUI                                  = 0xd
-	AF_NETLINK                                  = 0x10
-	AF_NETROM                                   = 0x6
-	AF_NFC                                      = 0x27
-	AF_PACKET                                   = 0x11
-	AF_PHONET                                   = 0x23
-	AF_PPPOX                                    = 0x18
-	AF_QIPCRTR                                  = 0x2a
-	AF_RDS                                      = 0x15
-	AF_ROSE                                     = 0xb
-	AF_ROUTE                                    = 0x10
-	AF_RXRPC                                    = 0x21
-	AF_SECURITY                                 = 0xe
-	AF_SMC                                      = 0x2b
-	AF_SNA                                      = 0x16
-	AF_TIPC                                     = 0x1e
-	AF_UNIX                                     = 0x1
-	AF_UNSPEC                                   = 0x0
-	AF_VSOCK                                    = 0x28
-	AF_WANPIPE                                  = 0x19
-	AF_X25                                      = 0x9
-	AF_XDP                                      = 0x2c
-	ALG_OP_DECRYPT                              = 0x0
-	ALG_OP_ENCRYPT                              = 0x1
-	ALG_SET_AEAD_ASSOCLEN                       = 0x4
-	ALG_SET_AEAD_AUTHSIZE                       = 0x5
-	ALG_SET_IV                                  = 0x2
-	ALG_SET_KEY                                 = 0x1
-	ALG_SET_OP                                  = 0x3
-	ANON_INODE_FS_MAGIC                         = 0x9041934
-	ARPHRD_6LOWPAN                              = 0x339
-	ARPHRD_ADAPT                                = 0x108
-	ARPHRD_APPLETLK                             = 0x8
-	ARPHRD_ARCNET                               = 0x7
-	ARPHRD_ASH                                  = 0x30d
-	ARPHRD_ATM                                  = 0x13
-	ARPHRD_AX25                                 = 0x3
-	ARPHRD_BIF                                  = 0x307
-	ARPHRD_CAIF                                 = 0x336
-	ARPHRD_CAN                                  = 0x118
-	ARPHRD_CHAOS                                = 0x5
-	ARPHRD_CISCO                                = 0x201
-	ARPHRD_CSLIP                                = 0x101
-	ARPHRD_CSLIP6                               = 0x103
-	ARPHRD_DDCMP                                = 0x205
-	ARPHRD_DLCI                                 = 0xf
-	ARPHRD_ECONET                               = 0x30e
-	ARPHRD_EETHER                               = 0x2
-	ARPHRD_ETHER                                = 0x1
-	ARPHRD_EUI64                                = 0x1b
-	ARPHRD_FCAL                                 = 0x311
-	ARPHRD_FCFABRIC                             = 0x313
-	ARPHRD_FCPL                                 = 0x312
-	ARPHRD_FCPP                                 = 0x310
-	ARPHRD_FDDI                                 = 0x306
-	ARPHRD_FRAD                                 = 0x302
-	ARPHRD_HDLC                                 = 0x201
-	ARPHRD_HIPPI                                = 0x30c
-	ARPHRD_HWX25                                = 0x110
-	ARPHRD_IEEE1394                             = 0x18
-	ARPHRD_IEEE802                              = 0x6
-	ARPHRD_IEEE80211                            = 0x321
-	ARPHRD_IEEE80211_PRISM                      = 0x322
-	ARPHRD_IEEE80211_RADIOTAP                   = 0x323
-	ARPHRD_IEEE802154                           = 0x324
-	ARPHRD_IEEE802154_MONITOR                   = 0x325
-	ARPHRD_IEEE802_TR                           = 0x320
-	ARPHRD_INFINIBAND                           = 0x20
-	ARPHRD_IP6GRE                               = 0x337
-	ARPHRD_IPDDP                                = 0x309
-	ARPHRD_IPGRE                                = 0x30a
-	ARPHRD_IRDA                                 = 0x30f
-	ARPHRD_LAPB                                 = 0x204
-	ARPHRD_LOCALTLK                             = 0x305
-	ARPHRD_LOOPBACK                             = 0x304
-	ARPHRD_METRICOM                             = 0x17
-	ARPHRD_NETLINK                              = 0x338
-	ARPHRD_NETROM                               = 0x0
-	ARPHRD_NONE                                 = 0xfffe
-	ARPHRD_PHONET                               = 0x334
-	ARPHRD_PHONET_PIPE                          = 0x335
-	ARPHRD_PIMREG                               = 0x30b
-	ARPHRD_PPP                                  = 0x200
-	ARPHRD_PRONET                               = 0x4
-	ARPHRD_RAWHDLC                              = 0x206
-	ARPHRD_RAWIP                                = 0x207
-	ARPHRD_ROSE                                 = 0x10e
-	ARPHRD_RSRVD                                = 0x104
-	ARPHRD_SIT                                  = 0x308
-	ARPHRD_SKIP                                 = 0x303
-	ARPHRD_SLIP                                 = 0x100
-	ARPHRD_SLIP6                                = 0x102
-	ARPHRD_TUNNEL                               = 0x300
-	ARPHRD_TUNNEL6                              = 0x301
-	ARPHRD_VOID                                 = 0xffff
-	ARPHRD_VSOCKMON                             = 0x33a
-	ARPHRD_X25                                  = 0x10f
-	ASI_LEON_DFLUSH                             = 0x11
-	ASI_LEON_IFLUSH                             = 0x10
-	ASI_LEON_MMUFLUSH                           = 0x18
-	AUTOFS_SUPER_MAGIC                          = 0x187
-	B0                                          = 0x0
-	B1000000                                    = 0x1008
-	B110                                        = 0x3
-	B115200                                     = 0x1002
-	B1152000                                    = 0x1009
-	B1200                                       = 0x9
-	B134                                        = 0x4
-	B150                                        = 0x5
-	B1500000                                    = 0x100a
-	B1800                                       = 0xa
-	B19200                                      = 0xe
-	B200                                        = 0x6
-	B2000000                                    = 0x100b
-	B230400                                     = 0x1003
-	B2400                                       = 0xb
-	B2500000                                    = 0x100c
-	B300                                        = 0x7
-	B3000000                                    = 0x100d
-	B3500000                                    = 0x100e
-	B38400                                      = 0xf
-	B4000000                                    = 0x100f
-	B460800                                     = 0x1004
-	B4800                                       = 0xc
-	B50                                         = 0x1
-	B500000                                     = 0x1005
-	B57600                                      = 0x1001
-	B576000                                     = 0x1006
-	B600                                        = 0x8
-	B75                                         = 0x2
-	B921600                                     = 0x1007
-	B9600                                       = 0xd
-	BALLOON_KVM_MAGIC                           = 0x13661366
-	BDEVFS_MAGIC                                = 0x62646576
-	BINDERFS_SUPER_MAGIC                        = 0x6c6f6f70
-	BINFMTFS_MAGIC                              = 0x42494e4d
-	BLKBSZGET                                   = 0x40081270
-	BLKBSZSET                                   = 0x80081271
-	BLKFLSBUF                                   = 0x20001261
-	BLKFRAGET                                   = 0x20001265
-	BLKFRASET                                   = 0x20001264
-	BLKGETSIZE                                  = 0x20001260
-	BLKGETSIZE64                                = 0x40081272
-	BLKPBSZGET                                  = 0x2000127b
-	BLKRAGET                                    = 0x20001263
-	BLKRASET                                    = 0x20001262
-	BLKROGET                                    = 0x2000125e
-	BLKROSET                                    = 0x2000125d
-	BLKRRPART                                   = 0x2000125f
-	BLKSECTGET                                  = 0x20001267
-	BLKSECTSET                                  = 0x20001266
-	BLKSSZGET                                   = 0x20001268
-	BOTHER                                      = 0x1000
-	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_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_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_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_QUERY_EFFECTIVE                       = 0x1
-	BPF_F_RDONLY                                = 0x8
-	BPF_F_RDONLY_PROG                           = 0x80
-	BPF_F_RECOMPUTE_CSUM                        = 0x1
-	BPF_F_REUSE_STACKID                         = 0x400
-	BPF_F_SEQ_NUMBER                            = 0x8
-	BPF_F_SKIP_FIELD_MASK                       = 0xff
-	BPF_F_STACK_BUILD_ID                        = 0x20
-	BPF_F_STRICT_ALIGNMENT                      = 0x1
-	BPF_F_SYSCTL_BASE_NAME                      = 0x1
-	BPF_F_TEST_RND_HI32                         = 0x4
-	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_H                                       = 0x8
-	BPF_IMM                                     = 0x0
-	BPF_IND                                     = 0x40
-	BPF_JA                                      = 0x0
-	BPF_JEQ                                     = 0x10
-	BPF_JGE                                     = 0x30
-	BPF_JGT                                     = 0x20
-	BPF_JLE                                     = 0xb0
-	BPF_JLT                                     = 0xa0
-	BPF_JMP                                     = 0x5
-	BPF_JMP32                                   = 0x6
-	BPF_JNE                                     = 0x50
-	BPF_JSET                                    = 0x40
-	BPF_JSGE                                    = 0x70
-	BPF_JSGT                                    = 0x60
-	BPF_JSLE                                    = 0xd0
-	BPF_JSLT                                    = 0xc0
-	BPF_K                                       = 0x0
-	BPF_LD                                      = 0x0
-	BPF_LDX                                     = 0x1
-	BPF_LEN                                     = 0x80
-	BPF_LL_OFF                                  = -0x200000
-	BPF_LSH                                     = 0x60
-	BPF_MAJOR_VERSION                           = 0x1
-	BPF_MAXINSNS                                = 0x1000
-	BPF_MEM                                     = 0x60
-	BPF_MEMWORDS                                = 0x10
-	BPF_MINOR_VERSION                           = 0x1
-	BPF_MISC                                    = 0x7
-	BPF_MOD                                     = 0x90
-	BPF_MOV                                     = 0xb0
-	BPF_MSH                                     = 0xa0
-	BPF_MUL                                     = 0x20
-	BPF_NEG                                     = 0x80
-	BPF_NET_OFF                                 = -0x100000
-	BPF_NOEXIST                                 = 0x1
-	BPF_OBJ_NAME_LEN                            = 0x10
-	BPF_OR                                      = 0x40
-	BPF_PSEUDO_CALL                             = 0x1
-	BPF_PSEUDO_MAP_FD                           = 0x1
-	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
-	BPF_TAG_SIZE                                = 0x8
-	BPF_TAX                                     = 0x0
-	BPF_TO_BE                                   = 0x8
-	BPF_TO_LE                                   = 0x0
-	BPF_TXA                                     = 0x80
-	BPF_W                                       = 0x0
-	BPF_X                                       = 0x8
-	BPF_XADD                                    = 0xc0
-	BPF_XOR                                     = 0xa0
-	BRKINT                                      = 0x2
-	BS0                                         = 0x0
-	BS1                                         = 0x2000
-	BSDLY                                       = 0x2000
-	BTRFS_SUPER_MAGIC                           = 0x9123683e
-	BTRFS_TEST_MAGIC                            = 0x73727279
-	CAN_BCM                                     = 0x2
-	CAN_EFF_FLAG                                = 0x80000000
-	CAN_EFF_ID_BITS                             = 0x1d
-	CAN_EFF_MASK                                = 0x1fffffff
-	CAN_ERR_FLAG                                = 0x20000000
-	CAN_ERR_MASK                                = 0x1fffffff
-	CAN_INV_FILTER                              = 0x20000000
-	CAN_ISOTP                                   = 0x6
-	CAN_J1939                                   = 0x7
-	CAN_MAX_DLC                                 = 0x8
-	CAN_MAX_DLEN                                = 0x8
-	CAN_MCNET                                   = 0x5
-	CAN_MTU                                     = 0x10
-	CAN_NPROTO                                  = 0x8
-	CAN_RAW                                     = 0x1
-	CAN_RAW_FILTER_MAX                          = 0x200
-	CAN_RTR_FLAG                                = 0x40000000
-	CAN_SFF_ID_BITS                             = 0xb
-	CAN_SFF_MASK                                = 0x7ff
-	CAN_TP16                                    = 0x3
-	CAN_TP20                                    = 0x4
-	CAP_AUDIT_CONTROL                           = 0x1e
-	CAP_AUDIT_READ                              = 0x25
-	CAP_AUDIT_WRITE                             = 0x1d
-	CAP_BLOCK_SUSPEND                           = 0x24
-	CAP_CHOWN                                   = 0x0
-	CAP_DAC_OVERRIDE                            = 0x1
-	CAP_DAC_READ_SEARCH                         = 0x2
-	CAP_FOWNER                                  = 0x3
-	CAP_FSETID                                  = 0x4
-	CAP_IPC_LOCK                                = 0xe
-	CAP_IPC_OWNER                               = 0xf
-	CAP_KILL                                    = 0x5
-	CAP_LAST_CAP                                = 0x25
-	CAP_LEASE                                   = 0x1c
-	CAP_LINUX_IMMUTABLE                         = 0x9
-	CAP_MAC_ADMIN                               = 0x21
-	CAP_MAC_OVERRIDE                            = 0x20
-	CAP_MKNOD                                   = 0x1b
-	CAP_NET_ADMIN                               = 0xc
-	CAP_NET_BIND_SERVICE                        = 0xa
-	CAP_NET_BROADCAST                           = 0xb
-	CAP_NET_RAW                                 = 0xd
-	CAP_SETFCAP                                 = 0x1f
-	CAP_SETGID                                  = 0x6
-	CAP_SETPCAP                                 = 0x8
-	CAP_SETUID                                  = 0x7
-	CAP_SYSLOG                                  = 0x22
-	CAP_SYS_ADMIN                               = 0x15
-	CAP_SYS_BOOT                                = 0x16
-	CAP_SYS_CHROOT                              = 0x12
-	CAP_SYS_MODULE                              = 0x10
-	CAP_SYS_NICE                                = 0x17
-	CAP_SYS_PACCT                               = 0x14
-	CAP_SYS_PTRACE                              = 0x13
-	CAP_SYS_RAWIO                               = 0x11
-	CAP_SYS_RESOURCE                            = 0x18
-	CAP_SYS_TIME                                = 0x19
-	CAP_SYS_TTY_CONFIG                          = 0x1a
-	CAP_WAKE_ALARM                              = 0x23
-	CBAUD                                       = 0x100f
-	CBAUDEX                                     = 0x1000
-	CFLUSH                                      = 0xf
-	CGROUP2_SUPER_MAGIC                         = 0x63677270
-	CGROUP_SUPER_MAGIC                          = 0x27e0eb
-	CIBAUD                                      = 0x100f0000
-	CLOCAL                                      = 0x800
-	CLOCK_BOOTTIME                              = 0x7
-	CLOCK_BOOTTIME_ALARM                        = 0x9
-	CLOCK_DEFAULT                               = 0x0
-	CLOCK_EXT                                   = 0x1
-	CLOCK_INT                                   = 0x2
-	CLOCK_MONOTONIC                             = 0x1
-	CLOCK_MONOTONIC_COARSE                      = 0x6
-	CLOCK_MONOTONIC_RAW                         = 0x4
-	CLOCK_PROCESS_CPUTIME_ID                    = 0x2
-	CLOCK_REALTIME                              = 0x0
-	CLOCK_REALTIME_ALARM                        = 0x8
-	CLOCK_REALTIME_COARSE                       = 0x5
-	CLOCK_TAI                                   = 0xb
-	CLOCK_THREAD_CPUTIME_ID                     = 0x3
-	CLOCK_TXFROMRX                              = 0x4
-	CLOCK_TXINT                                 = 0x3
-	CLONE_ARGS_SIZE_VER0                        = 0x40
-	CLONE_ARGS_SIZE_VER1                        = 0x50
-	CLONE_CHILD_CLEARTID                        = 0x200000
-	CLONE_CHILD_SETTID                          = 0x1000000
-	CLONE_CLEAR_SIGHAND                         = 0x100000000
-	CLONE_DETACHED                              = 0x400000
-	CLONE_FILES                                 = 0x400
-	CLONE_FS                                    = 0x200
-	CLONE_IO                                    = 0x80000000
-	CLONE_NEWCGROUP                             = 0x2000000
-	CLONE_NEWIPC                                = 0x8000000
-	CLONE_NEWNET                                = 0x40000000
-	CLONE_NEWNS                                 = 0x20000
-	CLONE_NEWPID                                = 0x20000000
-	CLONE_NEWUSER                               = 0x10000000
-	CLONE_NEWUTS                                = 0x4000000
-	CLONE_PARENT                                = 0x8000
-	CLONE_PARENT_SETTID                         = 0x100000
-	CLONE_PIDFD                                 = 0x1000
-	CLONE_PTRACE                                = 0x2000
-	CLONE_SETTLS                                = 0x80000
-	CLONE_SIGHAND                               = 0x800
-	CLONE_SYSVSEM                               = 0x40000
-	CLONE_THREAD                                = 0x10000
-	CLONE_UNTRACED                              = 0x800000
-	CLONE_VFORK                                 = 0x4000
-	CLONE_VM                                    = 0x100
-	CMSPAR                                      = 0x40000000
-	CODA_SUPER_MAGIC                            = 0x73757245
-	CR0                                         = 0x0
-	CR1                                         = 0x200
-	CR2                                         = 0x400
-	CR3                                         = 0x600
-	CRAMFS_MAGIC                                = 0x28cd3d45
-	CRDLY                                       = 0x600
-	CREAD                                       = 0x80
-	CRTSCTS                                     = 0x80000000
-	CRYPTO_MAX_NAME                             = 0x40
-	CRYPTO_MSG_MAX                              = 0x15
-	CRYPTO_NR_MSGTYPES                          = 0x6
-	CRYPTO_REPORT_MAXSIZE                       = 0x160
-	CS5                                         = 0x0
-	CS6                                         = 0x10
-	CS7                                         = 0x20
-	CS8                                         = 0x30
-	CSIGNAL                                     = 0xff
-	CSIZE                                       = 0x30
-	CSTART                                      = 0x11
-	CSTATUS                                     = 0x0
-	CSTOP                                       = 0x13
-	CSTOPB                                      = 0x40
-	CSUSP                                       = 0x1a
-	DAXFS_MAGIC                                 = 0x64646178
-	DEBUGFS_MAGIC                               = 0x64626720
-	DEVLINK_CMD_ESWITCH_MODE_GET                = 0x1d
-	DEVLINK_CMD_ESWITCH_MODE_SET                = 0x1e
-	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
-	DEVLINK_GENL_NAME                           = "devlink"
-	DEVLINK_GENL_VERSION                        = 0x1
-	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
-	DEVPTS_SUPER_MAGIC                          = 0x1cd1
-	DMA_BUF_MAGIC                               = 0x444d4142
-	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                                     = 0x200
-	ECHOE                                       = 0x10
-	ECHOK                                       = 0x20
-	ECHOKE                                      = 0x800
-	ECHONL                                      = 0x40
-	ECHOPRT                                     = 0x400
-	ECRYPTFS_SUPER_MAGIC                        = 0xf15f
-	EFD_CLOEXEC                                 = 0x400000
-	EFD_NONBLOCK                                = 0x4000
-	EFD_SEMAPHORE                               = 0x1
-	EFIVARFS_MAGIC                              = 0xde5e81e4
-	EFS_SUPER_MAGIC                             = 0x414a53
-	EMT_TAGOVF                                  = 0x1
-	ENCODING_DEFAULT                            = 0x0
-	ENCODING_FM_MARK                            = 0x3
-	ENCODING_FM_SPACE                           = 0x4
-	ENCODING_MANCHESTER                         = 0x5
-	ENCODING_NRZ                                = 0x1
-	ENCODING_NRZI                               = 0x2
-	EPOLLERR                                    = 0x8
-	EPOLLET                                     = 0x80000000
-	EPOLLEXCLUSIVE                              = 0x10000000
-	EPOLLHUP                                    = 0x10
-	EPOLLIN                                     = 0x1
-	EPOLLMSG                                    = 0x400
-	EPOLLONESHOT                                = 0x40000000
-	EPOLLOUT                                    = 0x4
-	EPOLLPRI                                    = 0x2
-	EPOLLRDBAND                                 = 0x80
-	EPOLLRDHUP                                  = 0x2000
-	EPOLLRDNORM                                 = 0x40
-	EPOLLWAKEUP                                 = 0x20000000
-	EPOLLWRBAND                                 = 0x200
-	EPOLLWRNORM                                 = 0x100
-	EPOLL_CLOEXEC                               = 0x400000
-	EPOLL_CTL_ADD                               = 0x1
-	EPOLL_CTL_DEL                               = 0x2
-	EPOLL_CTL_MOD                               = 0x3
-	EROFS_SUPER_MAGIC_V1                        = 0xe0f5e1e2
-	ETH_P_1588                                  = 0x88f7
-	ETH_P_8021AD                                = 0x88a8
-	ETH_P_8021AH                                = 0x88e7
-	ETH_P_8021Q                                 = 0x8100
-	ETH_P_80221                                 = 0x8917
-	ETH_P_802_2                                 = 0x4
-	ETH_P_802_3                                 = 0x1
-	ETH_P_802_3_MIN                             = 0x600
-	ETH_P_802_EX1                               = 0x88b5
-	ETH_P_AARP                                  = 0x80f3
-	ETH_P_AF_IUCV                               = 0xfbfb
-	ETH_P_ALL                                   = 0x3
-	ETH_P_AOE                                   = 0x88a2
-	ETH_P_ARCNET                                = 0x1a
-	ETH_P_ARP                                   = 0x806
-	ETH_P_ATALK                                 = 0x809b
-	ETH_P_ATMFATE                               = 0x8884
-	ETH_P_ATMMPOA                               = 0x884c
-	ETH_P_AX25                                  = 0x2
-	ETH_P_BATMAN                                = 0x4305
-	ETH_P_BPQ                                   = 0x8ff
-	ETH_P_CAIF                                  = 0xf7
-	ETH_P_CAN                                   = 0xc
-	ETH_P_CANFD                                 = 0xd
-	ETH_P_CONTROL                               = 0x16
-	ETH_P_CUST                                  = 0x6006
-	ETH_P_DDCMP                                 = 0x6
-	ETH_P_DEC                                   = 0x6000
-	ETH_P_DIAG                                  = 0x6005
-	ETH_P_DNA_DL                                = 0x6001
-	ETH_P_DNA_RC                                = 0x6002
-	ETH_P_DNA_RT                                = 0x6003
-	ETH_P_DSA                                   = 0x1b
-	ETH_P_DSA_8021Q                             = 0xdadb
-	ETH_P_ECONET                                = 0x18
-	ETH_P_EDSA                                  = 0xdada
-	ETH_P_ERSPAN                                = 0x88be
-	ETH_P_ERSPAN2                               = 0x22eb
-	ETH_P_FCOE                                  = 0x8906
-	ETH_P_FIP                                   = 0x8914
-	ETH_P_HDLC                                  = 0x19
-	ETH_P_HSR                                   = 0x892f
-	ETH_P_IBOE                                  = 0x8915
-	ETH_P_IEEE802154                            = 0xf6
-	ETH_P_IEEEPUP                               = 0xa00
-	ETH_P_IEEEPUPAT                             = 0xa01
-	ETH_P_IFE                                   = 0xed3e
-	ETH_P_IP                                    = 0x800
-	ETH_P_IPV6                                  = 0x86dd
-	ETH_P_IPX                                   = 0x8137
-	ETH_P_IRDA                                  = 0x17
-	ETH_P_LAT                                   = 0x6004
-	ETH_P_LINK_CTL                              = 0x886c
-	ETH_P_LLDP                                  = 0x88cc
-	ETH_P_LOCALTALK                             = 0x9
-	ETH_P_LOOP                                  = 0x60
-	ETH_P_LOOPBACK                              = 0x9000
-	ETH_P_MACSEC                                = 0x88e5
-	ETH_P_MAP                                   = 0xf9
-	ETH_P_MOBITEX                               = 0x15
-	ETH_P_MPLS_MC                               = 0x8848
-	ETH_P_MPLS_UC                               = 0x8847
-	ETH_P_MVRP                                  = 0x88f5
-	ETH_P_NCSI                                  = 0x88f8
-	ETH_P_NSH                                   = 0x894f
-	ETH_P_PAE                                   = 0x888e
-	ETH_P_PAUSE                                 = 0x8808
-	ETH_P_PHONET                                = 0xf5
-	ETH_P_PPPTALK                               = 0x10
-	ETH_P_PPP_DISC                              = 0x8863
-	ETH_P_PPP_MP                                = 0x8
-	ETH_P_PPP_SES                               = 0x8864
-	ETH_P_PREAUTH                               = 0x88c7
-	ETH_P_PRP                                   = 0x88fb
-	ETH_P_PUP                                   = 0x200
-	ETH_P_PUPAT                                 = 0x201
-	ETH_P_QINQ1                                 = 0x9100
-	ETH_P_QINQ2                                 = 0x9200
-	ETH_P_QINQ3                                 = 0x9300
-	ETH_P_RARP                                  = 0x8035
-	ETH_P_SCA                                   = 0x6007
-	ETH_P_SLOW                                  = 0x8809
-	ETH_P_SNAP                                  = 0x5
-	ETH_P_TDLS                                  = 0x890d
-	ETH_P_TEB                                   = 0x6558
-	ETH_P_TIPC                                  = 0x88ca
-	ETH_P_TRAILER                               = 0x1c
-	ETH_P_TR_802_2                              = 0x11
-	ETH_P_TSN                                   = 0x22f0
-	ETH_P_WAN_PPP                               = 0x7
-	ETH_P_WCCP                                  = 0x883e
-	ETH_P_X25                                   = 0x805
-	ETH_P_XDSA                                  = 0xf8
-	EXABYTE_ENABLE_NEST                         = 0xf0
-	EXT2_SUPER_MAGIC                            = 0xef53
-	EXT3_SUPER_MAGIC                            = 0xef53
-	EXT4_SUPER_MAGIC                            = 0xef53
-	EXTA                                        = 0xe
-	EXTB                                        = 0xf
-	EXTPROC                                     = 0x10000
-	F2FS_SUPER_MAGIC                            = 0xf2f52010
-	FALLOC_FL_COLLAPSE_RANGE                    = 0x8
-	FALLOC_FL_INSERT_RANGE                      = 0x20
-	FALLOC_FL_KEEP_SIZE                         = 0x1
-	FALLOC_FL_NO_HIDE_STALE                     = 0x4
-	FALLOC_FL_PUNCH_HOLE                        = 0x2
-	FALLOC_FL_UNSHARE_RANGE                     = 0x40
-	FALLOC_FL_ZERO_RANGE                        = 0x10
-	FANOTIFY_METADATA_VERSION                   = 0x3
-	FAN_ACCESS                                  = 0x1
-	FAN_ACCESS_PERM                             = 0x20000
-	FAN_ALLOW                                   = 0x1
-	FAN_ALL_CLASS_BITS                          = 0xc
-	FAN_ALL_EVENTS                              = 0x3b
-	FAN_ALL_INIT_FLAGS                          = 0x3f
-	FAN_ALL_MARK_FLAGS                          = 0xff
-	FAN_ALL_OUTGOING_EVENTS                     = 0x3403b
-	FAN_ALL_PERM_EVENTS                         = 0x30000
-	FAN_ATTRIB                                  = 0x4
-	FAN_AUDIT                                   = 0x10
-	FAN_CLASS_CONTENT                           = 0x4
-	FAN_CLASS_NOTIF                             = 0x0
-	FAN_CLASS_PRE_CONTENT                       = 0x8
-	FAN_CLOEXEC                                 = 0x1
-	FAN_CLOSE                                   = 0x18
-	FAN_CLOSE_NOWRITE                           = 0x10
-	FAN_CLOSE_WRITE                             = 0x8
-	FAN_CREATE                                  = 0x100
-	FAN_DELETE                                  = 0x200
-	FAN_DELETE_SELF                             = 0x400
-	FAN_DENY                                    = 0x2
-	FAN_ENABLE_AUDIT                            = 0x40
-	FAN_EVENT_INFO_TYPE_FID                     = 0x1
-	FAN_EVENT_METADATA_LEN                      = 0x18
-	FAN_EVENT_ON_CHILD                          = 0x8000000
-	FAN_MARK_ADD                                = 0x1
-	FAN_MARK_DONT_FOLLOW                        = 0x4
-	FAN_MARK_FILESYSTEM                         = 0x100
-	FAN_MARK_FLUSH                              = 0x80
-	FAN_MARK_IGNORED_MASK                       = 0x20
-	FAN_MARK_IGNORED_SURV_MODIFY                = 0x40
-	FAN_MARK_INODE                              = 0x0
-	FAN_MARK_MOUNT                              = 0x10
-	FAN_MARK_ONLYDIR                            = 0x8
-	FAN_MARK_REMOVE                             = 0x2
-	FAN_MODIFY                                  = 0x2
-	FAN_MOVE                                    = 0xc0
-	FAN_MOVED_FROM                              = 0x40
-	FAN_MOVED_TO                                = 0x80
-	FAN_MOVE_SELF                               = 0x800
-	FAN_NOFD                                    = -0x1
-	FAN_NONBLOCK                                = 0x2
-	FAN_ONDIR                                   = 0x40000000
-	FAN_OPEN                                    = 0x20
-	FAN_OPEN_EXEC                               = 0x1000
-	FAN_OPEN_EXEC_PERM                          = 0x40000
-	FAN_OPEN_PERM                               = 0x10000
-	FAN_Q_OVERFLOW                              = 0x4000
-	FAN_REPORT_FID                              = 0x200
-	FAN_REPORT_TID                              = 0x100
-	FAN_UNLIMITED_MARKS                         = 0x20
-	FAN_UNLIMITED_QUEUE                         = 0x10
-	FD_CLOEXEC                                  = 0x1
-	FD_SETSIZE                                  = 0x400
-	FF0                                         = 0x0
-	FF1                                         = 0x8000
-	FFDLY                                       = 0x8000
-	FLUSHO                                      = 0x1000
-	FSCRYPT_KEY_DESCRIPTOR_SIZE                 = 0x8
-	FSCRYPT_KEY_DESC_PREFIX                     = "fscrypt:"
-	FSCRYPT_KEY_DESC_PREFIX_SIZE                = 0x8
-	FSCRYPT_KEY_IDENTIFIER_SIZE                 = 0x10
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY  = 0x1
-	FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
-	FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR            = 0x1
-	FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER            = 0x2
-	FSCRYPT_KEY_STATUS_ABSENT                   = 0x1
-	FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF       = 0x1
-	FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED     = 0x3
-	FSCRYPT_KEY_STATUS_PRESENT                  = 0x2
-	FSCRYPT_MAX_KEY_SIZE                        = 0x40
-	FSCRYPT_MODE_ADIANTUM                       = 0x9
-	FSCRYPT_MODE_AES_128_CBC                    = 0x5
-	FSCRYPT_MODE_AES_128_CTS                    = 0x6
-	FSCRYPT_MODE_AES_256_CTS                    = 0x4
-	FSCRYPT_MODE_AES_256_XTS                    = 0x1
-	FSCRYPT_POLICY_FLAGS_PAD_16                 = 0x2
-	FSCRYPT_POLICY_FLAGS_PAD_32                 = 0x3
-	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_64          = 0x8
-	FSCRYPT_POLICY_V1                           = 0x0
-	FSCRYPT_POLICY_V2                           = 0x2
-	FS_ENCRYPTION_MODE_ADIANTUM                 = 0x9
-	FS_ENCRYPTION_MODE_AES_128_CBC              = 0x5
-	FS_ENCRYPTION_MODE_AES_128_CTS              = 0x6
-	FS_ENCRYPTION_MODE_AES_256_CBC              = 0x3
-	FS_ENCRYPTION_MODE_AES_256_CTS              = 0x4
-	FS_ENCRYPTION_MODE_AES_256_GCM              = 0x2
-	FS_ENCRYPTION_MODE_AES_256_XTS              = 0x1
-	FS_ENCRYPTION_MODE_INVALID                  = 0x0
-	FS_ENCRYPTION_MODE_SPECK128_256_CTS         = 0x8
-	FS_ENCRYPTION_MODE_SPECK128_256_XTS         = 0x7
-	FS_IOC_ADD_ENCRYPTION_KEY                   = 0xc0506617
-	FS_IOC_GET_ENCRYPTION_KEY_STATUS            = 0xc080661a
-	FS_IOC_GET_ENCRYPTION_POLICY                = 0x800c6615
-	FS_IOC_GET_ENCRYPTION_POLICY_EX             = 0xc0096616
-	FS_IOC_GET_ENCRYPTION_PWSALT                = 0x80106614
-	FS_IOC_REMOVE_ENCRYPTION_KEY                = 0xc0406618
-	FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS      = 0xc0406619
-	FS_IOC_SET_ENCRYPTION_POLICY                = 0x400c6613
-	FS_KEY_DESCRIPTOR_SIZE                      = 0x8
-	FS_KEY_DESC_PREFIX                          = "fscrypt:"
-	FS_KEY_DESC_PREFIX_SIZE                     = 0x8
-	FS_MAX_KEY_SIZE                             = 0x40
-	FS_POLICY_FLAGS_PAD_16                      = 0x2
-	FS_POLICY_FLAGS_PAD_32                      = 0x3
-	FS_POLICY_FLAGS_PAD_4                       = 0x0
-	FS_POLICY_FLAGS_PAD_8                       = 0x1
-	FS_POLICY_FLAGS_PAD_MASK                    = 0x3
-	FS_POLICY_FLAGS_VALID                       = 0xf
-	FUTEXFS_SUPER_MAGIC                         = 0xbad1dea
-	F_ADD_SEALS                                 = 0x409
-	F_DUPFD                                     = 0x0
-	F_DUPFD_CLOEXEC                             = 0x406
-	F_EXLCK                                     = 0x4
-	F_GETFD                                     = 0x1
-	F_GETFL                                     = 0x3
-	F_GETLEASE                                  = 0x401
-	F_GETLK                                     = 0x7
-	F_GETLK64                                   = 0x7
-	F_GETOWN                                    = 0x5
-	F_GETOWN_EX                                 = 0x10
-	F_GETPIPE_SZ                                = 0x408
-	F_GETSIG                                    = 0xb
-	F_GET_FILE_RW_HINT                          = 0x40d
-	F_GET_RW_HINT                               = 0x40b
-	F_GET_SEALS                                 = 0x40a
-	F_LOCK                                      = 0x1
-	F_NOTIFY                                    = 0x402
-	F_OFD_GETLK                                 = 0x24
-	F_OFD_SETLK                                 = 0x25
-	F_OFD_SETLKW                                = 0x26
-	F_OK                                        = 0x0
-	F_RDLCK                                     = 0x1
-	F_SEAL_FUTURE_WRITE                         = 0x10
-	F_SEAL_GROW                                 = 0x4
-	F_SEAL_SEAL                                 = 0x1
-	F_SEAL_SHRINK                               = 0x2
-	F_SEAL_WRITE                                = 0x8
-	F_SETFD                                     = 0x2
-	F_SETFL                                     = 0x4
-	F_SETLEASE                                  = 0x400
-	F_SETLK                                     = 0x8
-	F_SETLK64                                   = 0x8
-	F_SETLKW                                    = 0x9
-	F_SETLKW64                                  = 0x9
-	F_SETOWN                                    = 0x6
-	F_SETOWN_EX                                 = 0xf
-	F_SETPIPE_SZ                                = 0x407
-	F_SETSIG                                    = 0xa
-	F_SET_FILE_RW_HINT                          = 0x40e
-	F_SET_RW_HINT                               = 0x40c
-	F_SHLCK                                     = 0x8
-	F_TEST                                      = 0x3
-	F_TLOCK                                     = 0x2
-	F_ULOCK                                     = 0x0
-	F_UNLCK                                     = 0x3
-	F_WRLCK                                     = 0x2
-	GENL_ADMIN_PERM                             = 0x1
-	GENL_CMD_CAP_DO                             = 0x2
-	GENL_CMD_CAP_DUMP                           = 0x4
-	GENL_CMD_CAP_HASPOL                         = 0x8
-	GENL_HDRLEN                                 = 0x4
-	GENL_ID_CTRL                                = 0x10
-	GENL_ID_PMCRAID                             = 0x12
-	GENL_ID_VFS_DQUOT                           = 0x11
-	GENL_MAX_ID                                 = 0x3ff
-	GENL_MIN_ID                                 = 0x10
-	GENL_NAMSIZ                                 = 0x10
-	GENL_START_ALLOC                            = 0x13
-	GENL_UNS_ADMIN_PERM                         = 0x10
-	GRND_NONBLOCK                               = 0x1
-	GRND_RANDOM                                 = 0x2
-	HDIO_DRIVE_CMD                              = 0x31f
-	HDIO_DRIVE_CMD_AEB                          = 0x31e
-	HDIO_DRIVE_CMD_HDR_SIZE                     = 0x4
-	HDIO_DRIVE_HOB_HDR_SIZE                     = 0x8
-	HDIO_DRIVE_RESET                            = 0x31c
-	HDIO_DRIVE_TASK                             = 0x31e
-	HDIO_DRIVE_TASKFILE                         = 0x31d
-	HDIO_DRIVE_TASK_HDR_SIZE                    = 0x8
-	HDIO_GETGEO                                 = 0x301
-	HDIO_GET_32BIT                              = 0x309
-	HDIO_GET_ACOUSTIC                           = 0x30f
-	HDIO_GET_ADDRESS                            = 0x310
-	HDIO_GET_BUSSTATE                           = 0x31a
-	HDIO_GET_DMA                                = 0x30b
-	HDIO_GET_IDENTITY                           = 0x30d
-	HDIO_GET_KEEPSETTINGS                       = 0x308
-	HDIO_GET_MULTCOUNT                          = 0x304
-	HDIO_GET_NICE                               = 0x30c
-	HDIO_GET_NOWERR                             = 0x30a
-	HDIO_GET_QDMA                               = 0x305
-	HDIO_GET_UNMASKINTR                         = 0x302
-	HDIO_GET_WCACHE                             = 0x30e
-	HDIO_OBSOLETE_IDENTITY                      = 0x307
-	HDIO_SCAN_HWIF                              = 0x328
-	HDIO_SET_32BIT                              = 0x324
-	HDIO_SET_ACOUSTIC                           = 0x32c
-	HDIO_SET_ADDRESS                            = 0x32f
-	HDIO_SET_BUSSTATE                           = 0x32d
-	HDIO_SET_DMA                                = 0x326
-	HDIO_SET_KEEPSETTINGS                       = 0x323
-	HDIO_SET_MULTCOUNT                          = 0x321
-	HDIO_SET_NICE                               = 0x329
-	HDIO_SET_NOWERR                             = 0x325
-	HDIO_SET_PIO_MODE                           = 0x327
-	HDIO_SET_QDMA                               = 0x32e
-	HDIO_SET_UNMASKINTR                         = 0x322
-	HDIO_SET_WCACHE                             = 0x32b
-	HDIO_SET_XFER                               = 0x306
-	HDIO_TRISTATE_HWIF                          = 0x31b
-	HDIO_UNREGISTER_HWIF                        = 0x32a
-	HOSTFS_SUPER_MAGIC                          = 0xc0ffee
-	HPFS_SUPER_MAGIC                            = 0xf995e849
-	HUGETLBFS_MAGIC                             = 0x958458f6
-	HUPCL                                       = 0x400
-	IBSHIFT                                     = 0x10
-	ICANON                                      = 0x2
-	ICMPV6_FILTER                               = 0x1
-	ICRNL                                       = 0x100
-	IEXTEN                                      = 0x8000
-	IFA_F_DADFAILED                             = 0x8
-	IFA_F_DEPRECATED                            = 0x20
-	IFA_F_HOMEADDRESS                           = 0x10
-	IFA_F_MANAGETEMPADDR                        = 0x100
-	IFA_F_MCAUTOJOIN                            = 0x400
-	IFA_F_NODAD                                 = 0x2
-	IFA_F_NOPREFIXROUTE                         = 0x200
-	IFA_F_OPTIMISTIC                            = 0x4
-	IFA_F_PERMANENT                             = 0x80
-	IFA_F_SECONDARY                             = 0x1
-	IFA_F_STABLE_PRIVACY                        = 0x800
-	IFA_F_TEMPORARY                             = 0x1
-	IFA_F_TENTATIVE                             = 0x40
-	IFA_MAX                                     = 0xa
-	IFF_ALLMULTI                                = 0x200
-	IFF_ATTACH_QUEUE                            = 0x200
-	IFF_AUTOMEDIA                               = 0x4000
-	IFF_BROADCAST                               = 0x2
-	IFF_DEBUG                                   = 0x4
-	IFF_DETACH_QUEUE                            = 0x400
-	IFF_DORMANT                                 = 0x20000
-	IFF_DYNAMIC                                 = 0x8000
-	IFF_ECHO                                    = 0x40000
-	IFF_LOOPBACK                                = 0x8
-	IFF_LOWER_UP                                = 0x10000
-	IFF_MASTER                                  = 0x400
-	IFF_MULTICAST                               = 0x1000
-	IFF_MULTI_QUEUE                             = 0x100
-	IFF_NAPI                                    = 0x10
-	IFF_NAPI_FRAGS                              = 0x20
-	IFF_NOARP                                   = 0x80
-	IFF_NOFILTER                                = 0x1000
-	IFF_NOTRAILERS                              = 0x20
-	IFF_NO_PI                                   = 0x1000
-	IFF_ONE_QUEUE                               = 0x2000
-	IFF_PERSIST                                 = 0x800
-	IFF_POINTOPOINT                             = 0x10
-	IFF_PORTSEL                                 = 0x2000
-	IFF_PROMISC                                 = 0x100
-	IFF_RUNNING                                 = 0x40
-	IFF_SLAVE                                   = 0x800
-	IFF_TAP                                     = 0x2
-	IFF_TUN                                     = 0x1
-	IFF_TUN_EXCL                                = 0x8000
-	IFF_UP                                      = 0x1
-	IFF_VNET_HDR                                = 0x4000
-	IFF_VOLATILE                                = 0x70c5a
-	IFNAMSIZ                                    = 0x10
-	IGNBRK                                      = 0x1
-	IGNCR                                       = 0x80
-	IGNPAR                                      = 0x4
-	IMAXBEL                                     = 0x2000
-	INLCR                                       = 0x40
-	INPCK                                       = 0x10
-	IN_ACCESS                                   = 0x1
-	IN_ALL_EVENTS                               = 0xfff
-	IN_ATTRIB                                   = 0x4
-	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_CLOEXEC                                  = 0x400000
-	IN_CLOSE                                    = 0x18
-	IN_CLOSE_NOWRITE                            = 0x10
-	IN_CLOSE_WRITE                              = 0x8
-	IN_CREATE                                   = 0x100
-	IN_DELETE                                   = 0x200
-	IN_DELETE_SELF                              = 0x400
-	IN_DONT_FOLLOW                              = 0x2000000
-	IN_EXCL_UNLINK                              = 0x4000000
-	IN_IGNORED                                  = 0x8000
-	IN_ISDIR                                    = 0x40000000
-	IN_LOOPBACKNET                              = 0x7f
-	IN_MASK_ADD                                 = 0x20000000
-	IN_MASK_CREATE                              = 0x10000000
-	IN_MODIFY                                   = 0x2
-	IN_MOVE                                     = 0xc0
-	IN_MOVED_FROM                               = 0x40
-	IN_MOVED_TO                                 = 0x80
-	IN_MOVE_SELF                                = 0x800
-	IN_NONBLOCK                                 = 0x4000
-	IN_ONESHOT                                  = 0x80000000
-	IN_ONLYDIR                                  = 0x1000000
-	IN_OPEN                                     = 0x20
-	IN_Q_OVERFLOW                               = 0x4000
-	IN_UNMOUNT                                  = 0x2000
-	IOCTL_VM_SOCKETS_GET_LOCAL_CID              = 0x200007b9
-	IPPROTO_AH                                  = 0x33
-	IPPROTO_BEETPH                              = 0x5e
-	IPPROTO_COMP                                = 0x6c
-	IPPROTO_DCCP                                = 0x21
-	IPPROTO_DSTOPTS                             = 0x3c
-	IPPROTO_EGP                                 = 0x8
-	IPPROTO_ENCAP                               = 0x62
-	IPPROTO_ESP                                 = 0x32
-	IPPROTO_FRAGMENT                            = 0x2c
-	IPPROTO_GRE                                 = 0x2f
-	IPPROTO_HOPOPTS                             = 0x0
-	IPPROTO_ICMP                                = 0x1
-	IPPROTO_ICMPV6                              = 0x3a
-	IPPROTO_IDP                                 = 0x16
-	IPPROTO_IGMP                                = 0x2
-	IPPROTO_IP                                  = 0x0
-	IPPROTO_IPIP                                = 0x4
-	IPPROTO_IPV6                                = 0x29
-	IPPROTO_MH                                  = 0x87
-	IPPROTO_MPLS                                = 0x89
-	IPPROTO_MTP                                 = 0x5c
-	IPPROTO_NONE                                = 0x3b
-	IPPROTO_PIM                                 = 0x67
-	IPPROTO_PUP                                 = 0xc
-	IPPROTO_RAW                                 = 0xff
-	IPPROTO_ROUTING                             = 0x2b
-	IPPROTO_RSVP                                = 0x2e
-	IPPROTO_SCTP                                = 0x84
-	IPPROTO_TCP                                 = 0x6
-	IPPROTO_TP                                  = 0x1d
-	IPPROTO_UDP                                 = 0x11
-	IPPROTO_UDPLITE                             = 0x88
-	IPV6_2292DSTOPTS                            = 0x4
-	IPV6_2292HOPLIMIT                           = 0x8
-	IPV6_2292HOPOPTS                            = 0x3
-	IPV6_2292PKTINFO                            = 0x2
-	IPV6_2292PKTOPTIONS                         = 0x6
-	IPV6_2292RTHDR                              = 0x5
-	IPV6_ADDRFORM                               = 0x1
-	IPV6_ADDR_PREFERENCES                       = 0x48
-	IPV6_ADD_MEMBERSHIP                         = 0x14
-	IPV6_AUTHHDR                                = 0xa
-	IPV6_AUTOFLOWLABEL                          = 0x46
-	IPV6_CHECKSUM                               = 0x7
-	IPV6_DONTFRAG                               = 0x3e
-	IPV6_DROP_MEMBERSHIP                        = 0x15
-	IPV6_DSTOPTS                                = 0x3b
-	IPV6_FREEBIND                               = 0x4e
-	IPV6_HDRINCL                                = 0x24
-	IPV6_HOPLIMIT                               = 0x34
-	IPV6_HOPOPTS                                = 0x36
-	IPV6_IPSEC_POLICY                           = 0x22
-	IPV6_JOIN_ANYCAST                           = 0x1b
-	IPV6_JOIN_GROUP                             = 0x14
-	IPV6_LEAVE_ANYCAST                          = 0x1c
-	IPV6_LEAVE_GROUP                            = 0x15
-	IPV6_MINHOPCOUNT                            = 0x49
-	IPV6_MTU                                    = 0x18
-	IPV6_MTU_DISCOVER                           = 0x17
-	IPV6_MULTICAST_ALL                          = 0x1d
-	IPV6_MULTICAST_HOPS                         = 0x12
-	IPV6_MULTICAST_IF                           = 0x11
-	IPV6_MULTICAST_LOOP                         = 0x13
-	IPV6_NEXTHOP                                = 0x9
-	IPV6_ORIGDSTADDR                            = 0x4a
-	IPV6_PATHMTU                                = 0x3d
-	IPV6_PKTINFO                                = 0x32
-	IPV6_PMTUDISC_DO                            = 0x2
-	IPV6_PMTUDISC_DONT                          = 0x0
-	IPV6_PMTUDISC_INTERFACE                     = 0x4
-	IPV6_PMTUDISC_OMIT                          = 0x5
-	IPV6_PMTUDISC_PROBE                         = 0x3
-	IPV6_PMTUDISC_WANT                          = 0x1
-	IPV6_RECVDSTOPTS                            = 0x3a
-	IPV6_RECVERR                                = 0x19
-	IPV6_RECVFRAGSIZE                           = 0x4d
-	IPV6_RECVHOPLIMIT                           = 0x33
-	IPV6_RECVHOPOPTS                            = 0x35
-	IPV6_RECVORIGDSTADDR                        = 0x4a
-	IPV6_RECVPATHMTU                            = 0x3c
-	IPV6_RECVPKTINFO                            = 0x31
-	IPV6_RECVRTHDR                              = 0x38
-	IPV6_RECVTCLASS                             = 0x42
-	IPV6_ROUTER_ALERT                           = 0x16
-	IPV6_ROUTER_ALERT_ISOLATE                   = 0x1e
-	IPV6_RTHDR                                  = 0x39
-	IPV6_RTHDRDSTOPTS                           = 0x37
-	IPV6_RTHDR_LOOSE                            = 0x0
-	IPV6_RTHDR_STRICT                           = 0x1
-	IPV6_RTHDR_TYPE_0                           = 0x0
-	IPV6_RXDSTOPTS                              = 0x3b
-	IPV6_RXHOPOPTS                              = 0x36
-	IPV6_TCLASS                                 = 0x43
-	IPV6_TRANSPARENT                            = 0x4b
-	IPV6_UNICAST_HOPS                           = 0x10
-	IPV6_UNICAST_IF                             = 0x4c
-	IPV6_V6ONLY                                 = 0x1a
-	IPV6_XFRM_POLICY                            = 0x23
-	IP_ADD_MEMBERSHIP                           = 0x23
-	IP_ADD_SOURCE_MEMBERSHIP                    = 0x27
-	IP_BIND_ADDRESS_NO_PORT                     = 0x18
-	IP_BLOCK_SOURCE                             = 0x26
-	IP_CHECKSUM                                 = 0x17
-	IP_DEFAULT_MULTICAST_LOOP                   = 0x1
-	IP_DEFAULT_MULTICAST_TTL                    = 0x1
-	IP_DF                                       = 0x4000
-	IP_DROP_MEMBERSHIP                          = 0x24
-	IP_DROP_SOURCE_MEMBERSHIP                   = 0x28
-	IP_FREEBIND                                 = 0xf
-	IP_HDRINCL                                  = 0x3
-	IP_IPSEC_POLICY                             = 0x10
-	IP_MAXPACKET                                = 0xffff
-	IP_MAX_MEMBERSHIPS                          = 0x14
-	IP_MF                                       = 0x2000
-	IP_MINTTL                                   = 0x15
-	IP_MSFILTER                                 = 0x29
-	IP_MSS                                      = 0x240
-	IP_MTU                                      = 0xe
-	IP_MTU_DISCOVER                             = 0xa
-	IP_MULTICAST_ALL                            = 0x31
-	IP_MULTICAST_IF                             = 0x20
-	IP_MULTICAST_LOOP                           = 0x22
-	IP_MULTICAST_TTL                            = 0x21
-	IP_NODEFRAG                                 = 0x16
-	IP_OFFMASK                                  = 0x1fff
-	IP_OPTIONS                                  = 0x4
-	IP_ORIGDSTADDR                              = 0x14
-	IP_PASSSEC                                  = 0x12
-	IP_PKTINFO                                  = 0x8
-	IP_PKTOPTIONS                               = 0x9
-	IP_PMTUDISC                                 = 0xa
-	IP_PMTUDISC_DO                              = 0x2
-	IP_PMTUDISC_DONT                            = 0x0
-	IP_PMTUDISC_INTERFACE                       = 0x4
-	IP_PMTUDISC_OMIT                            = 0x5
-	IP_PMTUDISC_PROBE                           = 0x3
-	IP_PMTUDISC_WANT                            = 0x1
-	IP_RECVERR                                  = 0xb
-	IP_RECVFRAGSIZE                             = 0x19
-	IP_RECVOPTS                                 = 0x6
-	IP_RECVORIGDSTADDR                          = 0x14
-	IP_RECVRETOPTS                              = 0x7
-	IP_RECVTOS                                  = 0xd
-	IP_RECVTTL                                  = 0xc
-	IP_RETOPTS                                  = 0x7
-	IP_RF                                       = 0x8000
-	IP_ROUTER_ALERT                             = 0x5
-	IP_TOS                                      = 0x1
-	IP_TRANSPARENT                              = 0x13
-	IP_TTL                                      = 0x2
-	IP_UNBLOCK_SOURCE                           = 0x25
-	IP_UNICAST_IF                               = 0x32
-	IP_XFRM_POLICY                              = 0x11
-	ISIG                                        = 0x1
-	ISOFS_SUPER_MAGIC                           = 0x9660
-	ISTRIP                                      = 0x20
-	IUCLC                                       = 0x200
-	IUTF8                                       = 0x4000
-	IXANY                                       = 0x800
-	IXOFF                                       = 0x1000
-	IXON                                        = 0x400
-	JFFS2_SUPER_MAGIC                           = 0x72b6
-	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_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_S390                             = 0x160000
-	KEXEC_ARCH_SH                               = 0x2a0000
-	KEXEC_ARCH_X86_64                           = 0x3e0000
-	KEXEC_FILE_NO_INITRAMFS                     = 0x4
-	KEXEC_FILE_ON_CRASH                         = 0x2
-	KEXEC_FILE_UNLOAD                           = 0x1
-	KEXEC_ON_CRASH                              = 0x1
-	KEXEC_PRESERVE_CONTEXT                      = 0x2
-	KEXEC_SEGMENT_MAX                           = 0x10
-	KEYCTL_ASSUME_AUTHORITY                     = 0x10
-	KEYCTL_CAPABILITIES                         = 0x1f
-	KEYCTL_CAPS0_BIG_KEY                        = 0x10
-	KEYCTL_CAPS0_CAPABILITIES                   = 0x1
-	KEYCTL_CAPS0_DIFFIE_HELLMAN                 = 0x4
-	KEYCTL_CAPS0_INVALIDATE                     = 0x20
-	KEYCTL_CAPS0_MOVE                           = 0x80
-	KEYCTL_CAPS0_PERSISTENT_KEYRINGS            = 0x2
-	KEYCTL_CAPS0_PUBLIC_KEY                     = 0x8
-	KEYCTL_CAPS0_RESTRICT_KEYRING               = 0x40
-	KEYCTL_CAPS1_NS_KEYRING_NAME                = 0x1
-	KEYCTL_CAPS1_NS_KEY_TAG                     = 0x2
-	KEYCTL_CHOWN                                = 0x4
-	KEYCTL_CLEAR                                = 0x7
-	KEYCTL_DESCRIBE                             = 0x6
-	KEYCTL_DH_COMPUTE                           = 0x17
-	KEYCTL_GET_KEYRING_ID                       = 0x0
-	KEYCTL_GET_PERSISTENT                       = 0x16
-	KEYCTL_GET_SECURITY                         = 0x11
-	KEYCTL_INSTANTIATE                          = 0xc
-	KEYCTL_INSTANTIATE_IOV                      = 0x14
-	KEYCTL_INVALIDATE                           = 0x15
-	KEYCTL_JOIN_SESSION_KEYRING                 = 0x1
-	KEYCTL_LINK                                 = 0x8
-	KEYCTL_MOVE                                 = 0x1e
-	KEYCTL_MOVE_EXCL                            = 0x1
-	KEYCTL_NEGATE                               = 0xd
-	KEYCTL_PKEY_DECRYPT                         = 0x1a
-	KEYCTL_PKEY_ENCRYPT                         = 0x19
-	KEYCTL_PKEY_QUERY                           = 0x18
-	KEYCTL_PKEY_SIGN                            = 0x1b
-	KEYCTL_PKEY_VERIFY                          = 0x1c
-	KEYCTL_READ                                 = 0xb
-	KEYCTL_REJECT                               = 0x13
-	KEYCTL_RESTRICT_KEYRING                     = 0x1d
-	KEYCTL_REVOKE                               = 0x3
-	KEYCTL_SEARCH                               = 0xa
-	KEYCTL_SESSION_TO_PARENT                    = 0x12
-	KEYCTL_SETPERM                              = 0x5
-	KEYCTL_SET_REQKEY_KEYRING                   = 0xe
-	KEYCTL_SET_TIMEOUT                          = 0xf
-	KEYCTL_SUPPORTS_DECRYPT                     = 0x2
-	KEYCTL_SUPPORTS_ENCRYPT                     = 0x1
-	KEYCTL_SUPPORTS_SIGN                        = 0x4
-	KEYCTL_SUPPORTS_VERIFY                      = 0x8
-	KEYCTL_UNLINK                               = 0x9
-	KEYCTL_UPDATE                               = 0x2
-	KEY_REQKEY_DEFL_DEFAULT                     = 0x0
-	KEY_REQKEY_DEFL_GROUP_KEYRING               = 0x6
-	KEY_REQKEY_DEFL_NO_CHANGE                   = -0x1
-	KEY_REQKEY_DEFL_PROCESS_KEYRING             = 0x2
-	KEY_REQKEY_DEFL_REQUESTOR_KEYRING           = 0x7
-	KEY_REQKEY_DEFL_SESSION_KEYRING             = 0x3
-	KEY_REQKEY_DEFL_THREAD_KEYRING              = 0x1
-	KEY_REQKEY_DEFL_USER_KEYRING                = 0x4
-	KEY_REQKEY_DEFL_USER_SESSION_KEYRING        = 0x5
-	KEY_SPEC_GROUP_KEYRING                      = -0x6
-	KEY_SPEC_PROCESS_KEYRING                    = -0x2
-	KEY_SPEC_REQKEY_AUTH_KEY                    = -0x7
-	KEY_SPEC_REQUESTOR_KEYRING                  = -0x8
-	KEY_SPEC_SESSION_KEYRING                    = -0x3
-	KEY_SPEC_THREAD_KEYRING                     = -0x1
-	KEY_SPEC_USER_KEYRING                       = -0x4
-	KEY_SPEC_USER_SESSION_KEYRING               = -0x5
-	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0
-	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef
-	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123
-	LINUX_REBOOT_CMD_KEXEC                      = 0x45584543
-	LINUX_REBOOT_CMD_POWER_OFF                  = 0x4321fedc
-	LINUX_REBOOT_CMD_RESTART                    = 0x1234567
-	LINUX_REBOOT_CMD_RESTART2                   = 0xa1b2c3d4
-	LINUX_REBOOT_CMD_SW_SUSPEND                 = 0xd000fce2
-	LINUX_REBOOT_MAGIC1                         = 0xfee1dead
-	LINUX_REBOOT_MAGIC2                         = 0x28121969
-	LOCK_EX                                     = 0x2
-	LOCK_NB                                     = 0x4
-	LOCK_SH                                     = 0x1
-	LOCK_UN                                     = 0x8
-	LOOP_CLR_FD                                 = 0x4c01
-	LOOP_CTL_ADD                                = 0x4c80
-	LOOP_CTL_GET_FREE                           = 0x4c82
-	LOOP_CTL_REMOVE                             = 0x4c81
-	LOOP_GET_STATUS                             = 0x4c03
-	LOOP_GET_STATUS64                           = 0x4c05
-	LOOP_SET_BLOCK_SIZE                         = 0x4c09
-	LOOP_SET_CAPACITY                           = 0x4c07
-	LOOP_SET_DIRECT_IO                          = 0x4c08
-	LOOP_SET_FD                                 = 0x4c00
-	LOOP_SET_STATUS                             = 0x4c02
-	LOOP_SET_STATUS64                           = 0x4c04
-	LO_KEY_SIZE                                 = 0x20
-	LO_NAME_SIZE                                = 0x40
-	MADV_COLD                                   = 0x14
-	MADV_DODUMP                                 = 0x11
-	MADV_DOFORK                                 = 0xb
-	MADV_DONTDUMP                               = 0x10
-	MADV_DONTFORK                               = 0xa
-	MADV_DONTNEED                               = 0x4
-	MADV_FREE                                   = 0x8
-	MADV_HUGEPAGE                               = 0xe
-	MADV_HWPOISON                               = 0x64
-	MADV_KEEPONFORK                             = 0x13
-	MADV_MERGEABLE                              = 0xc
-	MADV_NOHUGEPAGE                             = 0xf
-	MADV_NORMAL                                 = 0x0
-	MADV_PAGEOUT                                = 0x15
-	MADV_RANDOM                                 = 0x1
-	MADV_REMOVE                                 = 0x9
-	MADV_SEQUENTIAL                             = 0x2
-	MADV_UNMERGEABLE                            = 0xd
-	MADV_WILLNEED                               = 0x3
-	MADV_WIPEONFORK                             = 0x12
-	MAP_ANON                                    = 0x20
-	MAP_ANONYMOUS                               = 0x20
-	MAP_DENYWRITE                               = 0x800
-	MAP_EXECUTABLE                              = 0x1000
-	MAP_FILE                                    = 0x0
-	MAP_FIXED                                   = 0x10
-	MAP_FIXED_NOREPLACE                         = 0x100000
-	MAP_GROWSDOWN                               = 0x200
-	MAP_HUGETLB                                 = 0x40000
-	MAP_HUGE_MASK                               = 0x3f
-	MAP_HUGE_SHIFT                              = 0x1a
-	MAP_LOCKED                                  = 0x100
-	MAP_NONBLOCK                                = 0x10000
-	MAP_NORESERVE                               = 0x40
-	MAP_POPULATE                                = 0x8000
-	MAP_PRIVATE                                 = 0x2
-	MAP_RENAME                                  = 0x20
-	MAP_SHARED                                  = 0x1
-	MAP_SHARED_VALIDATE                         = 0x3
-	MAP_STACK                                   = 0x20000
-	MAP_SYNC                                    = 0x80000
-	MAP_TYPE                                    = 0xf
-	MCAST_BLOCK_SOURCE                          = 0x2b
-	MCAST_EXCLUDE                               = 0x0
-	MCAST_INCLUDE                               = 0x1
-	MCAST_JOIN_GROUP                            = 0x2a
-	MCAST_JOIN_SOURCE_GROUP                     = 0x2e
-	MCAST_LEAVE_GROUP                           = 0x2d
-	MCAST_LEAVE_SOURCE_GROUP                    = 0x2f
-	MCAST_MSFILTER                              = 0x30
-	MCAST_UNBLOCK_SOURCE                        = 0x2c
-	MCL_CURRENT                                 = 0x2000
-	MCL_FUTURE                                  = 0x4000
-	MCL_ONFAULT                                 = 0x8000
-	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                               = 0x3f
-	MFD_HUGE_SHIFT                              = 0x1a
-	MINIX2_SUPER_MAGIC                          = 0x2468
-	MINIX2_SUPER_MAGIC2                         = 0x2478
-	MINIX3_SUPER_MAGIC                          = 0x4d5a
-	MINIX_SUPER_MAGIC                           = 0x137f
-	MINIX_SUPER_MAGIC2                          = 0x138f
-	MNT_DETACH                                  = 0x2
-	MNT_EXPIRE                                  = 0x4
-	MNT_FORCE                                   = 0x1
-	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1
-	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2
-	MSDOS_SUPER_MAGIC                           = 0x4d44
-	MSG_BATCH                                   = 0x40000
-	MSG_CMSG_CLOEXEC                            = 0x40000000
-	MSG_CONFIRM                                 = 0x800
-	MSG_CTRUNC                                  = 0x8
-	MSG_DONTROUTE                               = 0x4
-	MSG_DONTWAIT                                = 0x40
-	MSG_EOR                                     = 0x80
-	MSG_ERRQUEUE                                = 0x2000
-	MSG_FASTOPEN                                = 0x20000000
-	MSG_FIN                                     = 0x200
-	MSG_MORE                                    = 0x8000
-	MSG_NOSIGNAL                                = 0x4000
-	MSG_OOB                                     = 0x1
-	MSG_PEEK                                    = 0x2
-	MSG_PROXY                                   = 0x10
-	MSG_RST                                     = 0x1000
-	MSG_SYN                                     = 0x400
-	MSG_TRUNC                                   = 0x20
-	MSG_TRYHARD                                 = 0x4
-	MSG_WAITALL                                 = 0x100
-	MSG_WAITFORONE                              = 0x10000
-	MSG_ZEROCOPY                                = 0x4000000
-	MS_ACTIVE                                   = 0x40000000
-	MS_ASYNC                                    = 0x1
-	MS_BIND                                     = 0x1000
-	MS_BORN                                     = 0x20000000
-	MS_DIRSYNC                                  = 0x80
-	MS_INVALIDATE                               = 0x2
-	MS_I_VERSION                                = 0x800000
-	MS_KERNMOUNT                                = 0x400000
-	MS_LAZYTIME                                 = 0x2000000
-	MS_MANDLOCK                                 = 0x40
-	MS_MGC_MSK                                  = 0xffff0000
-	MS_MGC_VAL                                  = 0xc0ed0000
-	MS_MOVE                                     = 0x2000
-	MS_NOATIME                                  = 0x400
-	MS_NODEV                                    = 0x4
-	MS_NODIRATIME                               = 0x800
-	MS_NOEXEC                                   = 0x8
-	MS_NOREMOTELOCK                             = 0x8000000
-	MS_NOSEC                                    = 0x10000000
-	MS_NOSUID                                   = 0x2
-	MS_NOUSER                                   = -0x80000000
-	MS_POSIXACL                                 = 0x10000
-	MS_PRIVATE                                  = 0x40000
-	MS_RDONLY                                   = 0x1
-	MS_REC                                      = 0x4000
-	MS_RELATIME                                 = 0x200000
-	MS_REMOUNT                                  = 0x20
-	MS_RMT_MASK                                 = 0x2800051
-	MS_SHARED                                   = 0x100000
-	MS_SILENT                                   = 0x8000
-	MS_SLAVE                                    = 0x80000
-	MS_STRICTATIME                              = 0x1000000
-	MS_SUBMOUNT                                 = 0x4000000
-	MS_SYNC                                     = 0x4
-	MS_SYNCHRONOUS                              = 0x10
-	MS_UNBINDABLE                               = 0x20000
-	MS_VERBOSE                                  = 0x8000
-	MTD_INODE_FS_MAGIC                          = 0x11307854
-	NAME_MAX                                    = 0xff
-	NCP_SUPER_MAGIC                             = 0x564c
-	NETLINK_ADD_MEMBERSHIP                      = 0x1
-	NETLINK_AUDIT                               = 0x9
-	NETLINK_BROADCAST_ERROR                     = 0x4
-	NETLINK_CAP_ACK                             = 0xa
-	NETLINK_CONNECTOR                           = 0xb
-	NETLINK_CRYPTO                              = 0x15
-	NETLINK_DNRTMSG                             = 0xe
-	NETLINK_DROP_MEMBERSHIP                     = 0x2
-	NETLINK_ECRYPTFS                            = 0x13
-	NETLINK_EXT_ACK                             = 0xb
-	NETLINK_FIB_LOOKUP                          = 0xa
-	NETLINK_FIREWALL                            = 0x3
-	NETLINK_GENERIC                             = 0x10
-	NETLINK_GET_STRICT_CHK                      = 0xc
-	NETLINK_INET_DIAG                           = 0x4
-	NETLINK_IP6_FW                              = 0xd
-	NETLINK_ISCSI                               = 0x8
-	NETLINK_KOBJECT_UEVENT                      = 0xf
-	NETLINK_LISTEN_ALL_NSID                     = 0x8
-	NETLINK_LIST_MEMBERSHIPS                    = 0x9
-	NETLINK_NETFILTER                           = 0xc
-	NETLINK_NFLOG                               = 0x5
-	NETLINK_NO_ENOBUFS                          = 0x5
-	NETLINK_PKTINFO                             = 0x3
-	NETLINK_RDMA                                = 0x14
-	NETLINK_ROUTE                               = 0x0
-	NETLINK_RX_RING                             = 0x6
-	NETLINK_SCSITRANSPORT                       = 0x12
-	NETLINK_SELINUX                             = 0x7
-	NETLINK_SMC                                 = 0x16
-	NETLINK_SOCK_DIAG                           = 0x4
-	NETLINK_TX_RING                             = 0x7
-	NETLINK_UNUSED                              = 0x1
-	NETLINK_USERSOCK                            = 0x2
-	NETLINK_XFRM                                = 0x6
-	NETNSA_MAX                                  = 0x5
-	NETNSA_NSID_NOT_ASSIGNED                    = -0x1
-	NFDBITS                                     = 0x40
-	NFNETLINK_V0                                = 0x0
-	NFNLGRP_ACCT_QUOTA                          = 0x8
-	NFNLGRP_CONNTRACK_DESTROY                   = 0x3
-	NFNLGRP_CONNTRACK_EXP_DESTROY               = 0x6
-	NFNLGRP_CONNTRACK_EXP_NEW                   = 0x4
-	NFNLGRP_CONNTRACK_EXP_UPDATE                = 0x5
-	NFNLGRP_CONNTRACK_NEW                       = 0x1
-	NFNLGRP_CONNTRACK_UPDATE                    = 0x2
-	NFNLGRP_MAX                                 = 0x9
-	NFNLGRP_NFTABLES                            = 0x7
-	NFNLGRP_NFTRACE                             = 0x9
-	NFNLGRP_NONE                                = 0x0
-	NFNL_BATCH_MAX                              = 0x1
-	NFNL_MSG_BATCH_BEGIN                        = 0x10
-	NFNL_MSG_BATCH_END                          = 0x11
-	NFNL_NFA_NEST                               = 0x8000
-	NFNL_SUBSYS_ACCT                            = 0x7
-	NFNL_SUBSYS_COUNT                           = 0xc
-	NFNL_SUBSYS_CTHELPER                        = 0x9
-	NFNL_SUBSYS_CTNETLINK                       = 0x1
-	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2
-	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8
-	NFNL_SUBSYS_IPSET                           = 0x6
-	NFNL_SUBSYS_NFTABLES                        = 0xa
-	NFNL_SUBSYS_NFT_COMPAT                      = 0xb
-	NFNL_SUBSYS_NONE                            = 0x0
-	NFNL_SUBSYS_OSF                             = 0x5
-	NFNL_SUBSYS_QUEUE                           = 0x3
-	NFNL_SUBSYS_ULOG                            = 0x4
-	NFS_SUPER_MAGIC                             = 0x6969
-	NILFS_SUPER_MAGIC                           = 0x3434
-	NL0                                         = 0x0
-	NL1                                         = 0x100
-	NLA_ALIGNTO                                 = 0x4
-	NLA_F_NESTED                                = 0x8000
-	NLA_F_NET_BYTEORDER                         = 0x4000
-	NLA_HDRLEN                                  = 0x4
-	NLDLY                                       = 0x100
-	NLMSG_ALIGNTO                               = 0x4
-	NLMSG_DONE                                  = 0x3
-	NLMSG_ERROR                                 = 0x2
-	NLMSG_HDRLEN                                = 0x10
-	NLMSG_MIN_TYPE                              = 0x10
-	NLMSG_NOOP                                  = 0x1
-	NLMSG_OVERRUN                               = 0x4
-	NLM_F_ACK                                   = 0x4
-	NLM_F_ACK_TLVS                              = 0x200
-	NLM_F_APPEND                                = 0x800
-	NLM_F_ATOMIC                                = 0x400
-	NLM_F_CAPPED                                = 0x100
-	NLM_F_CREATE                                = 0x400
-	NLM_F_DUMP                                  = 0x300
-	NLM_F_DUMP_FILTERED                         = 0x20
-	NLM_F_DUMP_INTR                             = 0x10
-	NLM_F_ECHO                                  = 0x8
-	NLM_F_EXCL                                  = 0x200
-	NLM_F_MATCH                                 = 0x200
-	NLM_F_MULTI                                 = 0x2
-	NLM_F_NONREC                                = 0x100
-	NLM_F_REPLACE                               = 0x100
-	NLM_F_REQUEST                               = 0x1
-	NLM_F_ROOT                                  = 0x100
-	NOFLSH                                      = 0x80
-	NSFS_MAGIC                                  = 0x6e736673
-	NS_GET_NSTYPE                               = 0x2000b703
-	NS_GET_OWNER_UID                            = 0x2000b704
-	NS_GET_PARENT                               = 0x2000b702
-	NS_GET_USERNS                               = 0x2000b701
-	OCFS2_SUPER_MAGIC                           = 0x7461636f
-	OCRNL                                       = 0x8
-	OFDEL                                       = 0x80
-	OFILL                                       = 0x40
-	OLCUC                                       = 0x2
-	ONLCR                                       = 0x4
-	ONLRET                                      = 0x20
-	ONOCR                                       = 0x10
-	OPENPROM_SUPER_MAGIC                        = 0x9fa1
-	OPOST                                       = 0x1
-	OVERLAYFS_SUPER_MAGIC                       = 0x794c7630
-	O_ACCMODE                                   = 0x3
-	O_APPEND                                    = 0x8
-	O_ASYNC                                     = 0x40
-	O_CLOEXEC                                   = 0x400000
-	O_CREAT                                     = 0x200
-	O_DIRECT                                    = 0x100000
-	O_DIRECTORY                                 = 0x10000
-	O_DSYNC                                     = 0x2000
-	O_EXCL                                      = 0x800
-	O_FSYNC                                     = 0x802000
-	O_LARGEFILE                                 = 0x0
-	O_NDELAY                                    = 0x4004
-	O_NOATIME                                   = 0x200000
-	O_NOCTTY                                    = 0x8000
-	O_NOFOLLOW                                  = 0x20000
-	O_NONBLOCK                                  = 0x4000
-	O_PATH                                      = 0x1000000
-	O_RDONLY                                    = 0x0
-	O_RDWR                                      = 0x2
-	O_RSYNC                                     = 0x802000
-	O_SYNC                                      = 0x802000
-	O_TMPFILE                                   = 0x2010000
-	O_TRUNC                                     = 0x400
-	O_WRONLY                                    = 0x1
-	PACKET_ADD_MEMBERSHIP                       = 0x1
-	PACKET_AUXDATA                              = 0x8
-	PACKET_BROADCAST                            = 0x1
-	PACKET_COPY_THRESH                          = 0x7
-	PACKET_DROP_MEMBERSHIP                      = 0x2
-	PACKET_FANOUT                               = 0x12
-	PACKET_FANOUT_CBPF                          = 0x6
-	PACKET_FANOUT_CPU                           = 0x2
-	PACKET_FANOUT_DATA                          = 0x16
-	PACKET_FANOUT_EBPF                          = 0x7
-	PACKET_FANOUT_FLAG_DEFRAG                   = 0x8000
-	PACKET_FANOUT_FLAG_ROLLOVER                 = 0x1000
-	PACKET_FANOUT_FLAG_UNIQUEID                 = 0x2000
-	PACKET_FANOUT_HASH                          = 0x0
-	PACKET_FANOUT_LB                            = 0x1
-	PACKET_FANOUT_QM                            = 0x5
-	PACKET_FANOUT_RND                           = 0x4
-	PACKET_FANOUT_ROLLOVER                      = 0x3
-	PACKET_FASTROUTE                            = 0x6
-	PACKET_HDRLEN                               = 0xb
-	PACKET_HOST                                 = 0x0
-	PACKET_IGNORE_OUTGOING                      = 0x17
-	PACKET_KERNEL                               = 0x7
-	PACKET_LOOPBACK                             = 0x5
-	PACKET_LOSS                                 = 0xe
-	PACKET_MR_ALLMULTI                          = 0x2
-	PACKET_MR_MULTICAST                         = 0x0
-	PACKET_MR_PROMISC                           = 0x1
-	PACKET_MR_UNICAST                           = 0x3
-	PACKET_MULTICAST                            = 0x2
-	PACKET_ORIGDEV                              = 0x9
-	PACKET_OTHERHOST                            = 0x3
-	PACKET_OUTGOING                             = 0x4
-	PACKET_QDISC_BYPASS                         = 0x14
-	PACKET_RECV_OUTPUT                          = 0x3
-	PACKET_RESERVE                              = 0xc
-	PACKET_ROLLOVER_STATS                       = 0x15
-	PACKET_RX_RING                              = 0x5
-	PACKET_STATISTICS                           = 0x6
-	PACKET_TIMESTAMP                            = 0x11
-	PACKET_TX_HAS_OFF                           = 0x13
-	PACKET_TX_RING                              = 0xd
-	PACKET_TX_TIMESTAMP                         = 0x10
-	PACKET_USER                                 = 0x6
-	PACKET_VERSION                              = 0xa
-	PACKET_VNET_HDR                             = 0xf
-	PARENB                                      = 0x100
-	PARITY_CRC16_PR0                            = 0x2
-	PARITY_CRC16_PR0_CCITT                      = 0x4
-	PARITY_CRC16_PR1                            = 0x3
-	PARITY_CRC16_PR1_CCITT                      = 0x5
-	PARITY_CRC32_PR0_CCITT                      = 0x6
-	PARITY_CRC32_PR1_CCITT                      = 0x7
-	PARITY_DEFAULT                              = 0x0
-	PARITY_NONE                                 = 0x1
-	PARMRK                                      = 0x8
-	PARODD                                      = 0x200
-	PENDIN                                      = 0x4000
-	PERF_EVENT_IOC_DISABLE                      = 0x20002401
-	PERF_EVENT_IOC_ENABLE                       = 0x20002400
-	PERF_EVENT_IOC_ID                           = 0x40082407
-	PERF_EVENT_IOC_MODIFY_ATTRIBUTES            = 0x8008240b
-	PERF_EVENT_IOC_PAUSE_OUTPUT                 = 0x80042409
-	PERF_EVENT_IOC_PERIOD                       = 0x80082404
-	PERF_EVENT_IOC_QUERY_BPF                    = 0xc008240a
-	PERF_EVENT_IOC_REFRESH                      = 0x20002402
-	PERF_EVENT_IOC_RESET                        = 0x20002403
-	PERF_EVENT_IOC_SET_BPF                      = 0x80042408
-	PERF_EVENT_IOC_SET_FILTER                   = 0x80082406
-	PERF_EVENT_IOC_SET_OUTPUT                   = 0x20002405
-	PIPEFS_MAGIC                                = 0x50495045
-	PPC_CMM_MAGIC                               = 0xc7571590
-	PPPIOCATTACH                                = 0x8004743d
-	PPPIOCATTCHAN                               = 0x80047438
-	PPPIOCCONNECT                               = 0x8004743a
-	PPPIOCDETACH                                = 0x8004743c
-	PPPIOCDISCONN                               = 0x20007439
-	PPPIOCGASYNCMAP                             = 0x40047458
-	PPPIOCGCHAN                                 = 0x40047437
-	PPPIOCGDEBUG                                = 0x40047441
-	PPPIOCGFLAGS                                = 0x4004745a
-	PPPIOCGIDLE                                 = 0x4010743f
-	PPPIOCGIDLE32                               = 0x4008743f
-	PPPIOCGIDLE64                               = 0x4010743f
-	PPPIOCGL2TPSTATS                            = 0x40487436
-	PPPIOCGMRU                                  = 0x40047453
-	PPPIOCGNPMODE                               = 0xc008744c
-	PPPIOCGRASYNCMAP                            = 0x40047455
-	PPPIOCGUNIT                                 = 0x40047456
-	PPPIOCGXASYNCMAP                            = 0x40207450
-	PPPIOCNEWUNIT                               = 0xc004743e
-	PPPIOCSACTIVE                               = 0x80107446
-	PPPIOCSASYNCMAP                             = 0x80047457
-	PPPIOCSCOMPRESS                             = 0x8010744d
-	PPPIOCSDEBUG                                = 0x80047440
-	PPPIOCSFLAGS                                = 0x80047459
-	PPPIOCSMAXCID                               = 0x80047451
-	PPPIOCSMRRU                                 = 0x8004743b
-	PPPIOCSMRU                                  = 0x80047452
-	PPPIOCSNPMODE                               = 0x8008744b
-	PPPIOCSPASS                                 = 0x80107447
-	PPPIOCSRASYNCMAP                            = 0x80047454
-	PPPIOCSXASYNCMAP                            = 0x8020744f
-	PPPIOCXFERUNIT                              = 0x2000744e
-	PRIO_PGRP                                   = 0x1
-	PRIO_PROCESS                                = 0x0
-	PRIO_USER                                   = 0x2
-	PROC_SUPER_MAGIC                            = 0x9fa0
-	PROT_EXEC                                   = 0x4
-	PROT_GROWSDOWN                              = 0x1000000
-	PROT_GROWSUP                                = 0x2000000
-	PROT_NONE                                   = 0x0
-	PROT_READ                                   = 0x1
-	PROT_WRITE                                  = 0x2
-	PR_CAPBSET_DROP                             = 0x18
-	PR_CAPBSET_READ                             = 0x17
-	PR_CAP_AMBIENT                              = 0x2f
-	PR_CAP_AMBIENT_CLEAR_ALL                    = 0x4
-	PR_CAP_AMBIENT_IS_SET                       = 0x1
-	PR_CAP_AMBIENT_LOWER                        = 0x3
-	PR_CAP_AMBIENT_RAISE                        = 0x2
-	PR_ENDIAN_BIG                               = 0x0
-	PR_ENDIAN_LITTLE                            = 0x1
-	PR_ENDIAN_PPC_LITTLE                        = 0x2
-	PR_FPEMU_NOPRINT                            = 0x1
-	PR_FPEMU_SIGFPE                             = 0x2
-	PR_FP_EXC_ASYNC                             = 0x2
-	PR_FP_EXC_DISABLED                          = 0x0
-	PR_FP_EXC_DIV                               = 0x10000
-	PR_FP_EXC_INV                               = 0x100000
-	PR_FP_EXC_NONRECOV                          = 0x1
-	PR_FP_EXC_OVF                               = 0x20000
-	PR_FP_EXC_PRECISE                           = 0x3
-	PR_FP_EXC_RES                               = 0x80000
-	PR_FP_EXC_SW_ENABLE                         = 0x80
-	PR_FP_EXC_UND                               = 0x40000
-	PR_FP_MODE_FR                               = 0x1
-	PR_FP_MODE_FRE                              = 0x2
-	PR_GET_CHILD_SUBREAPER                      = 0x25
-	PR_GET_DUMPABLE                             = 0x3
-	PR_GET_ENDIAN                               = 0x13
-	PR_GET_FPEMU                                = 0x9
-	PR_GET_FPEXC                                = 0xb
-	PR_GET_FP_MODE                              = 0x2e
-	PR_GET_KEEPCAPS                             = 0x7
-	PR_GET_NAME                                 = 0x10
-	PR_GET_NO_NEW_PRIVS                         = 0x27
-	PR_GET_PDEATHSIG                            = 0x2
-	PR_GET_SECCOMP                              = 0x15
-	PR_GET_SECUREBITS                           = 0x1b
-	PR_GET_SPECULATION_CTRL                     = 0x34
-	PR_GET_TAGGED_ADDR_CTRL                     = 0x38
-	PR_GET_THP_DISABLE                          = 0x2a
-	PR_GET_TID_ADDRESS                          = 0x28
-	PR_GET_TIMERSLACK                           = 0x1e
-	PR_GET_TIMING                               = 0xd
-	PR_GET_TSC                                  = 0x19
-	PR_GET_UNALIGN                              = 0x5
-	PR_MCE_KILL                                 = 0x21
-	PR_MCE_KILL_CLEAR                           = 0x0
-	PR_MCE_KILL_DEFAULT                         = 0x2
-	PR_MCE_KILL_EARLY                           = 0x1
-	PR_MCE_KILL_GET                             = 0x22
-	PR_MCE_KILL_LATE                            = 0x0
-	PR_MCE_KILL_SET                             = 0x1
-	PR_MPX_DISABLE_MANAGEMENT                   = 0x2c
-	PR_MPX_ENABLE_MANAGEMENT                    = 0x2b
-	PR_PAC_APDAKEY                              = 0x4
-	PR_PAC_APDBKEY                              = 0x8
-	PR_PAC_APGAKEY                              = 0x10
-	PR_PAC_APIAKEY                              = 0x1
-	PR_PAC_APIBKEY                              = 0x2
-	PR_PAC_RESET_KEYS                           = 0x36
-	PR_SET_CHILD_SUBREAPER                      = 0x24
-	PR_SET_DUMPABLE                             = 0x4
-	PR_SET_ENDIAN                               = 0x14
-	PR_SET_FPEMU                                = 0xa
-	PR_SET_FPEXC                                = 0xc
-	PR_SET_FP_MODE                              = 0x2d
-	PR_SET_KEEPCAPS                             = 0x8
-	PR_SET_MM                                   = 0x23
-	PR_SET_MM_ARG_END                           = 0x9
-	PR_SET_MM_ARG_START                         = 0x8
-	PR_SET_MM_AUXV                              = 0xc
-	PR_SET_MM_BRK                               = 0x7
-	PR_SET_MM_END_CODE                          = 0x2
-	PR_SET_MM_END_DATA                          = 0x4
-	PR_SET_MM_ENV_END                           = 0xb
-	PR_SET_MM_ENV_START                         = 0xa
-	PR_SET_MM_EXE_FILE                          = 0xd
-	PR_SET_MM_MAP                               = 0xe
-	PR_SET_MM_MAP_SIZE                          = 0xf
-	PR_SET_MM_START_BRK                         = 0x6
-	PR_SET_MM_START_CODE                        = 0x1
-	PR_SET_MM_START_DATA                        = 0x3
-	PR_SET_MM_START_STACK                       = 0x5
-	PR_SET_NAME                                 = 0xf
-	PR_SET_NO_NEW_PRIVS                         = 0x26
-	PR_SET_PDEATHSIG                            = 0x1
-	PR_SET_PTRACER                              = 0x59616d61
-	PR_SET_PTRACER_ANY                          = 0xffffffffffffffff
-	PR_SET_SECCOMP                              = 0x16
-	PR_SET_SECUREBITS                           = 0x1c
-	PR_SET_SPECULATION_CTRL                     = 0x35
-	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_SPEC_DISABLE                             = 0x4
-	PR_SPEC_DISABLE_NOEXEC                      = 0x10
-	PR_SPEC_ENABLE                              = 0x2
-	PR_SPEC_FORCE_DISABLE                       = 0x8
-	PR_SPEC_INDIRECT_BRANCH                     = 0x1
-	PR_SPEC_NOT_AFFECTED                        = 0x0
-	PR_SPEC_PRCTL                               = 0x1
-	PR_SPEC_STORE_BYPASS                        = 0x0
-	PR_SVE_GET_VL                               = 0x33
-	PR_SVE_SET_VL                               = 0x32
-	PR_SVE_SET_VL_ONEXEC                        = 0x40000
-	PR_SVE_VL_INHERIT                           = 0x20000
-	PR_SVE_VL_LEN_MASK                          = 0xffff
-	PR_TAGGED_ADDR_ENABLE                       = 0x1
-	PR_TASK_PERF_EVENTS_DISABLE                 = 0x1f
-	PR_TASK_PERF_EVENTS_ENABLE                  = 0x20
-	PR_TIMING_STATISTICAL                       = 0x0
-	PR_TIMING_TIMESTAMP                         = 0x1
-	PR_TSC_ENABLE                               = 0x1
-	PR_TSC_SIGSEGV                              = 0x2
-	PR_UNALIGN_NOPRINT                          = 0x1
-	PR_UNALIGN_SIGBUS                           = 0x2
-	PSTOREFS_MAGIC                              = 0x6165676c
-	PTRACE_ATTACH                               = 0x10
-	PTRACE_CONT                                 = 0x7
-	PTRACE_DETACH                               = 0x11
-	PTRACE_EVENTMSG_SYSCALL_ENTRY               = 0x1
-	PTRACE_EVENTMSG_SYSCALL_EXIT                = 0x2
-	PTRACE_EVENT_CLONE                          = 0x3
-	PTRACE_EVENT_EXEC                           = 0x4
-	PTRACE_EVENT_EXIT                           = 0x6
-	PTRACE_EVENT_FORK                           = 0x1
-	PTRACE_EVENT_SECCOMP                        = 0x7
-	PTRACE_EVENT_STOP                           = 0x80
-	PTRACE_EVENT_VFORK                          = 0x2
-	PTRACE_EVENT_VFORK_DONE                     = 0x5
-	PTRACE_GETEVENTMSG                          = 0x4201
-	PTRACE_GETFPAREGS                           = 0x14
-	PTRACE_GETFPREGS                            = 0xe
-	PTRACE_GETFPREGS64                          = 0x19
-	PTRACE_GETREGS                              = 0xc
-	PTRACE_GETREGS64                            = 0x16
-	PTRACE_GETREGSET                            = 0x4204
-	PTRACE_GETSIGINFO                           = 0x4202
-	PTRACE_GETSIGMASK                           = 0x420a
-	PTRACE_GET_SYSCALL_INFO                     = 0x420e
-	PTRACE_INTERRUPT                            = 0x4207
-	PTRACE_KILL                                 = 0x8
-	PTRACE_LISTEN                               = 0x4208
-	PTRACE_O_EXITKILL                           = 0x100000
-	PTRACE_O_MASK                               = 0x3000ff
-	PTRACE_O_SUSPEND_SECCOMP                    = 0x200000
-	PTRACE_O_TRACECLONE                         = 0x8
-	PTRACE_O_TRACEEXEC                          = 0x10
-	PTRACE_O_TRACEEXIT                          = 0x40
-	PTRACE_O_TRACEFORK                          = 0x2
-	PTRACE_O_TRACESECCOMP                       = 0x80
-	PTRACE_O_TRACESYSGOOD                       = 0x1
-	PTRACE_O_TRACEVFORK                         = 0x4
-	PTRACE_O_TRACEVFORKDONE                     = 0x20
-	PTRACE_PEEKDATA                             = 0x2
-	PTRACE_PEEKSIGINFO                          = 0x4209
-	PTRACE_PEEKSIGINFO_SHARED                   = 0x1
-	PTRACE_PEEKTEXT                             = 0x1
-	PTRACE_PEEKUSR                              = 0x3
-	PTRACE_POKEDATA                             = 0x5
-	PTRACE_POKETEXT                             = 0x4
-	PTRACE_POKEUSR                              = 0x6
-	PTRACE_READDATA                             = 0x10
-	PTRACE_READTEXT                             = 0x12
-	PTRACE_SECCOMP_GET_FILTER                   = 0x420c
-	PTRACE_SECCOMP_GET_METADATA                 = 0x420d
-	PTRACE_SEIZE                                = 0x4206
-	PTRACE_SETFPAREGS                           = 0x15
-	PTRACE_SETFPREGS                            = 0xf
-	PTRACE_SETFPREGS64                          = 0x1a
-	PTRACE_SETOPTIONS                           = 0x4200
-	PTRACE_SETREGS                              = 0xd
-	PTRACE_SETREGS64                            = 0x17
-	PTRACE_SETREGSET                            = 0x4205
-	PTRACE_SETSIGINFO                           = 0x4203
-	PTRACE_SETSIGMASK                           = 0x420b
-	PTRACE_SINGLESTEP                           = 0x9
-	PTRACE_SPARC_DETACH                         = 0xb
-	PTRACE_SYSCALL                              = 0x18
-	PTRACE_SYSCALL_INFO_ENTRY                   = 0x1
-	PTRACE_SYSCALL_INFO_EXIT                    = 0x2
-	PTRACE_SYSCALL_INFO_NONE                    = 0x0
-	PTRACE_SYSCALL_INFO_SECCOMP                 = 0x3
-	PTRACE_TRACEME                              = 0x0
-	PTRACE_WRITEDATA                            = 0x11
-	PTRACE_WRITETEXT                            = 0x13
-	PT_FP                                       = 0x48
-	PT_G0                                       = 0x10
-	PT_G1                                       = 0x14
-	PT_G2                                       = 0x18
-	PT_G3                                       = 0x1c
-	PT_G4                                       = 0x20
-	PT_G5                                       = 0x24
-	PT_G6                                       = 0x28
-	PT_G7                                       = 0x2c
-	PT_I0                                       = 0x30
-	PT_I1                                       = 0x34
-	PT_I2                                       = 0x38
-	PT_I3                                       = 0x3c
-	PT_I4                                       = 0x40
-	PT_I5                                       = 0x44
-	PT_I6                                       = 0x48
-	PT_I7                                       = 0x4c
-	PT_NPC                                      = 0x8
-	PT_PC                                       = 0x4
-	PT_PSR                                      = 0x0
-	PT_REGS_MAGIC                               = 0x57ac6c00
-	PT_TNPC                                     = 0x90
-	PT_TPC                                      = 0x88
-	PT_TSTATE                                   = 0x80
-	PT_V9_FP                                    = 0x70
-	PT_V9_G0                                    = 0x0
-	PT_V9_G1                                    = 0x8
-	PT_V9_G2                                    = 0x10
-	PT_V9_G3                                    = 0x18
-	PT_V9_G4                                    = 0x20
-	PT_V9_G5                                    = 0x28
-	PT_V9_G6                                    = 0x30
-	PT_V9_G7                                    = 0x38
-	PT_V9_I0                                    = 0x40
-	PT_V9_I1                                    = 0x48
-	PT_V9_I2                                    = 0x50
-	PT_V9_I3                                    = 0x58
-	PT_V9_I4                                    = 0x60
-	PT_V9_I5                                    = 0x68
-	PT_V9_I6                                    = 0x70
-	PT_V9_I7                                    = 0x78
-	PT_V9_MAGIC                                 = 0x9c
-	PT_V9_TNPC                                  = 0x90
-	PT_V9_TPC                                   = 0x88
-	PT_V9_TSTATE                                = 0x80
-	PT_V9_Y                                     = 0x98
-	PT_WIM                                      = 0x10
-	PT_Y                                        = 0xc
-	QNX4_SUPER_MAGIC                            = 0x2f
-	QNX6_SUPER_MAGIC                            = 0x68191122
-	RAMFS_MAGIC                                 = 0x858458f6
-	RDTGROUP_SUPER_MAGIC                        = 0x7655821
-	REISERFS_SUPER_MAGIC                        = 0x52654973
-	RENAME_EXCHANGE                             = 0x2
-	RENAME_NOREPLACE                            = 0x1
-	RENAME_WHITEOUT                             = 0x4
-	RLIMIT_AS                                   = 0x9
-	RLIMIT_CORE                                 = 0x4
-	RLIMIT_CPU                                  = 0x0
-	RLIMIT_DATA                                 = 0x2
-	RLIMIT_FSIZE                                = 0x1
-	RLIMIT_LOCKS                                = 0xa
-	RLIMIT_MEMLOCK                              = 0x8
-	RLIMIT_MSGQUEUE                             = 0xc
-	RLIMIT_NICE                                 = 0xd
-	RLIMIT_NOFILE                               = 0x6
-	RLIMIT_NPROC                                = 0x7
-	RLIMIT_RSS                                  = 0x5
-	RLIMIT_RTPRIO                               = 0xe
-	RLIMIT_RTTIME                               = 0xf
-	RLIMIT_SIGPENDING                           = 0xb
-	RLIMIT_STACK                                = 0x3
-	RLIM_INFINITY                               = 0xffffffffffffffff
-	RNDADDENTROPY                               = 0x80085203
-	RNDADDTOENTCNT                              = 0x80045201
-	RNDCLEARPOOL                                = 0x20005206
-	RNDGETENTCNT                                = 0x40045200
-	RNDGETPOOL                                  = 0x40085202
-	RNDRESEEDCRNG                               = 0x20005207
-	RNDZAPENTCNT                                = 0x20005204
-	RTAX_ADVMSS                                 = 0x8
-	RTAX_CC_ALGO                                = 0x10
-	RTAX_CWND                                   = 0x7
-	RTAX_FASTOPEN_NO_COOKIE                     = 0x11
-	RTAX_FEATURES                               = 0xc
-	RTAX_FEATURE_ALLFRAG                        = 0x8
-	RTAX_FEATURE_ECN                            = 0x1
-	RTAX_FEATURE_MASK                           = 0xf
-	RTAX_FEATURE_SACK                           = 0x2
-	RTAX_FEATURE_TIMESTAMP                      = 0x4
-	RTAX_HOPLIMIT                               = 0xa
-	RTAX_INITCWND                               = 0xb
-	RTAX_INITRWND                               = 0xe
-	RTAX_LOCK                                   = 0x1
-	RTAX_MAX                                    = 0x11
-	RTAX_MTU                                    = 0x2
-	RTAX_QUICKACK                               = 0xf
-	RTAX_REORDERING                             = 0x9
-	RTAX_RTO_MIN                                = 0xd
-	RTAX_RTT                                    = 0x4
-	RTAX_RTTVAR                                 = 0x5
-	RTAX_SSTHRESH                               = 0x6
-	RTAX_UNSPEC                                 = 0x0
-	RTAX_WINDOW                                 = 0x3
-	RTA_ALIGNTO                                 = 0x4
-	RTA_MAX                                     = 0x1e
-	RTCF_DIRECTSRC                              = 0x4000000
-	RTCF_DOREDIRECT                             = 0x1000000
-	RTCF_LOG                                    = 0x2000000
-	RTCF_MASQ                                   = 0x400000
-	RTCF_NAT                                    = 0x800000
-	RTCF_VALVE                                  = 0x200000
-	RTC_AF                                      = 0x20
-	RTC_AIE_OFF                                 = 0x20007002
-	RTC_AIE_ON                                  = 0x20007001
-	RTC_ALM_READ                                = 0x40247008
-	RTC_ALM_SET                                 = 0x80247007
-	RTC_EPOCH_READ                              = 0x4008700d
-	RTC_EPOCH_SET                               = 0x8008700e
-	RTC_IRQF                                    = 0x80
-	RTC_IRQP_READ                               = 0x4008700b
-	RTC_IRQP_SET                                = 0x8008700c
-	RTC_MAX_FREQ                                = 0x2000
-	RTC_PF                                      = 0x40
-	RTC_PIE_OFF                                 = 0x20007006
-	RTC_PIE_ON                                  = 0x20007005
-	RTC_PLL_GET                                 = 0x40207011
-	RTC_PLL_SET                                 = 0x80207012
-	RTC_RD_TIME                                 = 0x40247009
-	RTC_SET_TIME                                = 0x8024700a
-	RTC_UF                                      = 0x10
-	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
-	RTF_ADDRCLASSMASK                           = 0xf8000000
-	RTF_ADDRCONF                                = 0x40000
-	RTF_ALLONLINK                               = 0x20000
-	RTF_BROADCAST                               = 0x10000000
-	RTF_CACHE                                   = 0x1000000
-	RTF_DEFAULT                                 = 0x10000
-	RTF_DYNAMIC                                 = 0x10
-	RTF_FLOW                                    = 0x2000000
-	RTF_GATEWAY                                 = 0x2
-	RTF_HOST                                    = 0x4
-	RTF_INTERFACE                               = 0x40000000
-	RTF_IRTT                                    = 0x100
-	RTF_LINKRT                                  = 0x100000
-	RTF_LOCAL                                   = 0x80000000
-	RTF_MODIFIED                                = 0x20
-	RTF_MSS                                     = 0x40
-	RTF_MTU                                     = 0x40
-	RTF_MULTICAST                               = 0x20000000
-	RTF_NAT                                     = 0x8000000
-	RTF_NOFORWARD                               = 0x1000
-	RTF_NONEXTHOP                               = 0x200000
-	RTF_NOPMTUDISC                              = 0x4000
-	RTF_POLICY                                  = 0x4000000
-	RTF_REINSTATE                               = 0x8
-	RTF_REJECT                                  = 0x200
-	RTF_STATIC                                  = 0x400
-	RTF_THROW                                   = 0x2000
-	RTF_UP                                      = 0x1
-	RTF_WINDOW                                  = 0x80
-	RTF_XRESOLVE                                = 0x800
-	RTM_BASE                                    = 0x10
-	RTM_DELACTION                               = 0x31
-	RTM_DELADDR                                 = 0x15
-	RTM_DELADDRLABEL                            = 0x49
-	RTM_DELCHAIN                                = 0x65
-	RTM_DELLINK                                 = 0x11
-	RTM_DELLINKPROP                             = 0x6d
-	RTM_DELMDB                                  = 0x55
-	RTM_DELNEIGH                                = 0x1d
-	RTM_DELNETCONF                              = 0x51
-	RTM_DELNEXTHOP                              = 0x69
-	RTM_DELNSID                                 = 0x59
-	RTM_DELQDISC                                = 0x25
-	RTM_DELROUTE                                = 0x19
-	RTM_DELRULE                                 = 0x21
-	RTM_DELTCLASS                               = 0x29
-	RTM_DELTFILTER                              = 0x2d
-	RTM_F_CLONED                                = 0x200
-	RTM_F_EQUALIZE                              = 0x400
-	RTM_F_FIB_MATCH                             = 0x2000
-	RTM_F_LOOKUP_TABLE                          = 0x1000
-	RTM_F_NOTIFY                                = 0x100
-	RTM_F_PREFIX                                = 0x800
-	RTM_GETACTION                               = 0x32
-	RTM_GETADDR                                 = 0x16
-	RTM_GETADDRLABEL                            = 0x4a
-	RTM_GETANYCAST                              = 0x3e
-	RTM_GETCHAIN                                = 0x66
-	RTM_GETDCB                                  = 0x4e
-	RTM_GETLINK                                 = 0x12
-	RTM_GETLINKPROP                             = 0x6e
-	RTM_GETMDB                                  = 0x56
-	RTM_GETMULTICAST                            = 0x3a
-	RTM_GETNEIGH                                = 0x1e
-	RTM_GETNEIGHTBL                             = 0x42
-	RTM_GETNETCONF                              = 0x52
-	RTM_GETNEXTHOP                              = 0x6a
-	RTM_GETNSID                                 = 0x5a
-	RTM_GETQDISC                                = 0x26
-	RTM_GETROUTE                                = 0x1a
-	RTM_GETRULE                                 = 0x22
-	RTM_GETSTATS                                = 0x5e
-	RTM_GETTCLASS                               = 0x2a
-	RTM_GETTFILTER                              = 0x2e
-	RTM_MAX                                     = 0x6f
-	RTM_NEWACTION                               = 0x30
-	RTM_NEWADDR                                 = 0x14
-	RTM_NEWADDRLABEL                            = 0x48
-	RTM_NEWCACHEREPORT                          = 0x60
-	RTM_NEWCHAIN                                = 0x64
-	RTM_NEWLINK                                 = 0x10
-	RTM_NEWLINKPROP                             = 0x6c
-	RTM_NEWMDB                                  = 0x54
-	RTM_NEWNDUSEROPT                            = 0x44
-	RTM_NEWNEIGH                                = 0x1c
-	RTM_NEWNEIGHTBL                             = 0x40
-	RTM_NEWNETCONF                              = 0x50
-	RTM_NEWNEXTHOP                              = 0x68
-	RTM_NEWNSID                                 = 0x58
-	RTM_NEWPREFIX                               = 0x34
-	RTM_NEWQDISC                                = 0x24
-	RTM_NEWROUTE                                = 0x18
-	RTM_NEWRULE                                 = 0x20
-	RTM_NEWSTATS                                = 0x5c
-	RTM_NEWTCLASS                               = 0x28
-	RTM_NEWTFILTER                              = 0x2c
-	RTM_NR_FAMILIES                             = 0x18
-	RTM_NR_MSGTYPES                             = 0x60
-	RTM_SETDCB                                  = 0x4f
-	RTM_SETLINK                                 = 0x13
-	RTM_SETNEIGHTBL                             = 0x43
-	RTNH_ALIGNTO                                = 0x4
-	RTNH_COMPARE_MASK                           = 0x19
-	RTNH_F_DEAD                                 = 0x1
-	RTNH_F_LINKDOWN                             = 0x10
-	RTNH_F_OFFLOAD                              = 0x8
-	RTNH_F_ONLINK                               = 0x4
-	RTNH_F_PERVASIVE                            = 0x2
-	RTNH_F_UNRESOLVED                           = 0x20
-	RTN_MAX                                     = 0xb
-	RTPROT_BABEL                                = 0x2a
-	RTPROT_BGP                                  = 0xba
-	RTPROT_BIRD                                 = 0xc
-	RTPROT_BOOT                                 = 0x3
-	RTPROT_DHCP                                 = 0x10
-	RTPROT_DNROUTED                             = 0xd
-	RTPROT_EIGRP                                = 0xc0
-	RTPROT_GATED                                = 0x8
-	RTPROT_ISIS                                 = 0xbb
-	RTPROT_KERNEL                               = 0x2
-	RTPROT_MROUTED                              = 0x11
-	RTPROT_MRT                                  = 0xa
-	RTPROT_NTK                                  = 0xf
-	RTPROT_OSPF                                 = 0xbc
-	RTPROT_RA                                   = 0x9
-	RTPROT_REDIRECT                             = 0x1
-	RTPROT_RIP                                  = 0xbd
-	RTPROT_STATIC                               = 0x4
-	RTPROT_UNSPEC                               = 0x0
-	RTPROT_XORP                                 = 0xe
-	RTPROT_ZEBRA                                = 0xb
-	RT_CLASS_DEFAULT                            = 0xfd
-	RT_CLASS_LOCAL                              = 0xff
-	RT_CLASS_MAIN                               = 0xfe
-	RT_CLASS_MAX                                = 0xff
-	RT_CLASS_UNSPEC                             = 0x0
-	RUSAGE_CHILDREN                             = -0x1
-	RUSAGE_SELF                                 = 0x0
-	RUSAGE_THREAD                               = 0x1
-	RWF_APPEND                                  = 0x10
-	RWF_DSYNC                                   = 0x2
-	RWF_HIPRI                                   = 0x1
-	RWF_NOWAIT                                  = 0x8
-	RWF_SUPPORTED                               = 0x1f
-	RWF_SYNC                                    = 0x4
-	RWF_WRITE_LIFE_NOT_SET                      = 0x0
-	SCM_CREDENTIALS                             = 0x2
-	SCM_RIGHTS                                  = 0x1
-	SCM_TIMESTAMP                               = 0x1d
-	SCM_TIMESTAMPING                            = 0x23
-	SCM_TIMESTAMPING_OPT_STATS                  = 0x38
-	SCM_TIMESTAMPING_PKTINFO                    = 0x3c
-	SCM_TIMESTAMPNS                             = 0x21
-	SCM_TXTIME                                  = 0x3f
-	SCM_WIFI_STATUS                             = 0x25
-	SC_LOG_FLUSH                                = 0x100000
-	SECCOMP_MODE_DISABLED                       = 0x0
-	SECCOMP_MODE_FILTER                         = 0x2
-	SECCOMP_MODE_STRICT                         = 0x1
-	SECURITYFS_MAGIC                            = 0x73636673
-	SELINUX_MAGIC                               = 0xf97cff8c
-	SFD_CLOEXEC                                 = 0x400000
-	SFD_NONBLOCK                                = 0x4000
-	SHUT_RD                                     = 0x0
-	SHUT_RDWR                                   = 0x2
-	SHUT_WR                                     = 0x1
-	SIOCADDDLCI                                 = 0x8980
-	SIOCADDMULTI                                = 0x8931
-	SIOCADDRT                                   = 0x890b
-	SIOCATMARK                                  = 0x8905
-	SIOCBONDCHANGEACTIVE                        = 0x8995
-	SIOCBONDENSLAVE                             = 0x8990
-	SIOCBONDINFOQUERY                           = 0x8994
-	SIOCBONDRELEASE                             = 0x8991
-	SIOCBONDSETHWADDR                           = 0x8992
-	SIOCBONDSLAVEINFOQUERY                      = 0x8993
-	SIOCBRADDBR                                 = 0x89a0
-	SIOCBRADDIF                                 = 0x89a2
-	SIOCBRDELBR                                 = 0x89a1
-	SIOCBRDELIF                                 = 0x89a3
-	SIOCDARP                                    = 0x8953
-	SIOCDELDLCI                                 = 0x8981
-	SIOCDELMULTI                                = 0x8932
-	SIOCDELRT                                   = 0x890c
-	SIOCDEVPRIVATE                              = 0x89f0
-	SIOCDIFADDR                                 = 0x8936
-	SIOCDRARP                                   = 0x8960
-	SIOCETHTOOL                                 = 0x8946
-	SIOCGARP                                    = 0x8954
-	SIOCGETLINKNAME                             = 0x89e0
-	SIOCGETNODEID                               = 0x89e1
-	SIOCGHWTSTAMP                               = 0x89b1
-	SIOCGIFADDR                                 = 0x8915
-	SIOCGIFBR                                   = 0x8940
-	SIOCGIFBRDADDR                              = 0x8919
-	SIOCGIFCONF                                 = 0x8912
-	SIOCGIFCOUNT                                = 0x8938
-	SIOCGIFDSTADDR                              = 0x8917
-	SIOCGIFENCAP                                = 0x8925
-	SIOCGIFFLAGS                                = 0x8913
-	SIOCGIFHWADDR                               = 0x8927
-	SIOCGIFINDEX                                = 0x8933
-	SIOCGIFMAP                                  = 0x8970
-	SIOCGIFMEM                                  = 0x891f
-	SIOCGIFMETRIC                               = 0x891d
-	SIOCGIFMTU                                  = 0x8921
-	SIOCGIFNAME                                 = 0x8910
-	SIOCGIFNETMASK                              = 0x891b
-	SIOCGIFPFLAGS                               = 0x8935
-	SIOCGIFSLAVE                                = 0x8929
-	SIOCGIFTXQLEN                               = 0x8942
-	SIOCGIFVLAN                                 = 0x8982
-	SIOCGMIIPHY                                 = 0x8947
-	SIOCGMIIREG                                 = 0x8948
-	SIOCGPGRP                                   = 0x8904
-	SIOCGPPPCSTATS                              = 0x89f2
-	SIOCGPPPSTATS                               = 0x89f0
-	SIOCGPPPVER                                 = 0x89f1
-	SIOCGRARP                                   = 0x8961
-	SIOCGSKNS                                   = 0x894c
-	SIOCGSTAMP                                  = 0x8906
-	SIOCGSTAMPNS                                = 0x8907
-	SIOCGSTAMPNS_NEW                            = 0x40108907
-	SIOCGSTAMPNS_OLD                            = 0x8907
-	SIOCGSTAMP_NEW                              = 0x40108906
-	SIOCGSTAMP_OLD                              = 0x8906
-	SIOCINQ                                     = 0x4004667f
-	SIOCOUTQ                                    = 0x40047473
-	SIOCOUTQNSD                                 = 0x894b
-	SIOCPROTOPRIVATE                            = 0x89e0
-	SIOCRTMSG                                   = 0x890d
-	SIOCSARP                                    = 0x8955
-	SIOCSHWTSTAMP                               = 0x89b0
-	SIOCSIFADDR                                 = 0x8916
-	SIOCSIFBR                                   = 0x8941
-	SIOCSIFBRDADDR                              = 0x891a
-	SIOCSIFDSTADDR                              = 0x8918
-	SIOCSIFENCAP                                = 0x8926
-	SIOCSIFFLAGS                                = 0x8914
-	SIOCSIFHWADDR                               = 0x8924
-	SIOCSIFHWBROADCAST                          = 0x8937
-	SIOCSIFLINK                                 = 0x8911
-	SIOCSIFMAP                                  = 0x8971
-	SIOCSIFMEM                                  = 0x8920
-	SIOCSIFMETRIC                               = 0x891e
-	SIOCSIFMTU                                  = 0x8922
-	SIOCSIFNAME                                 = 0x8923
-	SIOCSIFNETMASK                              = 0x891c
-	SIOCSIFPFLAGS                               = 0x8934
-	SIOCSIFSLAVE                                = 0x8930
-	SIOCSIFTXQLEN                               = 0x8943
-	SIOCSIFVLAN                                 = 0x8983
-	SIOCSMIIREG                                 = 0x8949
-	SIOCSPGRP                                   = 0x8902
-	SIOCSRARP                                   = 0x8962
-	SIOCWANDEV                                  = 0x894a
-	SMACK_MAGIC                                 = 0x43415d53
-	SMART_AUTOSAVE                              = 0xd2
-	SMART_AUTO_OFFLINE                          = 0xdb
-	SMART_DISABLE                               = 0xd9
-	SMART_ENABLE                                = 0xd8
-	SMART_HCYL_PASS                             = 0xc2
-	SMART_IMMEDIATE_OFFLINE                     = 0xd4
-	SMART_LCYL_PASS                             = 0x4f
-	SMART_READ_LOG_SECTOR                       = 0xd5
-	SMART_READ_THRESHOLDS                       = 0xd1
-	SMART_READ_VALUES                           = 0xd0
-	SMART_SAVE                                  = 0xd3
-	SMART_STATUS                                = 0xda
-	SMART_WRITE_LOG_SECTOR                      = 0xd6
-	SMART_WRITE_THRESHOLDS                      = 0xd7
-	SMB_SUPER_MAGIC                             = 0x517b
-	SOCKFS_MAGIC                                = 0x534f434b
-	SOCK_CLOEXEC                                = 0x400000
-	SOCK_DCCP                                   = 0x6
-	SOCK_DGRAM                                  = 0x2
-	SOCK_IOC_TYPE                               = 0x89
-	SOCK_NONBLOCK                               = 0x4000
-	SOCK_PACKET                                 = 0xa
-	SOCK_RAW                                    = 0x3
-	SOCK_RDM                                    = 0x4
-	SOCK_SEQPACKET                              = 0x5
-	SOCK_STREAM                                 = 0x1
-	SOL_AAL                                     = 0x109
-	SOL_ALG                                     = 0x117
-	SOL_ATM                                     = 0x108
-	SOL_CAIF                                    = 0x116
-	SOL_CAN_BASE                                = 0x64
-	SOL_DCCP                                    = 0x10d
-	SOL_DECNET                                  = 0x105
-	SOL_ICMPV6                                  = 0x3a
-	SOL_IP                                      = 0x0
-	SOL_IPV6                                    = 0x29
-	SOL_IRDA                                    = 0x10a
-	SOL_IUCV                                    = 0x115
-	SOL_KCM                                     = 0x119
-	SOL_LLC                                     = 0x10c
-	SOL_NETBEUI                                 = 0x10b
-	SOL_NETLINK                                 = 0x10e
-	SOL_NFC                                     = 0x118
-	SOL_PACKET                                  = 0x107
-	SOL_PNPIPE                                  = 0x113
-	SOL_PPPOL2TP                                = 0x111
-	SOL_RAW                                     = 0xff
-	SOL_RDS                                     = 0x114
-	SOL_RXRPC                                   = 0x110
-	SOL_SOCKET                                  = 0xffff
-	SOL_TCP                                     = 0x6
-	SOL_TIPC                                    = 0x10f
-	SOL_TLS                                     = 0x11a
-	SOL_X25                                     = 0x106
-	SOL_XDP                                     = 0x11b
-	SOMAXCONN                                   = 0x1000
-	SO_ACCEPTCONN                               = 0x8000
-	SO_ATTACH_BPF                               = 0x34
-	SO_ATTACH_FILTER                            = 0x1a
-	SO_ATTACH_REUSEPORT_CBPF                    = 0x35
-	SO_ATTACH_REUSEPORT_EBPF                    = 0x36
-	SO_BINDTODEVICE                             = 0xd
-	SO_BINDTOIFINDEX                            = 0x41
-	SO_BPF_EXTENSIONS                           = 0x32
-	SO_BROADCAST                                = 0x20
-	SO_BSDCOMPAT                                = 0x400
-	SO_BUSY_POLL                                = 0x30
-	SO_CNX_ADVICE                               = 0x37
-	SO_COOKIE                                   = 0x3b
-	SO_DEBUG                                    = 0x1
-	SO_DETACH_BPF                               = 0x1b
-	SO_DETACH_FILTER                            = 0x1b
-	SO_DETACH_REUSEPORT_BPF                     = 0x47
-	SO_DOMAIN                                   = 0x1029
-	SO_DONTROUTE                                = 0x10
-	SO_EE_CODE_TXTIME_INVALID_PARAM             = 0x1
-	SO_EE_CODE_TXTIME_MISSED                    = 0x2
-	SO_EE_CODE_ZEROCOPY_COPIED                  = 0x1
-	SO_EE_ORIGIN_ICMP                           = 0x2
-	SO_EE_ORIGIN_ICMP6                          = 0x3
-	SO_EE_ORIGIN_LOCAL                          = 0x1
-	SO_EE_ORIGIN_NONE                           = 0x0
-	SO_EE_ORIGIN_TIMESTAMPING                   = 0x4
-	SO_EE_ORIGIN_TXSTATUS                       = 0x4
-	SO_EE_ORIGIN_TXTIME                         = 0x6
-	SO_EE_ORIGIN_ZEROCOPY                       = 0x5
-	SO_ERROR                                    = 0x1007
-	SO_GET_FILTER                               = 0x1a
-	SO_INCOMING_CPU                             = 0x33
-	SO_INCOMING_NAPI_ID                         = 0x3a
-	SO_KEEPALIVE                                = 0x8
-	SO_LINGER                                   = 0x80
-	SO_LOCK_FILTER                              = 0x28
-	SO_MARK                                     = 0x22
-	SO_MAX_PACING_RATE                          = 0x31
-	SO_MEMINFO                                  = 0x39
-	SO_NOFCS                                    = 0x27
-	SO_NO_CHECK                                 = 0xb
-	SO_OOBINLINE                                = 0x100
-	SO_PASSCRED                                 = 0x2
-	SO_PASSSEC                                  = 0x1f
-	SO_PEEK_OFF                                 = 0x26
-	SO_PEERCRED                                 = 0x40
-	SO_PEERGROUPS                               = 0x3d
-	SO_PEERNAME                                 = 0x1c
-	SO_PEERSEC                                  = 0x1e
-	SO_PRIORITY                                 = 0xc
-	SO_PROTOCOL                                 = 0x1028
-	SO_RCVBUF                                   = 0x1002
-	SO_RCVBUFFORCE                              = 0x100b
-	SO_RCVLOWAT                                 = 0x800
-	SO_RCVTIMEO                                 = 0x2000
-	SO_RCVTIMEO_NEW                             = 0x44
-	SO_RCVTIMEO_OLD                             = 0x2000
-	SO_REUSEADDR                                = 0x4
-	SO_REUSEPORT                                = 0x200
-	SO_RXQ_OVFL                                 = 0x24
-	SO_SECURITY_AUTHENTICATION                  = 0x5001
-	SO_SECURITY_ENCRYPTION_NETWORK              = 0x5004
-	SO_SECURITY_ENCRYPTION_TRANSPORT            = 0x5002
-	SO_SELECT_ERR_QUEUE                         = 0x29
-	SO_SNDBUF                                   = 0x1001
-	SO_SNDBUFFORCE                              = 0x100a
-	SO_SNDLOWAT                                 = 0x1000
-	SO_SNDTIMEO                                 = 0x4000
-	SO_SNDTIMEO_NEW                             = 0x45
-	SO_SNDTIMEO_OLD                             = 0x4000
-	SO_TIMESTAMP                                = 0x1d
-	SO_TIMESTAMPING                             = 0x23
-	SO_TIMESTAMPING_NEW                         = 0x43
-	SO_TIMESTAMPING_OLD                         = 0x23
-	SO_TIMESTAMPNS                              = 0x21
-	SO_TIMESTAMPNS_NEW                          = 0x42
-	SO_TIMESTAMPNS_OLD                          = 0x21
-	SO_TIMESTAMP_NEW                            = 0x46
-	SO_TIMESTAMP_OLD                            = 0x1d
-	SO_TXTIME                                   = 0x3f
-	SO_TYPE                                     = 0x1008
-	SO_VM_SOCKETS_BUFFER_MAX_SIZE               = 0x2
-	SO_VM_SOCKETS_BUFFER_MIN_SIZE               = 0x1
-	SO_VM_SOCKETS_BUFFER_SIZE                   = 0x0
-	SO_VM_SOCKETS_CONNECT_TIMEOUT               = 0x6
-	SO_VM_SOCKETS_NONBLOCK_TXRX                 = 0x7
-	SO_VM_SOCKETS_PEER_HOST_VM_ID               = 0x3
-	SO_VM_SOCKETS_TRUSTED                       = 0x5
-	SO_WIFI_STATUS                              = 0x25
-	SO_ZEROCOPY                                 = 0x3e
-	SPLICE_F_GIFT                               = 0x8
-	SPLICE_F_MORE                               = 0x4
-	SPLICE_F_MOVE                               = 0x1
-	SPLICE_F_NONBLOCK                           = 0x2
-	SQUASHFS_MAGIC                              = 0x73717368
-	STACK_END_MAGIC                             = 0x57ac6e9d
-	STATX_ALL                                   = 0xfff
-	STATX_ATIME                                 = 0x20
-	STATX_ATTR_APPEND                           = 0x20
-	STATX_ATTR_AUTOMOUNT                        = 0x1000
-	STATX_ATTR_COMPRESSED                       = 0x4
-	STATX_ATTR_ENCRYPTED                        = 0x800
-	STATX_ATTR_IMMUTABLE                        = 0x10
-	STATX_ATTR_NODUMP                           = 0x40
-	STATX_ATTR_VERITY                           = 0x100000
-	STATX_BASIC_STATS                           = 0x7ff
-	STATX_BLOCKS                                = 0x400
-	STATX_BTIME                                 = 0x800
-	STATX_CTIME                                 = 0x80
-	STATX_GID                                   = 0x10
-	STATX_INO                                   = 0x100
-	STATX_MODE                                  = 0x2
-	STATX_MTIME                                 = 0x40
-	STATX_NLINK                                 = 0x4
-	STATX_SIZE                                  = 0x200
-	STATX_TYPE                                  = 0x1
-	STATX_UID                                   = 0x8
-	STATX__RESERVED                             = 0x80000000
-	SYNC_FILE_RANGE_WAIT_AFTER                  = 0x4
-	SYNC_FILE_RANGE_WAIT_BEFORE                 = 0x1
-	SYNC_FILE_RANGE_WRITE                       = 0x2
-	SYNC_FILE_RANGE_WRITE_AND_WAIT              = 0x7
-	SYSFS_MAGIC                                 = 0x62656572
-	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_IREAD                                     = 0x100
-	S_IRGRP                                     = 0x20
-	S_IROTH                                     = 0x4
-	S_IRUSR                                     = 0x100
-	S_IRWXG                                     = 0x38
-	S_IRWXO                                     = 0x7
-	S_IRWXU                                     = 0x1c0
-	S_ISGID                                     = 0x400
-	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                                        = 0x800
-	TAB2                                        = 0x1000
-	TAB3                                        = 0x1800
-	TABDLY                                      = 0x1800
-	TASKSTATS_CMD_ATTR_MAX                      = 0x4
-	TASKSTATS_CMD_MAX                           = 0x2
-	TASKSTATS_GENL_NAME                         = "TASKSTATS"
-	TASKSTATS_GENL_VERSION                      = 0x1
-	TASKSTATS_TYPE_MAX                          = 0x6
-	TASKSTATS_VERSION                           = 0x9
-	TCFLSH                                      = 0x20005407
-	TCGETA                                      = 0x40125401
-	TCGETS                                      = 0x40245408
-	TCGETS2                                     = 0x402c540c
-	TCIFLUSH                                    = 0x0
-	TCIOFF                                      = 0x2
-	TCIOFLUSH                                   = 0x2
-	TCION                                       = 0x3
-	TCOFLUSH                                    = 0x1
-	TCOOFF                                      = 0x0
-	TCOON                                       = 0x1
-	TCP_BPF_IW                                  = 0x3e9
-	TCP_BPF_SNDCWND_CLAMP                       = 0x3ea
-	TCP_CC_INFO                                 = 0x1a
-	TCP_CM_INQ                                  = 0x24
-	TCP_CONGESTION                              = 0xd
-	TCP_COOKIE_IN_ALWAYS                        = 0x1
-	TCP_COOKIE_MAX                              = 0x10
-	TCP_COOKIE_MIN                              = 0x8
-	TCP_COOKIE_OUT_NEVER                        = 0x2
-	TCP_COOKIE_PAIR_SIZE                        = 0x20
-	TCP_COOKIE_TRANSACTIONS                     = 0xf
-	TCP_CORK                                    = 0x3
-	TCP_DEFER_ACCEPT                            = 0x9
-	TCP_FASTOPEN                                = 0x17
-	TCP_FASTOPEN_CONNECT                        = 0x1e
-	TCP_FASTOPEN_KEY                            = 0x21
-	TCP_FASTOPEN_NO_COOKIE                      = 0x22
-	TCP_INFO                                    = 0xb
-	TCP_INQ                                     = 0x24
-	TCP_KEEPCNT                                 = 0x6
-	TCP_KEEPIDLE                                = 0x4
-	TCP_KEEPINTVL                               = 0x5
-	TCP_LINGER2                                 = 0x8
-	TCP_MAXSEG                                  = 0x2
-	TCP_MAXWIN                                  = 0xffff
-	TCP_MAX_WINSHIFT                            = 0xe
-	TCP_MD5SIG                                  = 0xe
-	TCP_MD5SIG_EXT                              = 0x20
-	TCP_MD5SIG_FLAG_PREFIX                      = 0x1
-	TCP_MD5SIG_MAXKEYLEN                        = 0x50
-	TCP_MSS                                     = 0x200
-	TCP_MSS_DEFAULT                             = 0x218
-	TCP_MSS_DESIRED                             = 0x4c4
-	TCP_NODELAY                                 = 0x1
-	TCP_NOTSENT_LOWAT                           = 0x19
-	TCP_QUEUE_SEQ                               = 0x15
-	TCP_QUICKACK                                = 0xc
-	TCP_REPAIR                                  = 0x13
-	TCP_REPAIR_OFF                              = 0x0
-	TCP_REPAIR_OFF_NO_WP                        = -0x1
-	TCP_REPAIR_ON                               = 0x1
-	TCP_REPAIR_OPTIONS                          = 0x16
-	TCP_REPAIR_QUEUE                            = 0x14
-	TCP_REPAIR_WINDOW                           = 0x1d
-	TCP_SAVED_SYN                               = 0x1c
-	TCP_SAVE_SYN                                = 0x1b
-	TCP_SYNCNT                                  = 0x7
-	TCP_S_DATA_IN                               = 0x4
-	TCP_S_DATA_OUT                              = 0x8
-	TCP_THIN_DUPACK                             = 0x11
-	TCP_THIN_LINEAR_TIMEOUTS                    = 0x10
-	TCP_TIMESTAMP                               = 0x18
-	TCP_TX_DELAY                                = 0x25
-	TCP_ULP                                     = 0x1f
-	TCP_USER_TIMEOUT                            = 0x12
-	TCP_WINDOW_CLAMP                            = 0xa
-	TCP_ZEROCOPY_RECEIVE                        = 0x23
-	TCSAFLUSH                                   = 0x2
-	TCSBRK                                      = 0x20005405
-	TCSBRKP                                     = 0x5425
-	TCSETA                                      = 0x80125402
-	TCSETAF                                     = 0x80125404
-	TCSETAW                                     = 0x80125403
-	TCSETS                                      = 0x80245409
-	TCSETS2                                     = 0x802c540d
-	TCSETSF                                     = 0x8024540b
-	TCSETSF2                                    = 0x802c540f
-	TCSETSW                                     = 0x8024540a
-	TCSETSW2                                    = 0x802c540e
-	TCXONC                                      = 0x20005406
-	TIMER_ABSTIME                               = 0x1
-	TIOCCBRK                                    = 0x2000747a
-	TIOCCONS                                    = 0x20007424
-	TIOCEXCL                                    = 0x2000740d
-	TIOCGDEV                                    = 0x40045432
-	TIOCGETD                                    = 0x40047400
-	TIOCGEXCL                                   = 0x40045440
-	TIOCGICOUNT                                 = 0x545d
-	TIOCGISO7816                                = 0x40285443
-	TIOCGLCKTRMIOS                              = 0x5456
-	TIOCGPGRP                                   = 0x40047483
-	TIOCGPKT                                    = 0x40045438
-	TIOCGPTLCK                                  = 0x40045439
-	TIOCGPTN                                    = 0x40047486
-	TIOCGPTPEER                                 = 0x20007489
-	TIOCGRS485                                  = 0x40205441
-	TIOCGSERIAL                                 = 0x541e
-	TIOCGSID                                    = 0x40047485
-	TIOCGSOFTCAR                                = 0x40047464
-	TIOCGWINSZ                                  = 0x40087468
-	TIOCINQ                                     = 0x4004667f
-	TIOCLINUX                                   = 0x541c
-	TIOCMBIC                                    = 0x8004746b
-	TIOCMBIS                                    = 0x8004746c
-	TIOCMGET                                    = 0x4004746a
-	TIOCMIWAIT                                  = 0x545c
-	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
-	TIOCSBRK                                    = 0x2000747b
-	TIOCSCTTY                                   = 0x20007484
-	TIOCSERCONFIG                               = 0x5453
-	TIOCSERGETLSR                               = 0x5459
-	TIOCSERGETMULTI                             = 0x545a
-	TIOCSERGSTRUCT                              = 0x5458
-	TIOCSERGWILD                                = 0x5454
-	TIOCSERSETMULTI                             = 0x545b
-	TIOCSERSWILD                                = 0x5455
-	TIOCSETD                                    = 0x80047401
-	TIOCSIG                                     = 0x80047488
-	TIOCSISO7816                                = 0xc0285444
-	TIOCSLCKTRMIOS                              = 0x5457
-	TIOCSPGRP                                   = 0x80047482
-	TIOCSPTLCK                                  = 0x80047487
-	TIOCSRS485                                  = 0xc0205442
-	TIOCSSERIAL                                 = 0x541f
-	TIOCSSOFTCAR                                = 0x80047465
-	TIOCSTART                                   = 0x2000746e
-	TIOCSTI                                     = 0x80017472
-	TIOCSTOP                                    = 0x2000746f
-	TIOCSWINSZ                                  = 0x80087467
-	TIOCVHANGUP                                 = 0x20005437
-	TIPC_ADDR_ID                                = 0x3
-	TIPC_ADDR_MCAST                             = 0x1
-	TIPC_ADDR_NAME                              = 0x2
-	TIPC_ADDR_NAMESEQ                           = 0x1
-	TIPC_AEAD_ALG_NAME                          = 0x20
-	TIPC_AEAD_KEYLEN_MAX                        = 0x24
-	TIPC_AEAD_KEYLEN_MIN                        = 0x14
-	TIPC_AEAD_KEY_SIZE_MAX                      = 0x48
-	TIPC_CFG_SRV                                = 0x0
-	TIPC_CLUSTER_BITS                           = 0xc
-	TIPC_CLUSTER_MASK                           = 0xfff000
-	TIPC_CLUSTER_OFFSET                         = 0xc
-	TIPC_CLUSTER_SIZE                           = 0xfff
-	TIPC_CONN_SHUTDOWN                          = 0x5
-	TIPC_CONN_TIMEOUT                           = 0x82
-	TIPC_CRITICAL_IMPORTANCE                    = 0x3
-	TIPC_DESTNAME                               = 0x3
-	TIPC_DEST_DROPPABLE                         = 0x81
-	TIPC_ERRINFO                                = 0x1
-	TIPC_ERR_NO_NAME                            = 0x1
-	TIPC_ERR_NO_NODE                            = 0x3
-	TIPC_ERR_NO_PORT                            = 0x2
-	TIPC_ERR_OVERLOAD                           = 0x4
-	TIPC_GROUP_JOIN                             = 0x87
-	TIPC_GROUP_LEAVE                            = 0x88
-	TIPC_GROUP_LOOPBACK                         = 0x1
-	TIPC_GROUP_MEMBER_EVTS                      = 0x2
-	TIPC_HIGH_IMPORTANCE                        = 0x2
-	TIPC_IMPORTANCE                             = 0x7f
-	TIPC_LINK_STATE                             = 0x2
-	TIPC_LOW_IMPORTANCE                         = 0x0
-	TIPC_MAX_BEARER_NAME                        = 0x20
-	TIPC_MAX_IF_NAME                            = 0x10
-	TIPC_MAX_LINK_NAME                          = 0x44
-	TIPC_MAX_MEDIA_NAME                         = 0x10
-	TIPC_MAX_USER_MSG_SIZE                      = 0x101d0
-	TIPC_MCAST_BROADCAST                        = 0x85
-	TIPC_MCAST_REPLICAST                        = 0x86
-	TIPC_MEDIUM_IMPORTANCE                      = 0x1
-	TIPC_NODEID_LEN                             = 0x10
-	TIPC_NODELAY                                = 0x8a
-	TIPC_NODE_BITS                              = 0xc
-	TIPC_NODE_MASK                              = 0xfff
-	TIPC_NODE_OFFSET                            = 0x0
-	TIPC_NODE_RECVQ_DEPTH                       = 0x83
-	TIPC_NODE_SIZE                              = 0xfff
-	TIPC_NODE_STATE                             = 0x0
-	TIPC_OK                                     = 0x0
-	TIPC_PUBLISHED                              = 0x1
-	TIPC_RESERVED_TYPES                         = 0x40
-	TIPC_RETDATA                                = 0x2
-	TIPC_SERVICE_ADDR                           = 0x2
-	TIPC_SERVICE_RANGE                          = 0x1
-	TIPC_SOCKET_ADDR                            = 0x3
-	TIPC_SOCK_RECVQ_DEPTH                       = 0x84
-	TIPC_SOCK_RECVQ_USED                        = 0x89
-	TIPC_SRC_DROPPABLE                          = 0x80
-	TIPC_SUBSCR_TIMEOUT                         = 0x3
-	TIPC_SUB_CANCEL                             = 0x4
-	TIPC_SUB_PORTS                              = 0x1
-	TIPC_SUB_SERVICE                            = 0x2
-	TIPC_TOP_SRV                                = 0x1
-	TIPC_WAIT_FOREVER                           = 0xffffffff
-	TIPC_WITHDRAWN                              = 0x2
-	TIPC_ZONE_BITS                              = 0x8
-	TIPC_ZONE_CLUSTER_MASK                      = 0xfffff000
-	TIPC_ZONE_MASK                              = 0xff000000
-	TIPC_ZONE_OFFSET                            = 0x18
-	TIPC_ZONE_SCOPE                             = 0x1
-	TIPC_ZONE_SIZE                              = 0xff
-	TMPFS_MAGIC                                 = 0x1021994
-	TOSTOP                                      = 0x100
-	TPACKET_ALIGNMENT                           = 0x10
-	TPACKET_HDRLEN                              = 0x34
-	TP_STATUS_AVAILABLE                         = 0x0
-	TP_STATUS_BLK_TMO                           = 0x20
-	TP_STATUS_COPY                              = 0x2
-	TP_STATUS_CSUMNOTREADY                      = 0x8
-	TP_STATUS_CSUM_VALID                        = 0x80
-	TP_STATUS_KERNEL                            = 0x0
-	TP_STATUS_LOSING                            = 0x4
-	TP_STATUS_SENDING                           = 0x2
-	TP_STATUS_SEND_REQUEST                      = 0x1
-	TP_STATUS_TS_RAW_HARDWARE                   = 0x80000000
-	TP_STATUS_TS_SOFTWARE                       = 0x20000000
-	TP_STATUS_TS_SYS_HARDWARE                   = 0x40000000
-	TP_STATUS_USER                              = 0x1
-	TP_STATUS_VLAN_TPID_VALID                   = 0x40
-	TP_STATUS_VLAN_VALID                        = 0x10
-	TP_STATUS_WRONG_FORMAT                      = 0x4
-	TRACEFS_MAGIC                               = 0x74726163
-	TS_COMM_LEN                                 = 0x20
-	TUNATTACHFILTER                             = 0x801054d5
-	TUNDETACHFILTER                             = 0x801054d6
-	TUNGETDEVNETNS                              = 0x200054e3
-	TUNGETFEATURES                              = 0x400454cf
-	TUNGETFILTER                                = 0x401054db
-	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
-	UDF_SUPER_MAGIC                             = 0x15013346
-	UMOUNT_NOFOLLOW                             = 0x8
-	USBDEVICE_SUPER_MAGIC                       = 0x9fa2
-	UTIME_NOW                                   = 0x3fffffff
-	UTIME_OMIT                                  = 0x3ffffffe
-	V9FS_MAGIC                                  = 0x1021997
-	VDISCARD                                    = 0xd
-	VEOF                                        = 0x4
-	VEOL                                        = 0xb
-	VEOL2                                       = 0x10
-	VERASE                                      = 0x2
-	VINTR                                       = 0x0
-	VKILL                                       = 0x3
-	VLNEXT                                      = 0xf
-	VMADDR_CID_ANY                              = 0xffffffff
-	VMADDR_CID_HOST                             = 0x2
-	VMADDR_CID_HYPERVISOR                       = 0x0
-	VMADDR_CID_RESERVED                         = 0x1
-	VMADDR_PORT_ANY                             = 0xffffffff
-	VMIN                                        = 0x6
-	VM_SOCKETS_INVALID_VERSION                  = 0xffffffff
-	VQUIT                                       = 0x1
-	VREPRINT                                    = 0xc
-	VSTART                                      = 0x8
-	VSTOP                                       = 0x9
-	VSUSP                                       = 0xa
-	VSWTC                                       = 0x7
-	VT0                                         = 0x0
-	VT1                                         = 0x4000
-	VTDLY                                       = 0x4000
-	VTIME                                       = 0x5
-	VWERASE                                     = 0xe
-	WALL                                        = 0x40000000
-	WCLONE                                      = 0x80000000
-	WCONTINUED                                  = 0x8
-	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
-	WDIOC_SETPRETIMEOUT                         = 0xc0045708
-	WDIOC_SETTIMEOUT                            = 0xc0045706
-	WEXITED                                     = 0x4
-	WIN_ACKMEDIACHANGE                          = 0xdb
-	WIN_CHECKPOWERMODE1                         = 0xe5
-	WIN_CHECKPOWERMODE2                         = 0x98
-	WIN_DEVICE_RESET                            = 0x8
-	WIN_DIAGNOSE                                = 0x90
-	WIN_DOORLOCK                                = 0xde
-	WIN_DOORUNLOCK                              = 0xdf
-	WIN_DOWNLOAD_MICROCODE                      = 0x92
-	WIN_FLUSH_CACHE                             = 0xe7
-	WIN_FLUSH_CACHE_EXT                         = 0xea
-	WIN_FORMAT                                  = 0x50
-	WIN_GETMEDIASTATUS                          = 0xda
-	WIN_IDENTIFY                                = 0xec
-	WIN_IDENTIFY_DMA                            = 0xee
-	WIN_IDLEIMMEDIATE                           = 0xe1
-	WIN_INIT                                    = 0x60
-	WIN_MEDIAEJECT                              = 0xed
-	WIN_MULTREAD                                = 0xc4
-	WIN_MULTREAD_EXT                            = 0x29
-	WIN_MULTWRITE                               = 0xc5
-	WIN_MULTWRITE_EXT                           = 0x39
-	WIN_NOP                                     = 0x0
-	WIN_PACKETCMD                               = 0xa0
-	WIN_PIDENTIFY                               = 0xa1
-	WIN_POSTBOOT                                = 0xdc
-	WIN_PREBOOT                                 = 0xdd
-	WIN_QUEUED_SERVICE                          = 0xa2
-	WIN_READ                                    = 0x20
-	WIN_READDMA                                 = 0xc8
-	WIN_READDMA_EXT                             = 0x25
-	WIN_READDMA_ONCE                            = 0xc9
-	WIN_READDMA_QUEUED                          = 0xc7
-	WIN_READDMA_QUEUED_EXT                      = 0x26
-	WIN_READ_BUFFER                             = 0xe4
-	WIN_READ_EXT                                = 0x24
-	WIN_READ_LONG                               = 0x22
-	WIN_READ_LONG_ONCE                          = 0x23
-	WIN_READ_NATIVE_MAX                         = 0xf8
-	WIN_READ_NATIVE_MAX_EXT                     = 0x27
-	WIN_READ_ONCE                               = 0x21
-	WIN_RECAL                                   = 0x10
-	WIN_RESTORE                                 = 0x10
-	WIN_SECURITY_DISABLE                        = 0xf6
-	WIN_SECURITY_ERASE_PREPARE                  = 0xf3
-	WIN_SECURITY_ERASE_UNIT                     = 0xf4
-	WIN_SECURITY_FREEZE_LOCK                    = 0xf5
-	WIN_SECURITY_SET_PASS                       = 0xf1
-	WIN_SECURITY_UNLOCK                         = 0xf2
-	WIN_SEEK                                    = 0x70
-	WIN_SETFEATURES                             = 0xef
-	WIN_SETIDLE1                                = 0xe3
-	WIN_SETIDLE2                                = 0x97
-	WIN_SETMULT                                 = 0xc6
-	WIN_SET_MAX                                 = 0xf9
-	WIN_SET_MAX_EXT                             = 0x37
-	WIN_SLEEPNOW1                               = 0xe6
-	WIN_SLEEPNOW2                               = 0x99
-	WIN_SMART                                   = 0xb0
-	WIN_SPECIFY                                 = 0x91
-	WIN_SRST                                    = 0x8
-	WIN_STANDBY                                 = 0xe2
-	WIN_STANDBY2                                = 0x96
-	WIN_STANDBYNOW1                             = 0xe0
-	WIN_STANDBYNOW2                             = 0x94
-	WIN_VERIFY                                  = 0x40
-	WIN_VERIFY_EXT                              = 0x42
-	WIN_VERIFY_ONCE                             = 0x41
-	WIN_WRITE                                   = 0x30
-	WIN_WRITEDMA                                = 0xca
-	WIN_WRITEDMA_EXT                            = 0x35
-	WIN_WRITEDMA_ONCE                           = 0xcb
-	WIN_WRITEDMA_QUEUED                         = 0xcc
-	WIN_WRITEDMA_QUEUED_EXT                     = 0x36
-	WIN_WRITE_BUFFER                            = 0xe8
-	WIN_WRITE_EXT                               = 0x34
-	WIN_WRITE_LONG                              = 0x32
-	WIN_WRITE_LONG_ONCE                         = 0x33
-	WIN_WRITE_ONCE                              = 0x31
-	WIN_WRITE_SAME                              = 0xe9
-	WIN_WRITE_VERIFY                            = 0x3c
-	WNOHANG                                     = 0x1
-	WNOTHREAD                                   = 0x20000000
-	WNOWAIT                                     = 0x1000000
-	WORDSIZE                                    = 0x40
-	WSTOPPED                                    = 0x2
-	WUNTRACED                                   = 0x2
-	XATTR_CREATE                                = 0x1
-	XATTR_REPLACE                               = 0x2
-	XCASE                                       = 0x4
-	XDP_COPY                                    = 0x2
-	XDP_FLAGS_DRV_MODE                          = 0x4
-	XDP_FLAGS_HW_MODE                           = 0x8
-	XDP_FLAGS_MASK                              = 0xf
-	XDP_FLAGS_MODES                             = 0xe
-	XDP_FLAGS_SKB_MODE                          = 0x2
-	XDP_FLAGS_UPDATE_IF_NOEXIST                 = 0x1
-	XDP_MMAP_OFFSETS                            = 0x1
-	XDP_OPTIONS                                 = 0x8
-	XDP_OPTIONS_ZEROCOPY                        = 0x1
-	XDP_PACKET_HEADROOM                         = 0x100
-	XDP_PGOFF_RX_RING                           = 0x0
-	XDP_PGOFF_TX_RING                           = 0x80000000
-	XDP_RING_NEED_WAKEUP                        = 0x1
-	XDP_RX_RING                                 = 0x2
-	XDP_SHARED_UMEM                             = 0x1
-	XDP_STATISTICS                              = 0x7
-	XDP_TX_RING                                 = 0x3
-	XDP_UMEM_COMPLETION_RING                    = 0x6
-	XDP_UMEM_FILL_RING                          = 0x5
-	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000
-	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000
-	XDP_UMEM_REG                                = 0x4
-	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
-	XDP_USE_NEED_WAKEUP                         = 0x8
-	XDP_ZEROCOPY                                = 0x4
-	XENFS_SUPER_MAGIC                           = 0xabba1974
-	XFS_SUPER_MAGIC                             = 0x58465342
-	XTABS                                       = 0x1800
-	Z3FOLD_MAGIC                                = 0x33
-	ZSMALLOC_MAGIC                              = 0x58295829
-	__TIOCFLUSH                                 = 0x80047410
+	ASI_LEON_DFLUSH                  = 0x11
+	ASI_LEON_IFLUSH                  = 0x10
+	ASI_LEON_MMUFLUSH                = 0x18
+	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                        = 0x40081270
+	BLKBSZSET                        = 0x80081271
+	BLKFLSBUF                        = 0x20001261
+	BLKFRAGET                        = 0x20001265
+	BLKFRASET                        = 0x20001264
+	BLKGETSIZE                       = 0x20001260
+	BLKGETSIZE64                     = 0x40081272
+	BLKPBSZGET                       = 0x2000127b
+	BLKRAGET                         = 0x20001263
+	BLKRASET                         = 0x20001262
+	BLKROGET                         = 0x2000125e
+	BLKROSET                         = 0x2000125d
+	BLKRRPART                        = 0x2000125f
+	BLKSECTGET                       = 0x20001267
+	BLKSECTSET                       = 0x20001266
+	BLKSSZGET                        = 0x20001268
+	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
+	ECHOCTL                          = 0x200
+	ECHOE                            = 0x10
+	ECHOK                            = 0x20
+	ECHOKE                           = 0x800
+	ECHONL                           = 0x40
+	ECHOPRT                          = 0x400
+	EFD_CLOEXEC                      = 0x400000
+	EFD_NONBLOCK                     = 0x4000
+	EMT_TAGOVF                       = 0x1
+	EPOLL_CLOEXEC                    = 0x400000
+	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
+	F_GETOWN                         = 0x5
+	F_RDLCK                          = 0x1
+	F_SETLK                          = 0x8
+	F_SETLK64                        = 0x8
+	F_SETLKW                         = 0x9
+	F_SETLKW64                       = 0x9
+	F_SETOWN                         = 0x6
+	F_UNLCK                          = 0x3
+	F_WRLCK                          = 0x2
+	HUPCL                            = 0x400
+	ICANON                           = 0x2
+	IEXTEN                           = 0x8000
+	IN_CLOEXEC                       = 0x400000
+	IN_NONBLOCK                      = 0x4000
+	IOCTL_VM_SOCKETS_GET_LOCAL_CID   = 0x200007b9
+	ISIG                             = 0x1
+	IUCLC                            = 0x200
+	IXOFF                            = 0x1000
+	IXON                             = 0x400
+	MAP_ANON                         = 0x20
+	MAP_ANONYMOUS                    = 0x20
+	MAP_DENYWRITE                    = 0x800
+	MAP_EXECUTABLE                   = 0x1000
+	MAP_GROWSDOWN                    = 0x200
+	MAP_HUGETLB                      = 0x40000
+	MAP_LOCKED                       = 0x100
+	MAP_NONBLOCK                     = 0x10000
+	MAP_NORESERVE                    = 0x40
+	MAP_POPULATE                     = 0x8000
+	MAP_RENAME                       = 0x20
+	MAP_STACK                        = 0x20000
+	MAP_SYNC                         = 0x80000
+	MCL_CURRENT                      = 0x2000
+	MCL_FUTURE                       = 0x4000
+	MCL_ONFAULT                      = 0x8000
+	NFDBITS                          = 0x40
+	NLDLY                            = 0x100
+	NOFLSH                           = 0x80
+	NS_GET_NSTYPE                    = 0x2000b703
+	NS_GET_OWNER_UID                 = 0x2000b704
+	NS_GET_PARENT                    = 0x2000b702
+	NS_GET_USERNS                    = 0x2000b701
+	OLCUC                            = 0x2
+	ONLCR                            = 0x4
+	O_APPEND                         = 0x8
+	O_ASYNC                          = 0x40
+	O_CLOEXEC                        = 0x400000
+	O_CREAT                          = 0x200
+	O_DIRECT                         = 0x100000
+	O_DIRECTORY                      = 0x10000
+	O_DSYNC                          = 0x2000
+	O_EXCL                           = 0x800
+	O_FSYNC                          = 0x802000
+	O_LARGEFILE                      = 0x0
+	O_NDELAY                         = 0x4004
+	O_NOATIME                        = 0x200000
+	O_NOCTTY                         = 0x8000
+	O_NOFOLLOW                       = 0x20000
+	O_NONBLOCK                       = 0x4000
+	O_PATH                           = 0x1000000
+	O_RSYNC                          = 0x802000
+	O_SYNC                           = 0x802000
+	O_TMPFILE                        = 0x2010000
+	O_TRUNC                          = 0x400
+	PARENB                           = 0x100
+	PARODD                           = 0x200
+	PENDIN                           = 0x4000
+	PERF_EVENT_IOC_DISABLE           = 0x20002401
+	PERF_EVENT_IOC_ENABLE            = 0x20002400
+	PERF_EVENT_IOC_ID                = 0x40082407
+	PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
+	PERF_EVENT_IOC_PAUSE_OUTPUT      = 0x80042409
+	PERF_EVENT_IOC_PERIOD            = 0x80082404
+	PERF_EVENT_IOC_QUERY_BPF         = 0xc008240a
+	PERF_EVENT_IOC_REFRESH           = 0x20002402
+	PERF_EVENT_IOC_RESET             = 0x20002403
+	PERF_EVENT_IOC_SET_BPF           = 0x80042408
+	PERF_EVENT_IOC_SET_FILTER        = 0x80082406
+	PERF_EVENT_IOC_SET_OUTPUT        = 0x20002405
+	PPPIOCATTACH                     = 0x8004743d
+	PPPIOCATTCHAN                    = 0x80047438
+	PPPIOCCONNECT                    = 0x8004743a
+	PPPIOCDETACH                     = 0x8004743c
+	PPPIOCDISCONN                    = 0x20007439
+	PPPIOCGASYNCMAP                  = 0x40047458
+	PPPIOCGCHAN                      = 0x40047437
+	PPPIOCGDEBUG                     = 0x40047441
+	PPPIOCGFLAGS                     = 0x4004745a
+	PPPIOCGIDLE                      = 0x4010743f
+	PPPIOCGIDLE32                    = 0x4008743f
+	PPPIOCGIDLE64                    = 0x4010743f
+	PPPIOCGL2TPSTATS                 = 0x40487436
+	PPPIOCGMRU                       = 0x40047453
+	PPPIOCGRASYNCMAP                 = 0x40047455
+	PPPIOCGUNIT                      = 0x40047456
+	PPPIOCGXASYNCMAP                 = 0x40207450
+	PPPIOCSACTIVE                    = 0x80107446
+	PPPIOCSASYNCMAP                  = 0x80047457
+	PPPIOCSCOMPRESS                  = 0x8010744d
+	PPPIOCSDEBUG                     = 0x80047440
+	PPPIOCSFLAGS                     = 0x80047459
+	PPPIOCSMAXCID                    = 0x80047451
+	PPPIOCSMRRU                      = 0x8004743b
+	PPPIOCSMRU                       = 0x80047452
+	PPPIOCSNPMODE                    = 0x8008744b
+	PPPIOCSPASS                      = 0x80107447
+	PPPIOCSRASYNCMAP                 = 0x80047454
+	PPPIOCSXASYNCMAP                 = 0x8020744f
+	PPPIOCXFERUNIT                   = 0x2000744e
+	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
+	PTRACE_GETFPAREGS                = 0x14
+	PTRACE_GETFPREGS                 = 0xe
+	PTRACE_GETFPREGS64               = 0x19
+	PTRACE_GETREGS64                 = 0x16
+	PTRACE_READDATA                  = 0x10
+	PTRACE_READTEXT                  = 0x12
+	PTRACE_SETFPAREGS                = 0x15
+	PTRACE_SETFPREGS                 = 0xf
+	PTRACE_SETFPREGS64               = 0x1a
+	PTRACE_SETREGS64                 = 0x17
+	PTRACE_SPARC_DETACH              = 0xb
+	PTRACE_WRITEDATA                 = 0x11
+	PTRACE_WRITETEXT                 = 0x13
+	PT_FP                            = 0x48
+	PT_G0                            = 0x10
+	PT_G1                            = 0x14
+	PT_G2                            = 0x18
+	PT_G3                            = 0x1c
+	PT_G4                            = 0x20
+	PT_G5                            = 0x24
+	PT_G6                            = 0x28
+	PT_G7                            = 0x2c
+	PT_I0                            = 0x30
+	PT_I1                            = 0x34
+	PT_I2                            = 0x38
+	PT_I3                            = 0x3c
+	PT_I4                            = 0x40
+	PT_I5                            = 0x44
+	PT_I6                            = 0x48
+	PT_I7                            = 0x4c
+	PT_NPC                           = 0x8
+	PT_PC                            = 0x4
+	PT_PSR                           = 0x0
+	PT_REGS_MAGIC                    = 0x57ac6c00
+	PT_TNPC                          = 0x90
+	PT_TPC                           = 0x88
+	PT_TSTATE                        = 0x80
+	PT_V9_FP                         = 0x70
+	PT_V9_G0                         = 0x0
+	PT_V9_G1                         = 0x8
+	PT_V9_G2                         = 0x10
+	PT_V9_G3                         = 0x18
+	PT_V9_G4                         = 0x20
+	PT_V9_G5                         = 0x28
+	PT_V9_G6                         = 0x30
+	PT_V9_G7                         = 0x38
+	PT_V9_I0                         = 0x40
+	PT_V9_I1                         = 0x48
+	PT_V9_I2                         = 0x50
+	PT_V9_I3                         = 0x58
+	PT_V9_I4                         = 0x60
+	PT_V9_I5                         = 0x68
+	PT_V9_I6                         = 0x70
+	PT_V9_I7                         = 0x78
+	PT_V9_MAGIC                      = 0x9c
+	PT_V9_TNPC                       = 0x90
+	PT_V9_TPC                        = 0x88
+	PT_V9_TSTATE                     = 0x80
+	PT_V9_Y                          = 0x98
+	PT_WIM                           = 0x10
+	PT_Y                             = 0xc
+	RLIMIT_AS                        = 0x9
+	RLIMIT_MEMLOCK                   = 0x8
+	RLIMIT_NOFILE                    = 0x6
+	RLIMIT_NPROC                     = 0x7
+	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                   = 0x4008700d
+	RTC_EPOCH_SET                    = 0x8008700e
+	RTC_IRQP_READ                    = 0x4008700b
+	RTC_IRQP_SET                     = 0x8008700c
+	RTC_PIE_OFF                      = 0x20007006
+	RTC_PIE_ON                       = 0x20007005
+	RTC_PLL_GET                      = 0x40207011
+	RTC_PLL_SET                      = 0x80207012
+	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                 = 0x23
+	SCM_TIMESTAMPING_OPT_STATS       = 0x38
+	SCM_TIMESTAMPING_PKTINFO         = 0x3c
+	SCM_TIMESTAMPNS                  = 0x21
+	SCM_TXTIME                       = 0x3f
+	SCM_WIFI_STATUS                  = 0x25
+	SFD_CLOEXEC                      = 0x400000
+	SFD_NONBLOCK                     = 0x4000
+	SIOCATMARK                       = 0x8905
+	SIOCGPGRP                        = 0x8904
+	SIOCGSTAMPNS_NEW                 = 0x40108907
+	SIOCGSTAMP_NEW                   = 0x40108906
+	SIOCINQ                          = 0x4004667f
+	SIOCOUTQ                         = 0x40047473
+	SIOCSPGRP                        = 0x8902
+	SOCK_CLOEXEC                     = 0x400000
+	SOCK_DGRAM                       = 0x2
+	SOCK_NONBLOCK                    = 0x4000
+	SOCK_STREAM                      = 0x1
+	SOL_SOCKET                       = 0xffff
+	SO_ACCEPTCONN                    = 0x8000
+	SO_ATTACH_BPF                    = 0x34
+	SO_ATTACH_REUSEPORT_CBPF         = 0x35
+	SO_ATTACH_REUSEPORT_EBPF         = 0x36
+	SO_BINDTODEVICE                  = 0xd
+	SO_BINDTOIFINDEX                 = 0x41
+	SO_BPF_EXTENSIONS                = 0x32
+	SO_BROADCAST                     = 0x20
+	SO_BSDCOMPAT                     = 0x400
+	SO_BUSY_POLL                     = 0x30
+	SO_CNX_ADVICE                    = 0x37
+	SO_COOKIE                        = 0x3b
+	SO_DETACH_REUSEPORT_BPF          = 0x47
+	SO_DOMAIN                        = 0x1029
+	SO_DONTROUTE                     = 0x10
+	SO_ERROR                         = 0x1007
+	SO_INCOMING_CPU                  = 0x33
+	SO_INCOMING_NAPI_ID              = 0x3a
+	SO_KEEPALIVE                     = 0x8
+	SO_LINGER                        = 0x80
+	SO_LOCK_FILTER                   = 0x28
+	SO_MARK                          = 0x22
+	SO_MAX_PACING_RATE               = 0x31
+	SO_MEMINFO                       = 0x39
+	SO_NOFCS                         = 0x27
+	SO_OOBINLINE                     = 0x100
+	SO_PASSCRED                      = 0x2
+	SO_PASSSEC                       = 0x1f
+	SO_PEEK_OFF                      = 0x26
+	SO_PEERCRED                      = 0x40
+	SO_PEERGROUPS                    = 0x3d
+	SO_PEERSEC                       = 0x1e
+	SO_PROTOCOL                      = 0x1028
+	SO_RCVBUF                        = 0x1002
+	SO_RCVBUFFORCE                   = 0x100b
+	SO_RCVLOWAT                      = 0x800
+	SO_RCVTIMEO                      = 0x2000
+	SO_RCVTIMEO_NEW                  = 0x44
+	SO_RCVTIMEO_OLD                  = 0x2000
+	SO_REUSEADDR                     = 0x4
+	SO_REUSEPORT                     = 0x200
+	SO_RXQ_OVFL                      = 0x24
+	SO_SECURITY_AUTHENTICATION       = 0x5001
+	SO_SECURITY_ENCRYPTION_NETWORK   = 0x5004
+	SO_SECURITY_ENCRYPTION_TRANSPORT = 0x5002
+	SO_SELECT_ERR_QUEUE              = 0x29
+	SO_SNDBUF                        = 0x1001
+	SO_SNDBUFFORCE                   = 0x100a
+	SO_SNDLOWAT                      = 0x1000
+	SO_SNDTIMEO                      = 0x4000
+	SO_SNDTIMEO_NEW                  = 0x45
+	SO_SNDTIMEO_OLD                  = 0x4000
+	SO_TIMESTAMPING                  = 0x23
+	SO_TIMESTAMPING_NEW              = 0x43
+	SO_TIMESTAMPING_OLD              = 0x23
+	SO_TIMESTAMPNS                   = 0x21
+	SO_TIMESTAMPNS_NEW               = 0x42
+	SO_TIMESTAMPNS_OLD               = 0x21
+	SO_TIMESTAMP_NEW                 = 0x46
+	SO_TXTIME                        = 0x3f
+	SO_TYPE                          = 0x1008
+	SO_WIFI_STATUS                   = 0x25
+	SO_ZEROCOPY                      = 0x3e
+	TAB1                             = 0x800
+	TAB2                             = 0x1000
+	TAB3                             = 0x1800
+	TABDLY                           = 0x1800
+	TCFLSH                           = 0x20005407
+	TCGETA                           = 0x40125401
+	TCGETS                           = 0x40245408
+	TCGETS2                          = 0x402c540c
+	TCSAFLUSH                        = 0x2
+	TCSBRK                           = 0x20005405
+	TCSBRKP                          = 0x5425
+	TCSETA                           = 0x80125402
+	TCSETAF                          = 0x80125404
+	TCSETAW                          = 0x80125403
+	TCSETS                           = 0x80245409
+	TCSETS2                          = 0x802c540d
+	TCSETSF                          = 0x8024540b
+	TCSETSF2                         = 0x802c540f
+	TCSETSW                          = 0x8024540a
+	TCSETSW2                         = 0x802c540e
+	TCXONC                           = 0x20005406
+	TFD_CLOEXEC                      = 0x400000
+	TFD_NONBLOCK                     = 0x4000
+	TIOCCBRK                         = 0x2000747a
+	TIOCCONS                         = 0x20007424
+	TIOCEXCL                         = 0x2000740d
+	TIOCGDEV                         = 0x40045432
+	TIOCGETD                         = 0x40047400
+	TIOCGEXCL                        = 0x40045440
+	TIOCGICOUNT                      = 0x545d
+	TIOCGISO7816                     = 0x40285443
+	TIOCGLCKTRMIOS                   = 0x5456
+	TIOCGPGRP                        = 0x40047483
+	TIOCGPKT                         = 0x40045438
+	TIOCGPTLCK                       = 0x40045439
+	TIOCGPTN                         = 0x40047486
+	TIOCGPTPEER                      = 0x20007489
+	TIOCGRS485                       = 0x40205441
+	TIOCGSERIAL                      = 0x541e
+	TIOCGSID                         = 0x40047485
+	TIOCGSOFTCAR                     = 0x40047464
+	TIOCGWINSZ                       = 0x40087468
+	TIOCINQ                          = 0x4004667f
+	TIOCLINUX                        = 0x541c
+	TIOCMBIC                         = 0x8004746b
+	TIOCMBIS                         = 0x8004746c
+	TIOCMGET                         = 0x4004746a
+	TIOCMIWAIT                       = 0x545c
+	TIOCMSET                         = 0x8004746d
+	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                        = 0x20007471
+	TIOCNXCL                         = 0x2000740e
+	TIOCOUTQ                         = 0x40047473
+	TIOCPKT                          = 0x80047470
+	TIOCSBRK                         = 0x2000747b
+	TIOCSCTTY                        = 0x20007484
+	TIOCSERCONFIG                    = 0x5453
+	TIOCSERGETLSR                    = 0x5459
+	TIOCSERGETMULTI                  = 0x545a
+	TIOCSERGSTRUCT                   = 0x5458
+	TIOCSERGWILD                     = 0x5454
+	TIOCSERSETMULTI                  = 0x545b
+	TIOCSERSWILD                     = 0x5455
+	TIOCSETD                         = 0x80047401
+	TIOCSIG                          = 0x80047488
+	TIOCSISO7816                     = 0xc0285444
+	TIOCSLCKTRMIOS                   = 0x5457
+	TIOCSPGRP                        = 0x80047482
+	TIOCSPTLCK                       = 0x80047487
+	TIOCSRS485                       = 0xc0205442
+	TIOCSSERIAL                      = 0x541f
+	TIOCSSOFTCAR                     = 0x80047465
+	TIOCSTART                        = 0x2000746e
+	TIOCSTI                          = 0x80017472
+	TIOCSTOP                         = 0x2000746f
+	TIOCSWINSZ                       = 0x80087467
+	TIOCVHANGUP                      = 0x20005437
+	TOSTOP                           = 0x100
+	TUNATTACHFILTER                  = 0x801054d5
+	TUNDETACHFILTER                  = 0x801054d6
+	TUNGETDEVNETNS                   = 0x200054e3
+	TUNGETFEATURES                   = 0x400454cf
+	TUNGETFILTER                     = 0x401054db
+	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                         = 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              = 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                         = 0x40
+	XCASE                            = 0x4
+	XTABS                            = 0x1800
+	__TIOCFLUSH                      = 0x80047410
 )
 
 // Errors
 const (
-	E2BIG           = syscall.Errno(0x7)
-	EACCES          = syscall.Errno(0xd)
 	EADDRINUSE      = syscall.Errno(0x30)
 	EADDRNOTAVAIL   = syscall.Errno(0x31)
 	EADV            = syscall.Errno(0x53)
 	EAFNOSUPPORT    = syscall.Errno(0x2f)
-	EAGAIN          = syscall.Errno(0xb)
 	EALREADY        = syscall.Errno(0x25)
 	EBADE           = syscall.Errno(0x66)
-	EBADF           = syscall.Errno(0x9)
 	EBADFD          = syscall.Errno(0x5d)
 	EBADMSG         = syscall.Errno(0x4c)
 	EBADR           = syscall.Errno(0x67)
 	EBADRQC         = syscall.Errno(0x6a)
 	EBADSLT         = syscall.Errno(0x6b)
 	EBFONT          = syscall.Errno(0x6d)
-	EBUSY           = syscall.Errno(0x10)
 	ECANCELED       = syscall.Errno(0x7f)
-	ECHILD          = syscall.Errno(0xa)
 	ECHRNG          = syscall.Errno(0x5e)
 	ECOMM           = syscall.Errno(0x55)
 	ECONNABORTED    = syscall.Errno(0x35)
@@ -2927,23 +557,15 @@ const (
 	EDEADLK         = syscall.Errno(0x4e)
 	EDEADLOCK       = syscall.Errno(0x6c)
 	EDESTADDRREQ    = syscall.Errno(0x27)
-	EDOM            = syscall.Errno(0x21)
 	EDOTDOT         = syscall.Errno(0x58)
 	EDQUOT          = syscall.Errno(0x45)
-	EEXIST          = syscall.Errno(0x11)
-	EFAULT          = syscall.Errno(0xe)
-	EFBIG           = syscall.Errno(0x1b)
 	EHOSTDOWN       = syscall.Errno(0x40)
 	EHOSTUNREACH    = syscall.Errno(0x41)
 	EHWPOISON       = syscall.Errno(0x87)
 	EIDRM           = syscall.Errno(0x4d)
 	EILSEQ          = syscall.Errno(0x7a)
 	EINPROGRESS     = syscall.Errno(0x24)
-	EINTR           = syscall.Errno(0x4)
-	EINVAL          = syscall.Errno(0x16)
-	EIO             = syscall.Errno(0x5)
 	EISCONN         = syscall.Errno(0x38)
-	EISDIR          = syscall.Errno(0x15)
 	EISNAM          = syscall.Errno(0x78)
 	EKEYEXPIRED     = syscall.Errno(0x81)
 	EKEYREJECTED    = syscall.Errno(0x83)
@@ -2960,8 +582,6 @@ const (
 	ELNRNG          = syscall.Errno(0x62)
 	ELOOP           = syscall.Errno(0x3e)
 	EMEDIUMTYPE     = syscall.Errno(0x7e)
-	EMFILE          = syscall.Errno(0x18)
-	EMLINK          = syscall.Errno(0x1f)
 	EMSGSIZE        = syscall.Errno(0x28)
 	EMULTIHOP       = syscall.Errno(0x57)
 	ENAMETOOLONG    = syscall.Errno(0x3f)
@@ -2969,102 +589,70 @@ const (
 	ENETDOWN        = syscall.Errno(0x32)
 	ENETRESET       = syscall.Errno(0x34)
 	ENETUNREACH     = syscall.Errno(0x33)
-	ENFILE          = syscall.Errno(0x17)
 	ENOANO          = syscall.Errno(0x69)
 	ENOBUFS         = syscall.Errno(0x37)
 	ENOCSI          = syscall.Errno(0x64)
 	ENODATA         = syscall.Errno(0x6f)
-	ENODEV          = syscall.Errno(0x13)
-	ENOENT          = syscall.Errno(0x2)
-	ENOEXEC         = syscall.Errno(0x8)
 	ENOKEY          = syscall.Errno(0x80)
 	ENOLCK          = syscall.Errno(0x4f)
 	ENOLINK         = syscall.Errno(0x52)
 	ENOMEDIUM       = syscall.Errno(0x7d)
-	ENOMEM          = syscall.Errno(0xc)
 	ENOMSG          = syscall.Errno(0x4b)
 	ENONET          = syscall.Errno(0x50)
 	ENOPKG          = syscall.Errno(0x71)
 	ENOPROTOOPT     = syscall.Errno(0x2a)
-	ENOSPC          = syscall.Errno(0x1c)
 	ENOSR           = syscall.Errno(0x4a)
 	ENOSTR          = syscall.Errno(0x48)
 	ENOSYS          = syscall.Errno(0x5a)
-	ENOTBLK         = syscall.Errno(0xf)
 	ENOTCONN        = syscall.Errno(0x39)
-	ENOTDIR         = syscall.Errno(0x14)
 	ENOTEMPTY       = syscall.Errno(0x42)
 	ENOTNAM         = syscall.Errno(0x76)
 	ENOTRECOVERABLE = syscall.Errno(0x85)
 	ENOTSOCK        = syscall.Errno(0x26)
 	ENOTSUP         = syscall.Errno(0x2d)
-	ENOTTY          = syscall.Errno(0x19)
 	ENOTUNIQ        = syscall.Errno(0x73)
-	ENXIO           = syscall.Errno(0x6)
 	EOPNOTSUPP      = syscall.Errno(0x2d)
 	EOVERFLOW       = syscall.Errno(0x5c)
 	EOWNERDEAD      = syscall.Errno(0x84)
-	EPERM           = syscall.Errno(0x1)
 	EPFNOSUPPORT    = syscall.Errno(0x2e)
-	EPIPE           = syscall.Errno(0x20)
 	EPROCLIM        = syscall.Errno(0x43)
 	EPROTO          = syscall.Errno(0x56)
 	EPROTONOSUPPORT = syscall.Errno(0x2b)
 	EPROTOTYPE      = syscall.Errno(0x29)
-	ERANGE          = syscall.Errno(0x22)
 	EREMCHG         = syscall.Errno(0x59)
 	EREMOTE         = syscall.Errno(0x47)
 	EREMOTEIO       = syscall.Errno(0x79)
 	ERESTART        = syscall.Errno(0x74)
 	ERFKILL         = syscall.Errno(0x86)
-	EROFS           = syscall.Errno(0x1e)
 	ERREMOTE        = syscall.Errno(0x51)
 	ESHUTDOWN       = syscall.Errno(0x3a)
 	ESOCKTNOSUPPORT = syscall.Errno(0x2c)
-	ESPIPE          = syscall.Errno(0x1d)
-	ESRCH           = syscall.Errno(0x3)
 	ESRMNT          = syscall.Errno(0x54)
 	ESTALE          = syscall.Errno(0x46)
 	ESTRPIPE        = syscall.Errno(0x5b)
 	ETIME           = syscall.Errno(0x49)
 	ETIMEDOUT       = syscall.Errno(0x3c)
 	ETOOMANYREFS    = syscall.Errno(0x3b)
-	ETXTBSY         = syscall.Errno(0x1a)
 	EUCLEAN         = syscall.Errno(0x75)
 	EUNATCH         = syscall.Errno(0x63)
 	EUSERS          = syscall.Errno(0x44)
-	EWOULDBLOCK     = syscall.Errno(0xb)
-	EXDEV           = syscall.Errno(0x12)
 	EXFULL          = syscall.Errno(0x68)
 )
 
 // Signals
 const (
-	SIGABRT   = syscall.Signal(0x6)
-	SIGALRM   = syscall.Signal(0xe)
 	SIGBUS    = syscall.Signal(0xa)
 	SIGCHLD   = syscall.Signal(0x14)
 	SIGCLD    = syscall.Signal(0x14)
 	SIGCONT   = syscall.Signal(0x13)
 	SIGEMT    = syscall.Signal(0x7)
-	SIGFPE    = syscall.Signal(0x8)
-	SIGHUP    = syscall.Signal(0x1)
-	SIGILL    = syscall.Signal(0x4)
-	SIGINT    = syscall.Signal(0x2)
 	SIGIO     = syscall.Signal(0x17)
-	SIGIOT    = syscall.Signal(0x6)
-	SIGKILL   = syscall.Signal(0x9)
 	SIGLOST   = syscall.Signal(0x1d)
-	SIGPIPE   = syscall.Signal(0xd)
 	SIGPOLL   = syscall.Signal(0x17)
 	SIGPROF   = syscall.Signal(0x1b)
 	SIGPWR    = syscall.Signal(0x1d)
-	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)
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..20f3a57 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
@@ -158,6 +158,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..90b8fcd 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
@@ -158,6 +158,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..c5c0399 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
@@ -150,6 +150,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..14dd3c1 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
@@ -158,6 +158,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..c865a10 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
@@ -146,6 +146,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
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..9db6b2f 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
@@ -153,6 +153,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..7072526 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
@@ -146,6 +146,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
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..ac5efbe 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
@@ -156,6 +156,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_mips64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go
new file mode 100644
index 0000000..a74639a
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go
@@ -0,0 +1,1862 @@
+// mkerrors.sh -m64
+// Code generated by the command above; see README.md. DO NOT EDIT.
+
+// +build mips64,openbsd
+
+// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+// cgo -godefs -- -m64 _const.go
+
+package unix
+
+import "syscall"
+
+const (
+	AF_APPLETALK                      = 0x10
+	AF_BLUETOOTH                      = 0x20
+	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_ENCAP                          = 0x1c
+	AF_HYLINK                         = 0xf
+	AF_IMPLINK                        = 0x3
+	AF_INET                           = 0x2
+	AF_INET6                          = 0x18
+	AF_IPX                            = 0x17
+	AF_ISDN                           = 0x1a
+	AF_ISO                            = 0x7
+	AF_KEY                            = 0x1e
+	AF_LAT                            = 0xe
+	AF_LINK                           = 0x12
+	AF_LOCAL                          = 0x1
+	AF_MAX                            = 0x24
+	AF_MPLS                           = 0x21
+	AF_NATM                           = 0x1b
+	AF_NS                             = 0x6
+	AF_OSI                            = 0x7
+	AF_PUP                            = 0x4
+	AF_ROUTE                          = 0x11
+	AF_SIP                            = 0x1d
+	AF_SNA                            = 0xb
+	AF_UNIX                           = 0x1
+	AF_UNSPEC                         = 0x0
+	ALTWERASE                         = 0x200
+	ARPHRD_ETHER                      = 0x1
+	ARPHRD_FRELAY                     = 0xf
+	ARPHRD_IEEE1394                   = 0x18
+	ARPHRD_IEEE802                    = 0x6
+	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
+	BIOCGDIRFILT                      = 0x4004427c
+	BIOCGDLT                          = 0x4004426a
+	BIOCGDLTLIST                      = 0xc010427b
+	BIOCGETIF                         = 0x4020426b
+	BIOCGFILDROP                      = 0x40044278
+	BIOCGHDRCMPLT                     = 0x40044274
+	BIOCGRSIG                         = 0x40044273
+	BIOCGRTIMEOUT                     = 0x4010426e
+	BIOCGSTATS                        = 0x4008426f
+	BIOCIMMEDIATE                     = 0x80044270
+	BIOCLOCK                          = 0x20004276
+	BIOCPROMISC                       = 0x20004269
+	BIOCSBLEN                         = 0xc0044266
+	BIOCSDIRFILT                      = 0x8004427d
+	BIOCSDLT                          = 0x8004427a
+	BIOCSETF                          = 0x80104267
+	BIOCSETIF                         = 0x8020426c
+	BIOCSETWF                         = 0x80104277
+	BIOCSFILDROP                      = 0x80044279
+	BIOCSHDRCMPLT                     = 0x80044275
+	BIOCSRSIG                         = 0x80044272
+	BIOCSRTIMEOUT                     = 0x8010426d
+	BIOCVERSION                       = 0x40044271
+	BPF_A                             = 0x10
+	BPF_ABS                           = 0x20
+	BPF_ADD                           = 0x0
+	BPF_ALIGNMENT                     = 0x4
+	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
+	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                    = 0x200000
+	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
+	CFLUSH                            = 0xf
+	CLOCAL                            = 0x8000
+	CLOCK_BOOTTIME                    = 0x6
+	CLOCK_MONOTONIC                   = 0x3
+	CLOCK_PROCESS_CPUTIME_ID          = 0x2
+	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
+	CS6                               = 0x100
+	CS7                               = 0x200
+	CS8                               = 0x300
+	CSIZE                             = 0x300
+	CSTART                            = 0x11
+	CSTATUS                           = 0xff
+	CSTOP                             = 0x13
+	CSTOPB                            = 0x400
+	CSUSP                             = 0x1a
+	CTL_HW                            = 0x6
+	CTL_KERN                          = 0x1
+	CTL_MAXNAME                       = 0xc
+	CTL_NET                           = 0x4
+	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_ATM_RFC1483                   = 0xb
+	DLT_AX25                          = 0x3
+	DLT_CHAOS                         = 0x5
+	DLT_C_HDLC                        = 0x68
+	DLT_EN10MB                        = 0x1
+	DLT_EN3MB                         = 0x2
+	DLT_ENC                           = 0xd
+	DLT_FDDI                          = 0xa
+	DLT_IEEE802                       = 0x6
+	DLT_IEEE802_11                    = 0x69
+	DLT_IEEE802_11_RADIO              = 0x7f
+	DLT_LOOP                          = 0xc
+	DLT_MPLS                          = 0xdb
+	DLT_NULL                          = 0x0
+	DLT_OPENFLOW                      = 0x10b
+	DLT_PFLOG                         = 0x75
+	DLT_PFSYNC                        = 0x12
+	DLT_PPP                           = 0x9
+	DLT_PPP_BSDOS                     = 0x10
+	DLT_PPP_ETHER                     = 0x33
+	DLT_PPP_SERIAL                    = 0x32
+	DLT_PRONET                        = 0x4
+	DLT_RAW                           = 0xe
+	DLT_SLIP                          = 0x8
+	DLT_SLIP_BSDOS                    = 0xf
+	DLT_USBPCAP                       = 0xf9
+	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
+	DT_BLK                            = 0x6
+	DT_CHR                            = 0x2
+	DT_DIR                            = 0x4
+	DT_FIFO                           = 0x1
+	DT_LNK                            = 0xa
+	DT_REG                            = 0x8
+	DT_SOCK                           = 0xc
+	DT_UNKNOWN                        = 0x0
+	ECHO                              = 0x8
+	ECHOCTL                           = 0x40
+	ECHOE                             = 0x2
+	ECHOK                             = 0x4
+	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_DEVICE                     = -0x8
+	EVFILT_PROC                       = -0x5
+	EVFILT_READ                       = -0x1
+	EVFILT_SIGNAL                     = -0x6
+	EVFILT_SYSCOUNT                   = 0x8
+	EVFILT_TIMER                      = -0x7
+	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_ENABLE                         = 0x4
+	EV_EOF                            = 0x8000
+	EV_ERROR                          = 0x4000
+	EV_FLAG1                          = 0x2000
+	EV_ONESHOT                        = 0x10
+	EV_RECEIPT                        = 0x40
+	EV_SYSFLAGS                       = 0xf000
+	EXTA                              = 0x4b00
+	EXTB                              = 0x9600
+	EXTPROC                           = 0x800
+	FD_CLOEXEC                        = 0x1
+	FD_SETSIZE                        = 0x400
+	FLUSHO                            = 0x800000
+	F_DUPFD                           = 0x0
+	F_DUPFD_CLOEXEC                   = 0xa
+	F_GETFD                           = 0x1
+	F_GETFL                           = 0x3
+	F_GETLK                           = 0x7
+	F_GETOWN                          = 0x5
+	F_ISATTY                          = 0xb
+	F_OK                              = 0x0
+	F_RDLCK                           = 0x1
+	F_SETFD                           = 0x2
+	F_SETFL                           = 0x4
+	F_SETLK                           = 0x8
+	F_SETLKW                          = 0x9
+	F_SETOWN                          = 0x6
+	F_UNLCK                           = 0x2
+	F_WRLCK                           = 0x3
+	HUPCL                             = 0x4000
+	HW_MACHINE                        = 0x1
+	ICANON                            = 0x100
+	ICMP6_FILTER                      = 0x12
+	ICRNL                             = 0x100
+	IEXTEN                            = 0x400
+	IFAN_ARRIVAL                      = 0x0
+	IFAN_DEPARTURE                    = 0x1
+	IFF_ALLMULTI                      = 0x200
+	IFF_BROADCAST                     = 0x2
+	IFF_CANTCHANGE                    = 0x8e52
+	IFF_DEBUG                         = 0x4
+	IFF_LINK0                         = 0x1000
+	IFF_LINK1                         = 0x2000
+	IFF_LINK2                         = 0x4000
+	IFF_LOOPBACK                      = 0x8
+	IFF_MULTICAST                     = 0x8000
+	IFF_NOARP                         = 0x80
+	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_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                         = 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_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_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_PFLOG                         = 0xf5
+	IFT_PFLOW                         = 0xf9
+	IFT_PFSYNC                        = 0xf6
+	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_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
+	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_RFC3021_HOST                   = 0x1
+	IN_RFC3021_NET                    = 0xfffffffe
+	IN_RFC3021_NSHIFT                 = 0x1f
+	IPPROTO_AH                        = 0x33
+	IPPROTO_CARP                      = 0x70
+	IPPROTO_DIVERT                    = 0x102
+	IPPROTO_DONE                      = 0x101
+	IPPROTO_DSTOPTS                   = 0x3c
+	IPPROTO_EGP                       = 0x8
+	IPPROTO_ENCAP                     = 0x62
+	IPPROTO_EON                       = 0x50
+	IPPROTO_ESP                       = 0x32
+	IPPROTO_ETHERIP                   = 0x61
+	IPPROTO_FRAGMENT                  = 0x2c
+	IPPROTO_GGP                       = 0x3
+	IPPROTO_GRE                       = 0x2f
+	IPPROTO_HOPOPTS                   = 0x0
+	IPPROTO_ICMP                      = 0x1
+	IPPROTO_ICMPV6                    = 0x3a
+	IPPROTO_IDP                       = 0x16
+	IPPROTO_IGMP                      = 0x2
+	IPPROTO_IP                        = 0x0
+	IPPROTO_IPCOMP                    = 0x6c
+	IPPROTO_IPIP                      = 0x4
+	IPPROTO_IPV4                      = 0x4
+	IPPROTO_IPV6                      = 0x29
+	IPPROTO_MAX                       = 0x100
+	IPPROTO_MAXID                     = 0x103
+	IPPROTO_MOBILE                    = 0x37
+	IPPROTO_MPLS                      = 0x89
+	IPPROTO_NONE                      = 0x3b
+	IPPROTO_PFSYNC                    = 0xf0
+	IPPROTO_PIM                       = 0x67
+	IPPROTO_PUP                       = 0xc
+	IPPROTO_RAW                       = 0xff
+	IPPROTO_ROUTING                   = 0x2b
+	IPPROTO_RSVP                      = 0x2e
+	IPPROTO_TCP                       = 0x6
+	IPPROTO_TP                        = 0x1d
+	IPPROTO_UDP                       = 0x11
+	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                = 0xfffffff
+	IPV6_FLOWLABEL_MASK               = 0xfffff
+	IPV6_FRAGTTL                      = 0x78
+	IPV6_HLIMDEC                      = 0x1
+	IPV6_HOPLIMIT                     = 0x2f
+	IPV6_HOPOPTS                      = 0x31
+	IPV6_IPCOMP_LEVEL                 = 0x3c
+	IPV6_JOIN_GROUP                   = 0xc
+	IPV6_LEAVE_GROUP                  = 0xd
+	IPV6_MAXHLIM                      = 0xff
+	IPV6_MAXPACKET                    = 0xffff
+	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_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                       = 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_AUTH_LEVEL                     = 0x14
+	IP_DEFAULT_MULTICAST_LOOP         = 0x1
+	IP_DEFAULT_MULTICAST_TTL          = 0x1
+	IP_DF                             = 0x4000
+	IP_DROP_MEMBERSHIP                = 0xd
+	IP_ESP_NETWORK_LEVEL              = 0x16
+	IP_ESP_TRANS_LEVEL                = 0x15
+	IP_HDRINCL                        = 0x2
+	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_MEMBERSHIPS                = 0xfff
+	IP_MF                             = 0x2000
+	IP_MINTTL                         = 0x20
+	IP_MIN_MEMBERSHIPS                = 0xf
+	IP_MSS                            = 0x240
+	IP_MULTICAST_IF                   = 0x9
+	IP_MULTICAST_LOOP                 = 0xb
+	IP_MULTICAST_TTL                  = 0xa
+	IP_OFFMASK                        = 0x1fff
+	IP_OPTIONS                        = 0x1
+	IP_PIPEX                          = 0x22
+	IP_PORTRANGE                      = 0x13
+	IP_PORTRANGE_DEFAULT              = 0x0
+	IP_PORTRANGE_HIGH                 = 0x1
+	IP_PORTRANGE_LOW                  = 0x2
+	IP_RECVDSTADDR                    = 0x7
+	IP_RECVDSTPORT                    = 0x21
+	IP_RECVIF                         = 0x1e
+	IP_RECVOPTS                       = 0x5
+	IP_RECVRETOPTS                    = 0x6
+	IP_RECVRTABLE                     = 0x23
+	IP_RECVTTL                        = 0x1f
+	IP_RETOPTS                        = 0x8
+	IP_RF                             = 0x8000
+	IP_RTABLE                         = 0x1021
+	IP_SENDSRCADDR                    = 0x7
+	IP_TOS                            = 0x3
+	IP_TTL                            = 0x4
+	ISIG                              = 0x80
+	ISTRIP                            = 0x20
+	IUCLC                             = 0x1000
+	IXANY                             = 0x800
+	IXOFF                             = 0x400
+	IXON                              = 0x200
+	KERN_HOSTNAME                     = 0xa
+	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_DONTNEED                     = 0x4
+	MADV_FREE                         = 0x6
+	MADV_NORMAL                       = 0x0
+	MADV_RANDOM                       = 0x1
+	MADV_SEQUENTIAL                   = 0x2
+	MADV_SPACEAVAIL                   = 0x5
+	MADV_WILLNEED                     = 0x3
+	MAP_ANON                          = 0x1000
+	MAP_ANONYMOUS                     = 0x1000
+	MAP_CONCEAL                       = 0x8000
+	MAP_COPY                          = 0x2
+	MAP_FILE                          = 0x0
+	MAP_FIXED                         = 0x10
+	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                        = 0x0
+	MAP_SHARED                        = 0x1
+	MAP_STACK                         = 0x4000
+	MAP_TRYFIXED                      = 0x0
+	MCL_CURRENT                       = 0x1
+	MCL_FUTURE                        = 0x2
+	MNT_ASYNC                         = 0x40
+	MNT_DEFEXPORTED                   = 0x200
+	MNT_DELEXPORT                     = 0x20000
+	MNT_DOOMED                        = 0x8000000
+	MNT_EXPORTANON                    = 0x400
+	MNT_EXPORTED                      = 0x100
+	MNT_EXRDONLY                      = 0x80
+	MNT_FORCE                         = 0x80000
+	MNT_LAZY                          = 0x3
+	MNT_LOCAL                         = 0x1000
+	MNT_NOATIME                       = 0x8000
+	MNT_NODEV                         = 0x10
+	MNT_NOEXEC                        = 0x4
+	MNT_NOPERM                        = 0x20
+	MNT_NOSUID                        = 0x8
+	MNT_NOWAIT                        = 0x2
+	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_UPDATE                        = 0x10000
+	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_EOR                           = 0x8
+	MSG_MCAST                         = 0x200
+	MSG_NOSIGNAL                      = 0x400
+	MSG_OOB                           = 0x1
+	MSG_PEEK                          = 0x2
+	MSG_TRUNC                         = 0x10
+	MSG_WAITALL                       = 0x40
+	MS_ASYNC                          = 0x1
+	MS_INVALIDATE                     = 0x4
+	MS_SYNC                           = 0x2
+	NAME_MAX                          = 0xff
+	NET_RT_DUMP                       = 0x1
+	NET_RT_FLAGS                      = 0x2
+	NET_RT_IFLIST                     = 0x3
+	NET_RT_IFNAMES                    = 0x6
+	NET_RT_MAXID                      = 0x7
+	NET_RT_STATS                      = 0x4
+	NET_RT_TABLE                      = 0x5
+	NFDBITS                           = 0x20
+	NOFLSH                            = 0x80000000
+	NOKERNINFO                        = 0x2000000
+	NOTE_ATTRIB                       = 0x8
+	NOTE_CHANGE                       = 0x1
+	NOTE_CHILD                        = 0x4
+	NOTE_DELETE                       = 0x1
+	NOTE_EOF                          = 0x2
+	NOTE_EXEC                         = 0x20000000
+	NOTE_EXIT                         = 0x80000000
+	NOTE_EXTEND                       = 0x4
+	NOTE_FORK                         = 0x40000000
+	NOTE_LINK                         = 0x10
+	NOTE_LOWAT                        = 0x1
+	NOTE_PCTRLMASK                    = 0xf0000000
+	NOTE_PDATAMASK                    = 0xfffff
+	NOTE_RENAME                       = 0x20
+	NOTE_REVOKE                       = 0x40
+	NOTE_TRACK                        = 0x1
+	NOTE_TRACKERR                     = 0x2
+	NOTE_TRUNCATE                     = 0x80
+	NOTE_WRITE                        = 0x2
+	OCRNL                             = 0x10
+	OLCUC                             = 0x20
+	ONLCR                             = 0x2
+	ONLRET                            = 0x80
+	ONOCR                             = 0x40
+	ONOEOT                            = 0x8
+	OPOST                             = 0x1
+	OXTABS                            = 0x4
+	O_ACCMODE                         = 0x3
+	O_APPEND                          = 0x8
+	O_ASYNC                           = 0x40
+	O_CLOEXEC                         = 0x10000
+	O_CREAT                           = 0x200
+	O_DIRECTORY                       = 0x20000
+	O_DSYNC                           = 0x80
+	O_EXCL                            = 0x800
+	O_EXLOCK                          = 0x20
+	O_FSYNC                           = 0x80
+	O_NDELAY                          = 0x4
+	O_NOCTTY                          = 0x8000
+	O_NOFOLLOW                        = 0x100
+	O_NONBLOCK                        = 0x4
+	O_RDONLY                          = 0x0
+	O_RDWR                            = 0x2
+	O_RSYNC                           = 0x80
+	O_SHLOCK                          = 0x10
+	O_SYNC                            = 0x80
+	O_TRUNC                           = 0x400
+	O_WRONLY                          = 0x1
+	PARENB                            = 0x1000
+	PARMRK                            = 0x8
+	PARODD                            = 0x2000
+	PENDIN                            = 0x20000000
+	PF_FLUSH                          = 0x1
+	PRIO_PGRP                         = 0x1
+	PRIO_PROCESS                      = 0x0
+	PRIO_USER                         = 0x2
+	PROT_EXEC                         = 0x4
+	PROT_NONE                         = 0x0
+	PROT_READ                         = 0x1
+	PROT_WRITE                        = 0x2
+	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_BFD                          = 0xb
+	RTAX_BRD                          = 0x7
+	RTAX_DNS                          = 0xc
+	RTAX_DST                          = 0x0
+	RTAX_GATEWAY                      = 0x1
+	RTAX_GENMASK                      = 0x3
+	RTAX_IFA                          = 0x5
+	RTAX_IFP                          = 0x4
+	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_CONNECTED                     = 0x800000
+	RTF_DONE                          = 0x40
+	RTF_DYNAMIC                       = 0x10
+	RTF_FMASK                         = 0x110fc08
+	RTF_GATEWAY                       = 0x2
+	RTF_HOST                          = 0x4
+	RTF_LLINFO                        = 0x400
+	RTF_LOCAL                         = 0x200000
+	RTF_MODIFIED                      = 0x20
+	RTF_MPATH                         = 0x40000
+	RTF_MPLS                          = 0x100000
+	RTF_MULTICAST                     = 0x200
+	RTF_PERMANENT_ARP                 = 0x2000
+	RTF_PROTO1                        = 0x8000
+	RTF_PROTO2                        = 0x4000
+	RTF_PROTO3                        = 0x2000
+	RTF_REJECT                        = 0x8
+	RTF_STATIC                        = 0x800
+	RTF_UP                            = 0x1
+	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_DESYNC                        = 0x10
+	RTM_GET                           = 0x4
+	RTM_IFANNOUNCE                    = 0xf
+	RTM_IFINFO                        = 0xe
+	RTM_INVALIDATE                    = 0x11
+	RTM_LOSING                        = 0x5
+	RTM_MAXSIZE                       = 0x800
+	RTM_MISS                          = 0x7
+	RTM_NEWADDR                       = 0xc
+	RTM_PROPOSAL                      = 0x13
+	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
+	RT_TABLEID_BITS                   = 0x8
+	RT_TABLEID_MASK                   = 0xff
+	RT_TABLEID_MAX                    = 0xff
+	RUSAGE_CHILDREN                   = -0x1
+	RUSAGE_SELF                       = 0x0
+	RUSAGE_THREAD                     = 0x1
+	SCM_RIGHTS                        = 0x1
+	SCM_TIMESTAMP                     = 0x4
+	SHUT_RD                           = 0x0
+	SHUT_RDWR                         = 0x2
+	SHUT_WR                           = 0x1
+	SIOCADDMULTI                      = 0x80206931
+	SIOCAIFADDR                       = 0x8040691a
+	SIOCAIFGROUP                      = 0x80286987
+	SIOCATMARK                        = 0x40047307
+	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
+	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
+	SIOCGIFBRDADDR                    = 0xc0206923
+	SIOCGIFCONF                       = 0xc0106924
+	SIOCGIFDATA                       = 0xc020691b
+	SIOCGIFDESCR                      = 0xc0206981
+	SIOCGIFDSTADDR                    = 0xc0206922
+	SIOCGIFFLAGS                      = 0xc0206911
+	SIOCGIFGATTR                      = 0xc028698b
+	SIOCGIFGENERIC                    = 0xc020693a
+	SIOCGIFGLIST                      = 0xc028698d
+	SIOCGIFGMEMB                      = 0xc028698a
+	SIOCGIFGROUP                      = 0xc0286988
+	SIOCGIFHARDMTU                    = 0xc02069a5
+	SIOCGIFLLPRIO                     = 0xc02069b6
+	SIOCGIFMEDIA                      = 0xc0406938
+	SIOCGIFMETRIC                     = 0xc0206917
+	SIOCGIFMTU                        = 0xc020697e
+	SIOCGIFNETMASK                    = 0xc0206925
+	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
+	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                    = 0xc0106978
+	SIOCSETKALIVE                     = 0x801869a3
+	SIOCSETLABEL                      = 0x80206999
+	SIOCSETMPWCFG                     = 0x802069ad
+	SIOCSETPFLOW                      = 0x802069fd
+	SIOCSETPFSYNC                     = 0x802069f7
+	SIOCSETVLAN                       = 0x8020698f
+	SIOCSIFADDR                       = 0x8020690c
+	SIOCSIFBRDADDR                    = 0x80206913
+	SIOCSIFDESCR                      = 0x80206980
+	SIOCSIFDSTADDR                    = 0x8020690e
+	SIOCSIFFLAGS                      = 0x80206910
+	SIOCSIFGATTR                      = 0x8028698c
+	SIOCSIFGENERIC                    = 0x80206939
+	SIOCSIFLLADDR                     = 0x8020691f
+	SIOCSIFLLPRIO                     = 0x802069b5
+	SIOCSIFMEDIA                      = 0xc0206937
+	SIOCSIFMETRIC                     = 0x80206918
+	SIOCSIFMTU                        = 0x8020697f
+	SIOCSIFNETMASK                    = 0x80206916
+	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_DNS                          = 0x1000
+	SOCK_NONBLOCK                     = 0x4000
+	SOCK_RAW                          = 0x3
+	SOCK_RDM                          = 0x4
+	SOCK_SEQPACKET                    = 0x5
+	SOCK_STREAM                       = 0x1
+	SOL_SOCKET                        = 0xffff
+	SOMAXCONN                         = 0x80
+	SO_ACCEPTCONN                     = 0x2
+	SO_BINDANY                        = 0x1000
+	SO_BROADCAST                      = 0x20
+	SO_DEBUG                          = 0x1
+	SO_DOMAIN                         = 0x1024
+	SO_DONTROUTE                      = 0x10
+	SO_ERROR                          = 0x1007
+	SO_KEEPALIVE                      = 0x8
+	SO_LINGER                         = 0x80
+	SO_NETPROC                        = 0x1020
+	SO_OOBINLINE                      = 0x100
+	SO_PEERCRED                       = 0x1022
+	SO_PROTOCOL                       = 0x1025
+	SO_RCVBUF                         = 0x1002
+	SO_RCVLOWAT                       = 0x1004
+	SO_RCVTIMEO                       = 0x1006
+	SO_REUSEADDR                      = 0x4
+	SO_REUSEPORT                      = 0x200
+	SO_RTABLE                         = 0x1021
+	SO_SNDBUF                         = 0x1001
+	SO_SNDLOWAT                       = 0x1003
+	SO_SNDTIMEO                       = 0x1005
+	SO_SPLICE                         = 0x1023
+	SO_TIMESTAMP                      = 0x800
+	SO_TYPE                           = 0x1008
+	SO_USELOOPBACK                    = 0x40
+	SO_ZEROIZE                        = 0x2000
+	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_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
+	TCIFLUSH                          = 0x1
+	TCIOFF                            = 0x3
+	TCIOFLUSH                         = 0x3
+	TCION                             = 0x4
+	TCOFLUSH                          = 0x2
+	TCOOFF                            = 0x1
+	TCOON                             = 0x2
+	TCP_MAXBURST                      = 0x4
+	TCP_MAXSEG                        = 0x2
+	TCP_MAXWIN                        = 0xffff
+	TCP_MAX_SACK                      = 0x3
+	TCP_MAX_WINSHIFT                  = 0xe
+	TCP_MD5SIG                        = 0x4
+	TCP_MSS                           = 0x200
+	TCP_NODELAY                       = 0x1
+	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
+	TIOCDRAIN                         = 0x2000745e
+	TIOCEXCL                          = 0x2000740d
+	TIOCEXT                           = 0x80047460
+	TIOCFLAG_CLOCAL                   = 0x2
+	TIOCFLAG_CRTSCTS                  = 0x4
+	TIOCFLAG_MDMBUF                   = 0x8
+	TIOCFLAG_PPS                      = 0x10
+	TIOCFLAG_SOFTCAR                  = 0x1
+	TIOCFLUSH                         = 0x80047410
+	TIOCGETA                          = 0x402c7413
+	TIOCGETD                          = 0x4004741a
+	TIOCGFLAGS                        = 0x4004745d
+	TIOCGPGRP                         = 0x40047477
+	TIOCGSID                          = 0x40047463
+	TIOCGTSTAMP                       = 0x4010745b
+	TIOCGWINSZ                        = 0x40087468
+	TIOCMBIC                          = 0x8004746b
+	TIOCMBIS                          = 0x8004746c
+	TIOCMGET                          = 0x4004746a
+	TIOCMODG                          = 0x4004746a
+	TIOCMODS                          = 0x8004746d
+	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
+	TIOCREMOTE                        = 0x80047469
+	TIOCSBRK                          = 0x2000747b
+	TIOCSCTTY                         = 0x20007461
+	TIOCSDTR                          = 0x20007479
+	TIOCSETA                          = 0x802c7414
+	TIOCSETAF                         = 0x802c7416
+	TIOCSETAW                         = 0x802c7415
+	TIOCSETD                          = 0x8004741b
+	TIOCSETVERAUTH                    = 0x8004741c
+	TIOCSFLAGS                        = 0x8004745c
+	TIOCSIG                           = 0x8004745f
+	TIOCSPGRP                         = 0x80047476
+	TIOCSTART                         = 0x2000746e
+	TIOCSTAT                          = 0x20007465
+	TIOCSTOP                          = 0x2000746f
+	TIOCSTSTAMP                       = 0x8008745a
+	TIOCSWINSZ                        = 0x80087467
+	TIOCUCNTL                         = 0x80047466
+	TIOCUCNTL_CBRK                    = 0x7a
+	TIOCUCNTL_SBRK                    = 0x7b
+	TOSTOP                            = 0x400000
+	UTIME_NOW                         = -0x2
+	UTIME_OMIT                        = -0x1
+	VDISCARD                          = 0xf
+	VDSUSP                            = 0xb
+	VEOF                              = 0x0
+	VEOL                              = 0x1
+	VEOL2                             = 0x2
+	VERASE                            = 0x3
+	VINTR                             = 0x8
+	VKILL                             = 0x5
+	VLNEXT                            = 0xe
+	VMIN                              = 0x10
+	VM_ANONMIN                        = 0x7
+	VM_LOADAVG                        = 0x2
+	VM_MALLOC_CONF                    = 0xc
+	VM_MAXID                          = 0xd
+	VM_MAXSLP                         = 0xa
+	VM_METER                          = 0x1
+	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
+	VTIME                             = 0x11
+	VWERASE                           = 0x4
+	WALTSIG                           = 0x4
+	WCONTINUED                        = 0x8
+	WCOREFLAG                         = 0x80
+	WNOHANG                           = 0x1
+	WUNTRACED                         = 0x2
+	XCASE                             = 0x1000000
+)
+
+// 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(0x5c)
+	EBADRPC         = syscall.Errno(0x48)
+	EBUSY           = syscall.Errno(0x10)
+	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)
+	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(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(0x5f)
+	ELOOP           = syscall.Errno(0x3e)
+	EMEDIUMTYPE     = syscall.Errno(0x56)
+	EMFILE          = syscall.Errno(0x18)
+	EMLINK          = syscall.Errno(0x1f)
+	EMSGSIZE        = syscall.Errno(0x28)
+	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(0x53)
+	ENOBUFS         = syscall.Errno(0x37)
+	ENODEV          = syscall.Errno(0x13)
+	ENOENT          = syscall.Errno(0x2)
+	ENOEXEC         = syscall.Errno(0x8)
+	ENOLCK          = syscall.Errno(0x4d)
+	ENOMEDIUM       = syscall.Errno(0x55)
+	ENOMEM          = syscall.Errno(0xc)
+	ENOMSG          = syscall.Errno(0x5a)
+	ENOPROTOOPT     = syscall.Errno(0x2a)
+	ENOSPC          = syscall.Errno(0x1c)
+	ENOSYS          = syscall.Errno(0x4e)
+	ENOTBLK         = syscall.Errno(0xf)
+	ENOTCONN        = syscall.Errno(0x39)
+	ENOTDIR         = syscall.Errno(0x14)
+	ENOTEMPTY       = syscall.Errno(0x42)
+	ENOTRECOVERABLE = syscall.Errno(0x5d)
+	ENOTSOCK        = syscall.Errno(0x26)
+	ENOTSUP         = syscall.Errno(0x5b)
+	ENOTTY          = syscall.Errno(0x19)
+	ENXIO           = syscall.Errno(0x6)
+	EOPNOTSUPP      = syscall.Errno(0x2d)
+	EOVERFLOW       = syscall.Errno(0x57)
+	EOWNERDEAD      = syscall.Errno(0x5e)
+	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(0x5f)
+	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)
+	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, "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, "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", "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 program not available"},
+	{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, "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
+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"},
+	{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..5312c36 100644
--- a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
@@ -192,6 +192,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 +296,7 @@ const (
 	FF0                           = 0x0
 	FF1                           = 0x8000
 	FFDLY                         = 0x8000
+	FIORDCHK                      = 0x6603
 	FLUSHALL                      = 0x1
 	FLUSHDATA                     = 0x0
 	FLUSHO                        = 0x2000
@@ -645,6 +652,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 +668,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 +703,7 @@ const (
 	O_APPEND                      = 0x8
 	O_CLOEXEC                     = 0x800000
 	O_CREAT                       = 0x100
+	O_DIRECTORY                   = 0x1000000
 	O_DSYNC                       = 0x40
 	O_EXCL                        = 0x400
 	O_EXEC                        = 0x400000
@@ -725,7 +742,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 +1064,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 +1094,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/zsyscall_aix_ppc64_gc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
index 4b3a8ad..0550da0 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
@@ -2,7 +2,7 @@
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build aix,ppc64
-// +build !gccgo
+// +build gc
 
 package unix
 
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
index e263fbd..c8c142c 100644
--- 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
@@ -24,7 +24,6 @@ func closedir(dir uintptr) (err error) {
 
 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
@@ -37,5 +36,4 @@ func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
 
 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.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
index a3fc490..3877183 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
@@ -25,7 +25,6 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
 
 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
@@ -40,7 +39,6 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
 
 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
@@ -56,7 +54,6 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
 
 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
@@ -72,7 +69,6 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
 
 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
@@ -87,7 +83,6 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -102,7 +97,6 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -118,7 +112,6 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
 
 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
@@ -133,7 +126,6 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
 
 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
@@ -148,7 +140,6 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
 
 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
@@ -163,7 +154,6 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -178,7 +168,6 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -193,7 +182,6 @@ func Shutdown(s int, how int) (err error) {
 
 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
@@ -208,7 +196,6 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
 
 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
@@ -230,7 +217,6 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
 
 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
@@ -251,7 +237,6 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
 
 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
@@ -267,7 +252,6 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -283,7 +267,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -299,7 +282,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
 
 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
@@ -319,7 +301,6 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
 
 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
@@ -334,7 +315,6 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
 
 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
@@ -350,7 +330,6 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
 
 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
@@ -371,7 +350,6 @@ func Madvise(b []byte, behav int) (err error) {
 
 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
@@ -392,7 +370,6 @@ func Mlock(b []byte) (err error) {
 
 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
@@ -407,7 +384,6 @@ func Mlockall(flags int) (err error) {
 
 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
@@ -428,7 +404,6 @@ func Mprotect(b []byte, prot int) (err error) {
 
 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
@@ -449,7 +424,6 @@ func Msync(b []byte, flags int) (err error) {
 
 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
@@ -470,7 +444,6 @@ func Munlock(b []byte) (err error) {
 
 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
@@ -485,30 +458,12 @@ func Munlockall() (err error) {
 
 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)
+func pipe(p *[2]int32) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -517,7 +472,6 @@ func pipe() (r int, w int, err error) {
 
 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
@@ -543,7 +497,6 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o
 
 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
@@ -564,7 +517,6 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio
 
 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
@@ -589,7 +541,6 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o
 
 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
@@ -609,7 +560,6 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio
 
 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
@@ -634,7 +584,6 @@ func removexattr(path string, attr string, options int) (err error) {
 
 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
@@ -654,7 +603,6 @@ func fremovexattr(fd int, attr string, options int) (err error) {
 
 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
@@ -675,7 +623,6 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro
 
 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
@@ -691,7 +638,6 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
 
 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
@@ -706,7 +652,6 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp
 
 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
@@ -722,7 +667,6 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
 
 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
@@ -737,7 +681,6 @@ func kill(pid int, signum int, posix int) (err error) {
 
 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
@@ -752,7 +695,6 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
 
 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
@@ -773,7 +715,6 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
 
 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
@@ -788,7 +729,6 @@ func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer
 
 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
@@ -808,7 +748,6 @@ func Access(path string, mode uint32) (err error) {
 
 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
@@ -823,7 +762,6 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
 
 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
@@ -843,7 +781,6 @@ func Chdir(path string) (err error) {
 
 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
@@ -863,7 +800,6 @@ func Chflags(path string, flags int) (err error) {
 
 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
@@ -883,7 +819,6 @@ func Chmod(path string, mode uint32) (err error) {
 
 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
@@ -903,7 +838,6 @@ func Chown(path string, uid int, gid int) (err error) {
 
 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
@@ -923,7 +857,6 @@ func Chroot(path string) (err error) {
 
 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
@@ -938,7 +871,6 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
 
 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
@@ -953,11 +885,58 @@ func Close(fd int) (err error) {
 
 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 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(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags))
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefile_trampoline()
+
+//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(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefileat_trampoline()
+
+//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)
 	nfd = int(r0)
@@ -969,7 +948,6 @@ func Dup(fd int) (nfd int, err error) {
 
 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
@@ -984,7 +962,6 @@ func Dup2(from int, to int) (err error) {
 
 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
@@ -1009,7 +986,6 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
 
 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
@@ -1021,7 +997,6 @@ func Exit(code int) {
 
 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
@@ -1041,7 +1016,6 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1056,7 +1030,6 @@ func Fchdir(fd int) (err error) {
 
 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
@@ -1071,7 +1044,6 @@ func Fchflags(fd int, flags int) (err error) {
 
 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
@@ -1086,7 +1058,6 @@ func Fchmod(fd int, mode uint32) (err error) {
 
 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
@@ -1106,7 +1077,6 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1121,7 +1091,6 @@ func Fchown(fd int, uid int, gid int) (err error) {
 
 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
@@ -1141,11 +1110,29 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
 
 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 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(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_fclonefileat_trampoline()
+
+//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)
 	if e1 != 0 {
@@ -1156,7 +1143,6 @@ func Flock(fd int, how int) (err error) {
 
 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
@@ -1172,7 +1158,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
 
 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
@@ -1187,7 +1172,6 @@ func Fsync(fd int) (err error) {
 
 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
@@ -1202,11 +1186,31 @@ func Ftruncate(fd int, length int64) (err error) {
 
 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 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(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0)
+	n = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_getcwd_trampoline()
+
+//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)
 	size = int(r0)
@@ -1215,7 +1219,6 @@ func Getdtablesize() (size int) {
 
 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
@@ -1228,7 +1231,6 @@ func Getegid() (egid int) {
 
 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
@@ -1241,7 +1243,6 @@ func Geteuid() (uid int) {
 
 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
@@ -1254,7 +1255,6 @@ func Getgid() (gid int) {
 
 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
@@ -1270,7 +1270,6 @@ func Getpgid(pid int) (pgid int, err error) {
 
 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
@@ -1283,7 +1282,6 @@ func Getpgrp() (pgrp int) {
 
 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
@@ -1296,7 +1294,6 @@ func Getpid() (pid int) {
 
 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
@@ -1309,7 +1306,6 @@ func Getppid() (ppid int) {
 
 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
@@ -1325,7 +1321,6 @@ func Getpriority(which int, who int) (prio int, err error) {
 
 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
@@ -1340,7 +1335,6 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -1355,7 +1349,6 @@ func Getrusage(who int, rusage *Rusage) (err error) {
 
 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
@@ -1371,11 +1364,24 @@ func Getsid(pid int) (sid int, err error) {
 
 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 Gettimeofday(tp *Timeval) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_gettimeofday_trampoline()
+
+//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)
 	uid = int(r0)
@@ -1384,7 +1390,6 @@ func Getuid() (uid int) {
 
 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
@@ -1397,7 +1402,6 @@ func Issetugid() (tainted bool) {
 
 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
@@ -1413,7 +1417,6 @@ func Kqueue() (fd int, err error) {
 
 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
@@ -1433,7 +1436,6 @@ func Lchown(path string, uid int, gid int) (err error) {
 
 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
@@ -1458,7 +1460,6 @@ func Link(path string, link string) (err error) {
 
 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
@@ -1483,7 +1484,6 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
 
 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
@@ -1498,7 +1498,6 @@ func Listen(s int, backlog int) (err error) {
 
 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
@@ -1518,7 +1517,6 @@ func Mkdir(path string, mode uint32) (err error) {
 
 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
@@ -1538,7 +1536,6 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
 
 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
@@ -1558,7 +1555,6 @@ func Mkfifo(path string, mode uint32) (err error) {
 
 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
@@ -1578,7 +1574,6 @@ func Mknod(path string, mode uint32, dev int) (err error) {
 
 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
@@ -1599,7 +1594,6 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1620,7 +1614,6 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1641,7 +1634,6 @@ func Pathconf(path string, name int) (val int, err error) {
 
 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
@@ -1663,7 +1655,6 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1685,7 +1676,6 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1707,7 +1697,6 @@ func read(fd int, p []byte) (n int, err error) {
 
 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
@@ -1734,7 +1723,6 @@ func Readlink(path string, buf []byte) (n int, err error) {
 
 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
@@ -1761,7 +1749,6 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
 
 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
@@ -1786,7 +1773,6 @@ func Rename(from string, to string) (err error) {
 
 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
@@ -1811,7 +1797,6 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
 
 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
@@ -1831,7 +1816,6 @@ func Revoke(path string) (err error) {
 
 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
@@ -1851,7 +1835,6 @@ func Rmdir(path string) (err error) {
 
 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
@@ -1867,7 +1850,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
 
 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
@@ -1883,7 +1865,6 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
 
 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
@@ -1898,7 +1879,6 @@ func Setegid(egid int) (err error) {
 
 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
@@ -1913,7 +1893,6 @@ func Seteuid(euid int) (err error) {
 
 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
@@ -1928,7 +1907,6 @@ func Setgid(gid int) (err error) {
 
 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
@@ -1948,7 +1926,6 @@ func Setlogin(name string) (err error) {
 
 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
@@ -1963,7 +1940,6 @@ func Setpgid(pid int, pgid int) (err error) {
 
 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
@@ -1978,7 +1954,6 @@ func Setpriority(which int, who int, prio int) (err error) {
 
 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
@@ -1993,7 +1968,6 @@ func Setprivexec(flag int) (err error) {
 
 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
@@ -2008,7 +1982,6 @@ func Setregid(rgid int, egid int) (err error) {
 
 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
@@ -2023,7 +1996,6 @@ func Setreuid(ruid int, euid int) (err error) {
 
 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
@@ -2038,7 +2010,6 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -2054,7 +2025,6 @@ func Setsid() (pid int, err error) {
 
 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
@@ -2069,7 +2039,6 @@ func Settimeofday(tp *Timeval) (err error) {
 
 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
@@ -2084,7 +2053,6 @@ func Setuid(uid int) (err error) {
 
 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
@@ -2109,7 +2077,6 @@ func Symlink(path string, link string) (err error) {
 
 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
@@ -2134,7 +2101,6 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
 
 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
@@ -2149,7 +2115,6 @@ func Sync() (err error) {
 
 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
@@ -2169,7 +2134,6 @@ func Truncate(path string, length int64) (err error) {
 
 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
@@ -2182,7 +2146,6 @@ func Umask(newmask int) (oldmask int) {
 
 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
@@ -2202,7 +2165,6 @@ func Undelete(path string) (err error) {
 
 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
@@ -2222,7 +2184,6 @@ func Unlink(path string) (err error) {
 
 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
@@ -2242,7 +2203,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
 
 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
@@ -2262,7 +2222,6 @@ func Unmount(path string, flags int) (err error) {
 
 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
@@ -2284,7 +2243,6 @@ func write(fd int, p []byte) (n int, err error) {
 
 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
@@ -2300,7 +2258,6 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
 
 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
@@ -2315,7 +2272,6 @@ func munmap(addr uintptr, length uintptr) (err error) {
 
 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
@@ -2342,38 +2298,6 @@ 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 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 {
@@ -2384,7 +2308,6 @@ func Fstat(fd int, stat *Stat_t) (err error) {
 
 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
@@ -2404,7 +2327,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
 
 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
@@ -2419,7 +2341,6 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
 
 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
@@ -2435,7 +2356,6 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
 
 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
@@ -2455,11 +2375,24 @@ func Lstat(path string, stat *Stat_t) (err error) {
 
 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 ptrace1(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: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)
@@ -2475,7 +2408,6 @@ func Stat(path string, stat *Stat_t) (err error) {
 
 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
@@ -2495,5 +2427,4 @@ func Statfs(path string, stat *Statfs_t) (err error) {
 
 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
index 6836a41..1c53979 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
@@ -60,8 +60,6 @@ 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
@@ -110,6 +108,10 @@ 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_clonefile_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefile(SB)
+TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefileat(SB)
 TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_dup(SB)
 TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
@@ -132,6 +134,8 @@ 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_fclonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_fclonefileat(SB)
 TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_flock(SB)
 TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
@@ -140,6 +144,8 @@ 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_getcwd_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_getcwd(SB)
 TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getdtablesize(SB)
 TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
@@ -164,6 +170,8 @@ 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_gettimeofday_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_gettimeofday(SB)
 TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getuid(SB)
 TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
@@ -264,10 +272,6 @@ 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
@@ -278,6 +282,8 @@ 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_ptrace_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_ptrace(SB)
 TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_stat64(SB)
 TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
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..8882623 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
@@ -24,7 +24,6 @@ func closedir(dir uintptr) (err error) {
 
 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
@@ -37,5 +36,4 @@ func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
 
 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_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
index 50d6437..508e563 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
@@ -25,7 +25,6 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
 
 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
@@ -40,7 +39,6 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
 
 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
@@ -56,7 +54,6 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
 
 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
@@ -72,7 +69,6 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
 
 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
@@ -87,7 +83,6 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -102,7 +97,6 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -118,7 +112,6 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
 
 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
@@ -133,7 +126,6 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
 
 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
@@ -148,7 +140,6 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
 
 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
@@ -163,7 +154,6 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -178,7 +168,6 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -193,7 +182,6 @@ func Shutdown(s int, how int) (err error) {
 
 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
@@ -208,7 +196,6 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
 
 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
@@ -230,7 +217,6 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
 
 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
@@ -251,7 +237,6 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
 
 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
@@ -267,7 +252,6 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -283,7 +267,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -299,7 +282,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
 
 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
@@ -319,7 +301,6 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
 
 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
@@ -334,7 +315,6 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
 
 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
@@ -350,7 +330,6 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
 
 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
@@ -371,7 +350,6 @@ func Madvise(b []byte, behav int) (err error) {
 
 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
@@ -392,7 +370,6 @@ func Mlock(b []byte) (err error) {
 
 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
@@ -407,7 +384,6 @@ func Mlockall(flags int) (err error) {
 
 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
@@ -428,7 +404,6 @@ func Mprotect(b []byte, prot int) (err error) {
 
 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
@@ -449,7 +424,6 @@ func Msync(b []byte, flags int) (err error) {
 
 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
@@ -470,7 +444,6 @@ func Munlock(b []byte) (err error) {
 
 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
@@ -485,30 +458,12 @@ func Munlockall() (err error) {
 
 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)
+func pipe(p *[2]int32) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -517,7 +472,6 @@ func pipe() (r int, w int, err error) {
 
 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
@@ -543,7 +497,6 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o
 
 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
@@ -564,7 +517,6 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio
 
 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
@@ -589,7 +541,6 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o
 
 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
@@ -609,7 +560,6 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio
 
 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
@@ -634,7 +584,6 @@ func removexattr(path string, attr string, options int) (err error) {
 
 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
@@ -654,7 +603,6 @@ func fremovexattr(fd int, attr string, options int) (err error) {
 
 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
@@ -675,7 +623,6 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro
 
 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
@@ -691,7 +638,6 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
 
 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
@@ -706,7 +652,6 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp
 
 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
@@ -722,7 +667,6 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
 
 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
@@ -737,7 +681,6 @@ func kill(pid int, signum int, posix int) (err error) {
 
 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
@@ -752,7 +695,6 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
 
 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
@@ -773,7 +715,6 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
 
 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
@@ -788,7 +729,6 @@ func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer
 
 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
@@ -808,7 +748,6 @@ func Access(path string, mode uint32) (err error) {
 
 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
@@ -823,7 +762,6 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
 
 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
@@ -843,7 +781,6 @@ func Chdir(path string) (err error) {
 
 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
@@ -863,7 +800,6 @@ func Chflags(path string, flags int) (err error) {
 
 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
@@ -883,7 +819,6 @@ func Chmod(path string, mode uint32) (err error) {
 
 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
@@ -903,7 +838,6 @@ func Chown(path string, uid int, gid int) (err error) {
 
 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
@@ -923,7 +857,6 @@ func Chroot(path string) (err error) {
 
 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
@@ -938,7 +871,6 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
 
 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
@@ -953,11 +885,58 @@ func Close(fd int) (err error) {
 
 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 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(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags))
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefile_trampoline()
+
+//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(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefileat_trampoline()
+
+//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)
 	nfd = int(r0)
@@ -969,7 +948,6 @@ func Dup(fd int) (nfd int, err error) {
 
 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
@@ -984,7 +962,6 @@ func Dup2(from int, to int) (err error) {
 
 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
@@ -1009,7 +986,6 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
 
 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
@@ -1021,7 +997,6 @@ func Exit(code int) {
 
 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
@@ -1041,7 +1016,6 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1056,7 +1030,6 @@ func Fchdir(fd int) (err error) {
 
 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
@@ -1071,7 +1044,6 @@ func Fchflags(fd int, flags int) (err error) {
 
 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
@@ -1086,7 +1058,6 @@ func Fchmod(fd int, mode uint32) (err error) {
 
 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
@@ -1106,7 +1077,6 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1121,7 +1091,6 @@ func Fchown(fd int, uid int, gid int) (err error) {
 
 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
@@ -1141,11 +1110,29 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
 
 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 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(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_fclonefileat_trampoline()
+
+//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)
 	if e1 != 0 {
@@ -1156,7 +1143,6 @@ func Flock(fd int, how int) (err error) {
 
 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
@@ -1172,7 +1158,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
 
 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
@@ -1187,7 +1172,6 @@ func Fsync(fd int) (err error) {
 
 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
@@ -1202,11 +1186,31 @@ func Ftruncate(fd int, length int64) (err error) {
 
 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 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(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0)
+	n = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_getcwd_trampoline()
+
+//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)
 	size = int(r0)
@@ -1215,7 +1219,6 @@ func Getdtablesize() (size int) {
 
 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
@@ -1228,7 +1231,6 @@ func Getegid() (egid int) {
 
 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
@@ -1241,7 +1243,6 @@ func Geteuid() (uid int) {
 
 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
@@ -1254,7 +1255,6 @@ func Getgid() (gid int) {
 
 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
@@ -1270,7 +1270,6 @@ func Getpgid(pid int) (pgid int, err error) {
 
 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
@@ -1283,7 +1282,6 @@ func Getpgrp() (pgrp int) {
 
 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
@@ -1296,7 +1294,6 @@ func Getpid() (pid int) {
 
 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
@@ -1309,7 +1306,6 @@ func Getppid() (ppid int) {
 
 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
@@ -1325,7 +1321,6 @@ func Getpriority(which int, who int) (prio int, err error) {
 
 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
@@ -1340,7 +1335,6 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -1355,7 +1349,6 @@ func Getrusage(who int, rusage *Rusage) (err error) {
 
 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
@@ -1371,11 +1364,24 @@ func Getsid(pid int) (sid int, err error) {
 
 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 Gettimeofday(tp *Timeval) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_gettimeofday_trampoline()
+
+//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)
 	uid = int(r0)
@@ -1384,7 +1390,6 @@ func Getuid() (uid int) {
 
 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
@@ -1397,7 +1402,6 @@ func Issetugid() (tainted bool) {
 
 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
@@ -1413,7 +1417,6 @@ func Kqueue() (fd int, err error) {
 
 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
@@ -1433,7 +1436,6 @@ func Lchown(path string, uid int, gid int) (err error) {
 
 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
@@ -1458,7 +1460,6 @@ func Link(path string, link string) (err error) {
 
 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
@@ -1483,7 +1484,6 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
 
 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
@@ -1498,7 +1498,6 @@ func Listen(s int, backlog int) (err error) {
 
 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
@@ -1518,7 +1517,6 @@ func Mkdir(path string, mode uint32) (err error) {
 
 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
@@ -1538,7 +1536,6 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
 
 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
@@ -1558,7 +1555,6 @@ func Mkfifo(path string, mode uint32) (err error) {
 
 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
@@ -1578,7 +1574,6 @@ func Mknod(path string, mode uint32, dev int) (err error) {
 
 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
@@ -1599,7 +1594,6 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1620,7 +1614,6 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1641,7 +1634,6 @@ func Pathconf(path string, name int) (val int, err error) {
 
 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
@@ -1663,7 +1655,6 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1685,7 +1676,6 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1707,7 +1697,6 @@ func read(fd int, p []byte) (n int, err error) {
 
 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
@@ -1734,7 +1723,6 @@ func Readlink(path string, buf []byte) (n int, err error) {
 
 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
@@ -1761,7 +1749,6 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
 
 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
@@ -1786,7 +1773,6 @@ func Rename(from string, to string) (err error) {
 
 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
@@ -1811,7 +1797,6 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
 
 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
@@ -1831,7 +1816,6 @@ func Revoke(path string) (err error) {
 
 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
@@ -1851,7 +1835,6 @@ func Rmdir(path string) (err error) {
 
 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
@@ -1867,7 +1850,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
 
 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
@@ -1883,7 +1865,6 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
 
 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
@@ -1898,7 +1879,6 @@ func Setegid(egid int) (err error) {
 
 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
@@ -1913,7 +1893,6 @@ func Seteuid(euid int) (err error) {
 
 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
@@ -1928,7 +1907,6 @@ func Setgid(gid int) (err error) {
 
 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
@@ -1948,7 +1926,6 @@ func Setlogin(name string) (err error) {
 
 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
@@ -1963,7 +1940,6 @@ func Setpgid(pid int, pgid int) (err error) {
 
 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
@@ -1978,7 +1954,6 @@ func Setpriority(which int, who int, prio int) (err error) {
 
 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
@@ -1993,7 +1968,6 @@ func Setprivexec(flag int) (err error) {
 
 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
@@ -2008,7 +1982,6 @@ func Setregid(rgid int, egid int) (err error) {
 
 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
@@ -2023,7 +1996,6 @@ func Setreuid(ruid int, euid int) (err error) {
 
 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
@@ -2038,7 +2010,6 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -2054,7 +2025,6 @@ func Setsid() (pid int, err error) {
 
 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
@@ -2069,7 +2039,6 @@ func Settimeofday(tp *Timeval) (err error) {
 
 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
@@ -2084,7 +2053,6 @@ func Setuid(uid int) (err error) {
 
 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
@@ -2109,7 +2077,6 @@ func Symlink(path string, link string) (err error) {
 
 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
@@ -2134,7 +2101,6 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
 
 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
@@ -2149,7 +2115,6 @@ func Sync() (err error) {
 
 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
@@ -2169,7 +2134,6 @@ func Truncate(path string, length int64) (err error) {
 
 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
@@ -2182,7 +2146,6 @@ func Umask(newmask int) (oldmask int) {
 
 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
@@ -2202,7 +2165,6 @@ func Undelete(path string) (err error) {
 
 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
@@ -2222,7 +2184,6 @@ func Unlink(path string) (err error) {
 
 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
@@ -2242,7 +2203,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
 
 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
@@ -2262,7 +2222,6 @@ func Unmount(path string, flags int) (err error) {
 
 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
@@ -2284,7 +2243,6 @@ func write(fd int, p []byte) (n int, err error) {
 
 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
@@ -2300,7 +2258,6 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
 
 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
@@ -2315,7 +2272,6 @@ func munmap(addr uintptr, length uintptr) (err error) {
 
 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
@@ -2342,38 +2298,6 @@ 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)
 	if e1 != 0 {
@@ -2384,7 +2308,6 @@ func Fstat(fd int, stat *Stat_t) (err error) {
 
 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
@@ -2404,7 +2327,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
 
 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
@@ -2419,7 +2341,6 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
 
 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
@@ -2435,7 +2356,6 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
 
 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
@@ -2455,11 +2375,24 @@ func Lstat(path string, stat *Stat_t) (err error) {
 
 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 ptrace1(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: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)
@@ -2475,7 +2408,6 @@ func Stat(path string, stat *Stat_t) (err error) {
 
 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
@@ -2495,5 +2427,4 @@ func Statfs(path string, stat *Statfs_t) (err error) {
 
 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_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
index a3fdf09..c77bd6e 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
@@ -60,8 +60,6 @@ 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
@@ -110,6 +108,10 @@ 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_clonefile_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefile(SB)
+TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefileat(SB)
 TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_dup(SB)
 TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
@@ -132,6 +134,8 @@ 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_fclonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_fclonefileat(SB)
 TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_flock(SB)
 TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
@@ -140,6 +144,8 @@ 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_getcwd_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_getcwd(SB)
 TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getdtablesize(SB)
 TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
@@ -164,6 +170,8 @@ 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_gettimeofday_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_gettimeofday(SB)
 TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getuid(SB)
 TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
@@ -264,10 +272,6 @@ 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
@@ -278,6 +282,8 @@ 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_ptrace_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_ptrace(SB)
 TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_stat64(SB)
 TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
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
index f519ce9..de4738f 100644
--- 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
@@ -24,7 +24,6 @@ func closedir(dir uintptr) (err error) {
 
 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
@@ -37,5 +36,4 @@ func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
 
 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.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
index 6310395..c0c771f 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
@@ -25,7 +25,6 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
 
 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
@@ -40,7 +39,6 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
 
 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
@@ -56,7 +54,6 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
 
 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
@@ -72,7 +69,6 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
 
 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
@@ -87,7 +83,6 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -102,7 +97,6 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -118,7 +112,6 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
 
 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
@@ -133,7 +126,6 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
 
 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
@@ -148,7 +140,6 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
 
 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
@@ -163,7 +154,6 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -178,7 +168,6 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -193,7 +182,6 @@ func Shutdown(s int, how int) (err error) {
 
 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
@@ -208,7 +196,6 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
 
 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
@@ -230,7 +217,6 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
 
 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
@@ -251,7 +237,6 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
 
 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
@@ -267,7 +252,6 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -283,7 +267,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -299,7 +282,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
 
 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
@@ -319,7 +301,6 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
 
 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
@@ -334,7 +315,6 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
 
 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
@@ -350,7 +330,6 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
 
 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
@@ -371,7 +350,6 @@ func Madvise(b []byte, behav int) (err error) {
 
 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
@@ -392,7 +370,6 @@ func Mlock(b []byte) (err error) {
 
 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
@@ -407,7 +384,6 @@ func Mlockall(flags int) (err error) {
 
 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
@@ -428,7 +404,6 @@ func Mprotect(b []byte, prot int) (err error) {
 
 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
@@ -449,7 +424,6 @@ func Msync(b []byte, flags int) (err error) {
 
 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
@@ -470,7 +444,6 @@ func Munlock(b []byte) (err error) {
 
 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
@@ -485,30 +458,12 @@ func Munlockall() (err error) {
 
 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)
+func pipe(p *[2]int32) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -517,7 +472,6 @@ func pipe() (r int, w int, err error) {
 
 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
@@ -543,7 +497,6 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o
 
 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
@@ -564,7 +517,6 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio
 
 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
@@ -589,7 +541,6 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o
 
 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
@@ -609,7 +560,6 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio
 
 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
@@ -634,7 +584,6 @@ func removexattr(path string, attr string, options int) (err error) {
 
 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
@@ -654,7 +603,6 @@ func fremovexattr(fd int, attr string, options int) (err error) {
 
 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
@@ -675,7 +623,6 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro
 
 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
@@ -691,7 +638,6 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
 
 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
@@ -706,7 +652,6 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp
 
 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
@@ -722,7 +667,6 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
 
 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
@@ -737,7 +681,6 @@ func kill(pid int, signum int, posix int) (err error) {
 
 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
@@ -752,7 +695,6 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
 
 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
@@ -773,7 +715,6 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
 
 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
@@ -788,7 +729,6 @@ func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer
 
 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
@@ -808,7 +748,6 @@ func Access(path string, mode uint32) (err error) {
 
 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
@@ -823,7 +762,6 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
 
 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
@@ -843,7 +781,6 @@ func Chdir(path string) (err error) {
 
 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
@@ -863,7 +800,6 @@ func Chflags(path string, flags int) (err error) {
 
 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
@@ -883,7 +819,6 @@ func Chmod(path string, mode uint32) (err error) {
 
 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
@@ -903,7 +838,6 @@ func Chown(path string, uid int, gid int) (err error) {
 
 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
@@ -923,7 +857,6 @@ func Chroot(path string) (err error) {
 
 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
@@ -938,7 +871,6 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
 
 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
@@ -953,11 +885,58 @@ func Close(fd int) (err error) {
 
 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 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(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags))
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefile_trampoline()
+
+//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(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefileat_trampoline()
+
+//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)
 	nfd = int(r0)
@@ -969,7 +948,6 @@ func Dup(fd int) (nfd int, err error) {
 
 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
@@ -984,7 +962,6 @@ func Dup2(from int, to int) (err error) {
 
 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
@@ -1009,7 +986,6 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
 
 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
@@ -1021,7 +997,6 @@ func Exit(code int) {
 
 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
@@ -1041,7 +1016,6 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1056,7 +1030,6 @@ func Fchdir(fd int) (err error) {
 
 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
@@ -1071,7 +1044,6 @@ func Fchflags(fd int, flags int) (err error) {
 
 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
@@ -1086,7 +1058,6 @@ func Fchmod(fd int, mode uint32) (err error) {
 
 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
@@ -1106,7 +1077,6 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1121,7 +1091,6 @@ func Fchown(fd int, uid int, gid int) (err error) {
 
 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
@@ -1141,11 +1110,29 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
 
 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 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(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_fclonefileat_trampoline()
+
+//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)
 	if e1 != 0 {
@@ -1156,7 +1143,6 @@ func Flock(fd int, how int) (err error) {
 
 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
@@ -1172,7 +1158,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
 
 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
@@ -1187,7 +1172,6 @@ func Fsync(fd int) (err error) {
 
 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
@@ -1202,11 +1186,31 @@ func Ftruncate(fd int, length int64) (err error) {
 
 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 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(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0)
+	n = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_getcwd_trampoline()
+
+//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)
 	size = int(r0)
@@ -1215,7 +1219,6 @@ func Getdtablesize() (size int) {
 
 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
@@ -1228,7 +1231,6 @@ func Getegid() (egid int) {
 
 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
@@ -1241,7 +1243,6 @@ func Geteuid() (uid int) {
 
 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
@@ -1254,7 +1255,6 @@ func Getgid() (gid int) {
 
 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
@@ -1270,7 +1270,6 @@ func Getpgid(pid int) (pgid int, err error) {
 
 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
@@ -1283,7 +1282,6 @@ func Getpgrp() (pgrp int) {
 
 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
@@ -1296,7 +1294,6 @@ func Getpid() (pid int) {
 
 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
@@ -1309,7 +1306,6 @@ func Getppid() (ppid int) {
 
 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
@@ -1325,7 +1321,6 @@ func Getpriority(which int, who int) (prio int, err error) {
 
 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
@@ -1340,7 +1335,6 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -1355,7 +1349,6 @@ func Getrusage(who int, rusage *Rusage) (err error) {
 
 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
@@ -1371,11 +1364,24 @@ func Getsid(pid int) (sid int, err error) {
 
 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 Gettimeofday(tp *Timeval) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_gettimeofday_trampoline()
+
+//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)
 	uid = int(r0)
@@ -1384,7 +1390,6 @@ func Getuid() (uid int) {
 
 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
@@ -1397,7 +1402,6 @@ func Issetugid() (tainted bool) {
 
 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
@@ -1413,7 +1417,6 @@ func Kqueue() (fd int, err error) {
 
 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
@@ -1433,7 +1436,6 @@ func Lchown(path string, uid int, gid int) (err error) {
 
 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
@@ -1458,7 +1460,6 @@ func Link(path string, link string) (err error) {
 
 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
@@ -1483,7 +1484,6 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
 
 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
@@ -1498,7 +1498,6 @@ func Listen(s int, backlog int) (err error) {
 
 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
@@ -1518,7 +1517,6 @@ func Mkdir(path string, mode uint32) (err error) {
 
 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
@@ -1538,7 +1536,6 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
 
 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
@@ -1558,7 +1555,6 @@ func Mkfifo(path string, mode uint32) (err error) {
 
 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
@@ -1578,7 +1574,6 @@ func Mknod(path string, mode uint32, dev int) (err error) {
 
 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
@@ -1599,7 +1594,6 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1620,7 +1614,6 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1641,7 +1634,6 @@ func Pathconf(path string, name int) (val int, err error) {
 
 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
@@ -1663,7 +1655,6 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1685,7 +1676,6 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1707,7 +1697,6 @@ func read(fd int, p []byte) (n int, err error) {
 
 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
@@ -1734,7 +1723,6 @@ func Readlink(path string, buf []byte) (n int, err error) {
 
 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
@@ -1761,7 +1749,6 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
 
 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
@@ -1786,7 +1773,6 @@ func Rename(from string, to string) (err error) {
 
 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
@@ -1811,7 +1797,6 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
 
 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
@@ -1831,7 +1816,6 @@ func Revoke(path string) (err error) {
 
 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
@@ -1851,7 +1835,6 @@ func Rmdir(path string) (err error) {
 
 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
@@ -1867,7 +1850,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
 
 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
@@ -1883,7 +1865,6 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
 
 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
@@ -1898,7 +1879,6 @@ func Setegid(egid int) (err error) {
 
 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
@@ -1913,7 +1893,6 @@ func Seteuid(euid int) (err error) {
 
 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
@@ -1928,7 +1907,6 @@ func Setgid(gid int) (err error) {
 
 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
@@ -1948,7 +1926,6 @@ func Setlogin(name string) (err error) {
 
 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
@@ -1963,7 +1940,6 @@ func Setpgid(pid int, pgid int) (err error) {
 
 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
@@ -1978,7 +1954,6 @@ func Setpriority(which int, who int, prio int) (err error) {
 
 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
@@ -1993,7 +1968,6 @@ func Setprivexec(flag int) (err error) {
 
 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
@@ -2008,7 +1982,6 @@ func Setregid(rgid int, egid int) (err error) {
 
 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
@@ -2023,7 +1996,6 @@ func Setreuid(ruid int, euid int) (err error) {
 
 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
@@ -2038,7 +2010,6 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -2054,7 +2025,6 @@ func Setsid() (pid int, err error) {
 
 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
@@ -2069,7 +2039,6 @@ func Settimeofday(tp *Timeval) (err error) {
 
 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
@@ -2084,7 +2053,6 @@ func Setuid(uid int) (err error) {
 
 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
@@ -2109,7 +2077,6 @@ func Symlink(path string, link string) (err error) {
 
 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
@@ -2134,7 +2101,6 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
 
 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
@@ -2149,7 +2115,6 @@ func Sync() (err error) {
 
 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
@@ -2169,7 +2134,6 @@ func Truncate(path string, length int64) (err error) {
 
 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
@@ -2182,7 +2146,6 @@ func Umask(newmask int) (oldmask int) {
 
 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
@@ -2202,7 +2165,6 @@ func Undelete(path string) (err error) {
 
 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
@@ -2222,7 +2184,6 @@ func Unlink(path string) (err error) {
 
 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
@@ -2242,7 +2203,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
 
 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
@@ -2262,7 +2222,6 @@ func Unmount(path string, flags int) (err error) {
 
 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
@@ -2284,7 +2243,6 @@ func write(fd int, p []byte) (n int, err error) {
 
 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
@@ -2300,7 +2258,6 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
 
 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
@@ -2315,7 +2272,6 @@ func munmap(addr uintptr, length uintptr) (err error) {
 
 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
@@ -2342,23 +2298,6 @@ 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 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 {
@@ -2369,7 +2308,6 @@ func Fstat(fd int, stat *Stat_t) (err error) {
 
 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
@@ -2389,7 +2327,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
 
 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
@@ -2404,7 +2341,6 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
 
 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
@@ -2420,7 +2356,6 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
 
 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
@@ -2440,7 +2375,6 @@ func Lstat(path string, stat *Stat_t) (err error) {
 
 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
@@ -2460,7 +2394,6 @@ func Stat(path string, stat *Stat_t) (err error) {
 
 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
@@ -2480,5 +2413,4 @@ func Statfs(path string, stat *Statfs_t) (err error) {
 
 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
index b67f518..5eec5f1 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
@@ -60,8 +60,6 @@ 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
@@ -110,6 +108,10 @@ 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_clonefile_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefile(SB)
+TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefileat(SB)
 TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_dup(SB)
 TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
@@ -132,6 +134,8 @@ 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_fclonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_fclonefileat(SB)
 TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_flock(SB)
 TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
@@ -140,6 +144,8 @@ 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_getcwd_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_getcwd(SB)
 TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getdtablesize(SB)
 TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
@@ -164,6 +170,8 @@ 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_gettimeofday_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_gettimeofday(SB)
 TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getuid(SB)
 TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
@@ -264,8 +272,6 @@ 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
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..870eb37 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
@@ -24,7 +24,6 @@ func closedir(dir uintptr) (err error) {
 
 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
@@ -37,5 +36,4 @@ func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
 
 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_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
index a8709f7..9b01a79 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
@@ -25,7 +25,6 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
 
 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
@@ -40,7 +39,6 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
 
 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
@@ -56,7 +54,6 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
 
 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
@@ -72,7 +69,6 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
 
 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
@@ -87,7 +83,6 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -102,7 +97,6 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
 
 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
@@ -118,7 +112,6 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
 
 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
@@ -133,7 +126,6 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
 
 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
@@ -148,7 +140,6 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
 
 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
@@ -163,7 +154,6 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -178,7 +168,6 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 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
@@ -193,7 +182,6 @@ func Shutdown(s int, how int) (err error) {
 
 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
@@ -208,7 +196,6 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
 
 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
@@ -230,7 +217,6 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
 
 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
@@ -251,7 +237,6 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
 
 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
@@ -267,7 +252,6 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -283,7 +267,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 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
@@ -299,7 +282,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
 
 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
@@ -319,7 +301,6 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
 
 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
@@ -334,7 +315,6 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
 
 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
@@ -350,7 +330,6 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
 
 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
@@ -371,7 +350,6 @@ func Madvise(b []byte, behav int) (err error) {
 
 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
@@ -392,7 +370,6 @@ func Mlock(b []byte) (err error) {
 
 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
@@ -407,7 +384,6 @@ func Mlockall(flags int) (err error) {
 
 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
@@ -428,7 +404,6 @@ func Mprotect(b []byte, prot int) (err error) {
 
 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
@@ -449,7 +424,6 @@ func Msync(b []byte, flags int) (err error) {
 
 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
@@ -470,7 +444,6 @@ func Munlock(b []byte) (err error) {
 
 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
@@ -485,30 +458,12 @@ func Munlockall() (err error) {
 
 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)
+func pipe(p *[2]int32) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -517,7 +472,6 @@ func pipe() (r int, w int, err error) {
 
 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
@@ -543,7 +497,6 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o
 
 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
@@ -564,7 +517,6 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio
 
 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
@@ -589,7 +541,6 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o
 
 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
@@ -609,7 +560,6 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio
 
 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
@@ -634,7 +584,6 @@ func removexattr(path string, attr string, options int) (err error) {
 
 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
@@ -654,7 +603,6 @@ func fremovexattr(fd int, attr string, options int) (err error) {
 
 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
@@ -675,7 +623,6 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro
 
 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
@@ -691,7 +638,6 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
 
 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
@@ -706,7 +652,6 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp
 
 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
@@ -722,7 +667,6 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
 
 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
@@ -737,7 +681,6 @@ func kill(pid int, signum int, posix int) (err error) {
 
 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
@@ -752,7 +695,6 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
 
 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
@@ -773,7 +715,6 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
 
 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
@@ -788,7 +729,6 @@ func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer
 
 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
@@ -808,7 +748,6 @@ func Access(path string, mode uint32) (err error) {
 
 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
@@ -823,7 +762,6 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
 
 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
@@ -843,7 +781,6 @@ func Chdir(path string) (err error) {
 
 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
@@ -863,7 +800,6 @@ func Chflags(path string, flags int) (err error) {
 
 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
@@ -883,7 +819,6 @@ func Chmod(path string, mode uint32) (err error) {
 
 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
@@ -903,7 +838,6 @@ func Chown(path string, uid int, gid int) (err error) {
 
 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
@@ -923,7 +857,6 @@ func Chroot(path string) (err error) {
 
 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
@@ -938,7 +871,6 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
 
 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
@@ -953,11 +885,58 @@ func Close(fd int) (err error) {
 
 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 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(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags))
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefile_trampoline()
+
+//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(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_clonefileat_trampoline()
+
+//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)
 	nfd = int(r0)
@@ -969,7 +948,6 @@ func Dup(fd int) (nfd int, err error) {
 
 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
@@ -984,7 +962,6 @@ func Dup2(from int, to int) (err error) {
 
 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
@@ -1009,7 +986,6 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
 
 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
@@ -1021,7 +997,6 @@ func Exit(code int) {
 
 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
@@ -1041,7 +1016,6 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1056,7 +1030,6 @@ func Fchdir(fd int) (err error) {
 
 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
@@ -1071,7 +1044,6 @@ func Fchflags(fd int, flags int) (err error) {
 
 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
@@ -1086,7 +1058,6 @@ func Fchmod(fd int, mode uint32) (err error) {
 
 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
@@ -1106,7 +1077,6 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 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
@@ -1121,7 +1091,6 @@ func Fchown(fd int, uid int, gid int) (err error) {
 
 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
@@ -1141,11 +1110,29 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
 
 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 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(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_fclonefileat_trampoline()
+
+//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)
 	if e1 != 0 {
@@ -1156,7 +1143,6 @@ func Flock(fd int, how int) (err error) {
 
 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
@@ -1172,7 +1158,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
 
 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
@@ -1187,7 +1172,6 @@ func Fsync(fd int) (err error) {
 
 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
@@ -1202,11 +1186,31 @@ func Ftruncate(fd int, length int64) (err error) {
 
 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 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(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0)
+	n = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_getcwd_trampoline()
+
+//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)
 	size = int(r0)
@@ -1215,7 +1219,6 @@ func Getdtablesize() (size int) {
 
 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
@@ -1228,7 +1231,6 @@ func Getegid() (egid int) {
 
 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
@@ -1241,7 +1243,6 @@ func Geteuid() (uid int) {
 
 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
@@ -1254,7 +1255,6 @@ func Getgid() (gid int) {
 
 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
@@ -1270,7 +1270,6 @@ func Getpgid(pid int) (pgid int, err error) {
 
 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
@@ -1283,7 +1282,6 @@ func Getpgrp() (pgrp int) {
 
 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
@@ -1296,7 +1294,6 @@ func Getpid() (pid int) {
 
 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
@@ -1309,7 +1306,6 @@ func Getppid() (ppid int) {
 
 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
@@ -1325,7 +1321,6 @@ func Getpriority(which int, who int) (prio int, err error) {
 
 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
@@ -1340,7 +1335,6 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -1355,7 +1349,6 @@ func Getrusage(who int, rusage *Rusage) (err error) {
 
 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
@@ -1371,11 +1364,24 @@ func Getsid(pid int) (sid int, err error) {
 
 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 Gettimeofday(tp *Timeval) (err error) {
+	_, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func libc_gettimeofday_trampoline()
+
+//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)
 	uid = int(r0)
@@ -1384,7 +1390,6 @@ func Getuid() (uid int) {
 
 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
@@ -1397,7 +1402,6 @@ func Issetugid() (tainted bool) {
 
 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
@@ -1413,7 +1417,6 @@ func Kqueue() (fd int, err error) {
 
 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
@@ -1433,7 +1436,6 @@ func Lchown(path string, uid int, gid int) (err error) {
 
 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
@@ -1458,7 +1460,6 @@ func Link(path string, link string) (err error) {
 
 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
@@ -1483,7 +1484,6 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
 
 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
@@ -1498,7 +1498,6 @@ func Listen(s int, backlog int) (err error) {
 
 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
@@ -1518,7 +1517,6 @@ func Mkdir(path string, mode uint32) (err error) {
 
 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
@@ -1538,7 +1536,6 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
 
 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
@@ -1558,7 +1555,6 @@ func Mkfifo(path string, mode uint32) (err error) {
 
 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
@@ -1578,7 +1574,6 @@ func Mknod(path string, mode uint32, dev int) (err error) {
 
 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
@@ -1599,7 +1594,6 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1620,7 +1614,6 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
 
 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
@@ -1641,7 +1634,6 @@ func Pathconf(path string, name int) (val int, err error) {
 
 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
@@ -1663,7 +1655,6 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1685,7 +1676,6 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 
 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
@@ -1707,7 +1697,6 @@ func read(fd int, p []byte) (n int, err error) {
 
 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
@@ -1734,7 +1723,6 @@ func Readlink(path string, buf []byte) (n int, err error) {
 
 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
@@ -1761,7 +1749,6 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
 
 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
@@ -1786,7 +1773,6 @@ func Rename(from string, to string) (err error) {
 
 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
@@ -1811,7 +1797,6 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
 
 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
@@ -1831,7 +1816,6 @@ func Revoke(path string) (err error) {
 
 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
@@ -1851,7 +1835,6 @@ func Rmdir(path string) (err error) {
 
 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
@@ -1867,7 +1850,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
 
 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
@@ -1883,7 +1865,6 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
 
 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
@@ -1898,7 +1879,6 @@ func Setegid(egid int) (err error) {
 
 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
@@ -1913,7 +1893,6 @@ func Seteuid(euid int) (err error) {
 
 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
@@ -1928,7 +1907,6 @@ func Setgid(gid int) (err error) {
 
 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
@@ -1948,7 +1926,6 @@ func Setlogin(name string) (err error) {
 
 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
@@ -1963,7 +1940,6 @@ func Setpgid(pid int, pgid int) (err error) {
 
 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
@@ -1978,7 +1954,6 @@ func Setpriority(which int, who int, prio int) (err error) {
 
 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
@@ -1993,7 +1968,6 @@ func Setprivexec(flag int) (err error) {
 
 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
@@ -2008,7 +1982,6 @@ func Setregid(rgid int, egid int) (err error) {
 
 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
@@ -2023,7 +1996,6 @@ func Setreuid(ruid int, euid int) (err error) {
 
 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
@@ -2038,7 +2010,6 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
 
 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
@@ -2054,7 +2025,6 @@ func Setsid() (pid int, err error) {
 
 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
@@ -2069,7 +2039,6 @@ func Settimeofday(tp *Timeval) (err error) {
 
 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
@@ -2084,7 +2053,6 @@ func Setuid(uid int) (err error) {
 
 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
@@ -2109,7 +2077,6 @@ func Symlink(path string, link string) (err error) {
 
 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
@@ -2134,7 +2101,6 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
 
 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
@@ -2149,7 +2115,6 @@ func Sync() (err error) {
 
 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
@@ -2169,7 +2134,6 @@ func Truncate(path string, length int64) (err error) {
 
 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
@@ -2182,7 +2146,6 @@ func Umask(newmask int) (oldmask int) {
 
 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
@@ -2202,7 +2165,6 @@ func Undelete(path string) (err error) {
 
 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
@@ -2222,7 +2184,6 @@ func Unlink(path string) (err error) {
 
 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
@@ -2242,7 +2203,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
 
 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
@@ -2262,7 +2222,6 @@ func Unmount(path string, flags int) (err error) {
 
 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
@@ -2284,7 +2243,6 @@ func write(fd int, p []byte) (n int, err error) {
 
 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
@@ -2300,7 +2258,6 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
 
 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
@@ -2315,7 +2272,6 @@ func munmap(addr uintptr, length uintptr) (err error) {
 
 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
@@ -2342,23 +2298,6 @@ 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)
 	if e1 != 0 {
@@ -2369,7 +2308,6 @@ func Fstat(fd int, stat *Stat_t) (err error) {
 
 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
@@ -2389,7 +2327,6 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
 
 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
@@ -2404,7 +2341,6 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
 
 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
@@ -2420,7 +2356,6 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
 
 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
@@ -2440,11 +2375,24 @@ func Lstat(path string, stat *Stat_t) (err error) {
 
 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 ptrace1(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: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)
@@ -2460,7 +2408,6 @@ func Stat(path string, stat *Stat_t) (err error) {
 
 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
@@ -2480,5 +2427,4 @@ func Statfs(path string, stat *Statfs_t) (err error) {
 
 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_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
index 40cce1b..53c402b 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
@@ -60,8 +60,6 @@ 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
@@ -110,6 +108,10 @@ 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_clonefile_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefile(SB)
+TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_clonefileat(SB)
 TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_dup(SB)
 TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
@@ -132,6 +134,8 @@ 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_fclonefileat_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_fclonefileat(SB)
 TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_flock(SB)
 TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
@@ -140,6 +144,8 @@ 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_getcwd_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_getcwd(SB)
 TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getdtablesize(SB)
 TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
@@ -164,6 +170,8 @@ 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_gettimeofday_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_gettimeofday(SB)
 TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_getuid(SB)
 TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
@@ -264,8 +272,6 @@ 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
@@ -276,6 +282,8 @@ 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_ptrace_trampoline(SB),NOSPLIT,$0-0
+	JMP	libc_ptrace(SB)
 TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0
 	JMP	libc_stat(SB)
 TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0
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..1aaccd3 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
@@ -214,22 +214,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 +362,16 @@ 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) (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 extpread(fd int, p []byte, flags int, offset int64) (n int, err error) {
 	var _p0 unsafe.Pointer
 	if len(p) > 0 {
@@ -439,6 +433,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 c9058f3..600f1d2 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
@@ -214,22 +214,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)
@@ -376,8 +360,15 @@ func pipe2(p *[2]_C_int, flags 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 int) (err error) {
-	_, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+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)
 	}
@@ -386,15 +377,24 @@ func ptrace(request int, pid int, addr uintptr, data int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Getcwd(buf []byte) (n int, err error) {
+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(buf) > 0 {
-		_p0 = unsafe.Pointer(&buf[0])
+	if len(mib) > 0 {
+		_p0 = unsafe.Pointer(&mib[0])
 	} else {
 		_p0 = unsafe.Pointer(&_zero)
 	}
-	r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
-	n = 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)
 	}
@@ -403,8 +403,8 @@ func Getcwd(buf []byte) (n 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 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)
 	}
@@ -1352,7 +1352,7 @@ func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error)
 	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_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), uintptr(dev>>32), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
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 49b20c2..064934b 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
@@ -350,22 +350,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 +387,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 {
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 abab3d7..4adaaa5 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
@@ -1,4 +1,4 @@
-// go run mksyscall.go -tags freebsd,arm64 -- syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm64.go
+// 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.
 
 // +build freebsd,arm64
@@ -350,22 +350,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 +387,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 {
diff --git a/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
new file mode 100644
index 0000000..665dd9e
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
@@ -0,0 +1,101 @@
+// go run mksyscall_solaris.go -illumos -tags illumos,amd64 syscall_illumos.go
+// Code generated by the command above; see README.md. DO NOT EDIT.
+
+// +build illumos,amd64
+
+package unix
+
+import (
+	"unsafe"
+)
+
+//go:cgo_import_dynamic libc_readv readv "libc.so"
+//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:linkname procreadv libc_readv
+//go:linkname procpreadv libc_preadv
+//go:linkname procwritev libc_writev
+//go:linkname procpwritev libc_pwritev
+//go:linkname procaccept4 libc_accept4
+
+var (
+	procreadv,
+	procpreadv,
+	procwritev,
+	procpwritev,
+	procaccept4 syscallFunc
+)
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func readv(fd int, iovs []Iovec) (n int, err error) {
+	var _p0 *Iovec
+	if len(iovs) > 0 {
+		_p0 = &iovs[0]
+	}
+	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procreadv)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 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 preadv(fd int, iovs []Iovec, off int64) (n int, err error) {
+	var _p0 *Iovec
+	if len(iovs) > 0 {
+		_p0 = &iovs[0]
+	}
+	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpreadv)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 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 writev(fd int, iovs []Iovec) (n int, err error) {
+	var _p0 *Iovec
+	if len(iovs) > 0 {
+		_p0 = &iovs[0]
+	}
+	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procwritev)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 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 pwritev(fd int, iovs []Iovec, off int64) (n int, err error) {
+	var _p0 *Iovec
+	if len(iovs) > 0 {
+		_p0 = &iovs[0]
+	}
+	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpwritev)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 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 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
+}
diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
similarity index 54%
rename from vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux.go
index f8e5c37..2fbbbe5 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
@@ -1,7 +1,6 @@
-// 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
-// Code generated by the command above; see README.md. DO NOT EDIT.
+// Code generated by mkmerge.go; DO NOT EDIT.
 
-// +build darwin,amd64,!go1.12
+// +build linux
 
 package unix
 
@@ -10,13 +9,11 @@ import (
 	"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)
+func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
+	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_flags), 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -25,19 +22,13 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
 
 // 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)
+func fchmodat(dirfd int, path string, mode uint32) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
 	}
-	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)
+	_, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -46,9 +37,8 @@ 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 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)
+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)
 	}
@@ -57,29 +47,18 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
 
 // 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)
+func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(oldpath)
+	if err != nil {
+		return
 	}
-	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)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(newpath)
+	if err != nil {
+		return
 	}
-	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)
+	_, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -88,18 +67,14 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
 
 // 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)
+func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
 	}
-	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)
+	r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -108,18 +83,14 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
 
 // 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)
+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
 	}
-	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)))
+	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)
 	}
@@ -128,8 +99,9 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
 
 // 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)
+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)
 	}
@@ -138,24 +110,19 @@ func Shutdown(s int, how int) (err error) {
 
 // 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)
+func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
 	}
-	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])
+	var _p1 unsafe.Pointer
+	if len(buf) > 0 {
+		_p1 = unsafe.Pointer(&buf[0])
 	} else {
-		_p0 = unsafe.Pointer(&_zero)
+		_p1 = 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 := 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)
@@ -165,25 +132,18 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
 
 // 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)
+func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(oldpath)
+	if err != nil {
+		return
 	}
-	_, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
-	if e1 != 0 {
-		err = errnoErr(e1)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(newpath)
+	if err != nil {
+		return
 	}
-	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)
+	_, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -192,20 +152,13 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
 
 // 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)
+func Unlinkat(dirfd int, path string, flags int) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
 	}
-	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)
+	_, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -214,13 +167,13 @@ 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 utimes(path string, timeval *[2]Timeval) (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_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 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)
 	}
@@ -229,8 +182,15 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
 
 // 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)
+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)
 	}
@@ -239,9 +199,9 @@ func futimes(fd int, timeval *[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 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)
 	}
@@ -250,14 +210,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 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))
+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)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -266,14 +221,15 @@ func Madvise(b []byte, behav int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Mlock(b []byte) (err error) {
+func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
 	var _p0 unsafe.Pointer
-	if len(b) > 0 {
-		_p0 = unsafe.Pointer(&b[0])
+	if len(buf) > 0 {
+		_p0 = unsafe.Pointer(&buf[0])
 	} else {
 		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+	ret = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -282,8 +238,14 @@ func Mlock(b []byte) (err error) {
 
 // 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)
+func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(arg2)
+	if err != nil {
+		return
+	}
+	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+	ret = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -292,14 +254,19 @@ func Mlockall(flags int) (err error) {
 
 // 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)
+func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(arg3)
+	if err != nil {
+		return
 	}
-	_, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+	var _p1 *byte
+	_p1, err = BytePtrFromString(arg4)
+	if err != nil {
+		return
+	}
+	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+	ret = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -308,14 +275,14 @@ func Mprotect(b []byte, prot int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Msync(b []byte, flags int) (err error) {
+func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
 	var _p0 unsafe.Pointer
-	if len(b) > 0 {
-		_p0 = unsafe.Pointer(&b[0])
+	if len(payload) > 0 {
+		_p0 = unsafe.Pointer(&payload[0])
 	} else {
 		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -324,14 +291,15 @@ func Msync(b []byte, flags int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Munlock(b []byte) (err error) {
+func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
 	var _p0 unsafe.Pointer
-	if len(b) > 0 {
-		_p0 = unsafe.Pointer(&b[0])
+	if len(buf) > 0 {
+		_p0 = unsafe.Pointer(&buf[0])
 	} else {
 		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+	ret = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -340,51 +308,18 @@ func Munlock(b []byte) (err error) {
 
 // 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) {
+func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(keyType)
 	if err != nil {
 		return
 	}
 	var _p1 *byte
-	_p1, err = BytePtrFromString(attr)
+	_p1, err = BytePtrFromString(restriction)
 	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)
+	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -393,14 +328,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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
+	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -409,18 +338,8 @@ 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) {
-	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))
+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)
 	}
@@ -429,13 +348,13 @@ 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) {
+func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
+	_p0, err = BytePtrFromString(arg)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
+	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -444,18 +363,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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(source)
 	if err != nil {
 		return
 	}
 	var _p1 *byte
-	_p1, err = BytePtrFromString(attr)
+	_p1, err = BytePtrFromString(target)
+	if err != nil {
+		return
+	}
+	var _p2 *byte
+	_p2, err = BytePtrFromString(fstype)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
+	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -464,13 +388,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 Acct(path string) (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_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -479,35 +403,25 @@ 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(keyType)
 	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)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(description)
+	if err != nil {
+		return
 	}
-	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)
+	var _p2 unsafe.Pointer
+	if len(payload) > 0 {
+		_p2 = unsafe.Pointer(&payload[0])
+	} else {
+		_p2 = 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 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+	id = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -516,9 +430,9 @@ 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 Adjtimex(buf *Timex) (state int, err error) {
+	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+	state = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -527,8 +441,8 @@ 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 Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
+	_, _, e1 := RawSyscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -537,8 +451,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 Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
+	_, _, e1 := RawSyscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -547,24 +461,13 @@ 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)
+func Chdir(path string) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
 	}
-	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 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
+	_, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -573,13 +476,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 Chroot(path string) (err error) {
 	var _p0 *byte
 	_p0, err = BytePtrFromString(path)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+	_, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -588,8 +491,8 @@ 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 ClockGetres(clockid int32, res *Timespec) (err error) {
+	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -598,13 +501,8 @@ 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) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+func ClockGettime(clockid int32, time *Timespec) (err error) {
+	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -613,13 +511,8 @@ 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) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
+	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -628,13 +521,8 @@ 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) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+func Close(fd int) (err error) {
+	_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -643,13 +531,9 @@ 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) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+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)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -658,13 +542,13 @@ 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 DeleteModule(name string, flags int) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(name)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+	_, _, e1 := Syscall(SYS_DELETE_MODULE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -673,8 +557,9 @@ func Chroot(path string) (err error) {
 
 // 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)
+func Dup(oldfd int) (fd int, err error) {
+	r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -683,9 +568,8 @@ 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 Dup3(oldfd int, newfd int, flags int) (err error) {
+	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -694,8 +578,9 @@ 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 EpollCreate1(flag int) (fd int, err error) {
+	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -704,18 +589,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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -724,20 +599,9 @@ 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)
-	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)
+func Eventfd(initval uint, flags int) (fd int, err error) {
+	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -746,18 +610,15 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 // 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)
-	}
+func Exit(code int) {
+	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
 	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)
+func Fchdir(fd int) (err error) {
+	_, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -776,13 +637,13 @@ func Fchmod(fd int, mode uint32) (err error) {
 
 // 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) {
+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_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+	_, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -791,8 +652,8 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
 
 // 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))
+func Fdatasync(fd int) (err error) {
+	_, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -801,13 +662,20 @@ func Fchown(fd int, uid int, gid int) (err error) {
 
 // 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) {
+func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(attr)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+	var _p1 unsafe.Pointer
+	if len(dest) > 0 {
+		_p1 = unsafe.Pointer(&dest[0])
+	} else {
+		_p1 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 0, 0)
+	sz = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -816,8 +684,13 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
 
 // 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)
+func FinitModule(fd int, params string, flags int) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(params)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -826,9 +699,15 @@ func Flock(fd int, how int) (err error) {
 
 // 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)
+func Flistxattr(fd int, dest []byte) (sz int, err error) {
+	var _p0 unsafe.Pointer
+	if len(dest) > 0 {
+		_p0 = unsafe.Pointer(&dest[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
+	sz = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -837,8 +716,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 Flock(fd int, how int) (err error) {
+	_, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -847,8 +726,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 Fremovexattr(fd int, attr string) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -857,33 +741,49 @@ 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)
-	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)
+func Fsetxattr(fd int, attr string, dest []byte, flags int) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	var _p1 unsafe.Pointer
+	if len(dest) > 0 {
+		_p1 = unsafe.Pointer(&dest[0])
+	} else {
+		_p1 = unsafe.Pointer(&_zero)
+	}
+	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
 	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)
+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 Getgid() (gid int) {
-	r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
-	gid = int(r0)
+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)
+	}
+	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+	n = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
 	return
 }
 
@@ -900,16 +800,8 @@ func Getpgid(pid int) (pgid int, err error) {
 
 // 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)
+	r0, _ := RawSyscallNoError(SYS_GETPID, 0, 0, 0)
 	pid = int(r0)
 	return
 }
@@ -917,7 +809,7 @@ func Getpid() (pid int) {
 // 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, _ := RawSyscallNoError(SYS_GETPPID, 0, 0, 0)
 	ppid = int(r0)
 	return
 }
@@ -935,8 +827,15 @@ func Getpriority(which int, who int) (prio int, err error) {
 
 // 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)
+func Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -966,25 +865,54 @@ func Getsid(pid int) (sid int, err error) {
 
 // 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)
+func Gettid() (tid int) {
+	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
+	tid = 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)
+func Getxattr(path string, attr string, dest []byte) (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
+	}
+	var _p2 unsafe.Pointer
+	if len(dest) > 0 {
+		_p2 = unsafe.Pointer(&dest[0])
+	} else {
+		_p2 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Kqueue() (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
-	fd = int(r0)
+func InitModule(moduleImage []byte, params string) (err error) {
+	var _p0 unsafe.Pointer
+	if len(moduleImage) > 0 {
+		_p0 = unsafe.Pointer(&moduleImage[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
+	}
+	var _p1 *byte
+	_p1, err = BytePtrFromString(params)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), uintptr(unsafe.Pointer(_p1)))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -993,13 +921,14 @@ func Kqueue() (fd int, err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Lchown(path string, uid int, gid int) (err error) {
+func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(pathname)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+	watchdesc = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1008,18 +937,47 @@ func Lchown(path string, uid int, gid int) (err error) {
 
 // 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
+func InotifyInit1(flags int) (fd int, err error) {
+	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+	fd = int(r0)
+	if e1 != 0 {
+		err = errnoErr(e1)
 	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(link)
-	if err != nil {
-		return
+	return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+	success = 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, sig syscall.Signal) (err error) {
+	_, _, e1 := 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 Klogctl(typ 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)
 	}
-	_, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1028,18 +986,25 @@ func Link(path string, link string) (err error) {
 
 // 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) {
+func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
 	var _p0 *byte
 	_p0, err = BytePtrFromString(path)
 	if err != nil {
 		return
 	}
 	var _p1 *byte
-	_p1, err = BytePtrFromString(link)
+	_p1, err = BytePtrFromString(attr)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+	var _p2 unsafe.Pointer
+	if len(dest) > 0 {
+		_p2 = unsafe.Pointer(&dest[0])
+	} else {
+		_p2 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+	sz = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1048,8 +1013,20 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
 
 // 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)
+func Listxattr(path string, dest []byte) (sz int, err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
+	}
+	var _p1 unsafe.Pointer
+	if len(dest) > 0 {
+		_p1 = unsafe.Pointer(&dest[0])
+	} else {
+		_p1 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+	sz = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1058,13 +1035,20 @@ func Listen(s int, backlog int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Mkdir(path string, mode uint32) (err error) {
+func Llistxattr(path string, dest []byte) (sz int, err error) {
 	var _p0 *byte
 	_p0, err = BytePtrFromString(path)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+	var _p1 unsafe.Pointer
+	if len(dest) > 0 {
+		_p1 = unsafe.Pointer(&dest[0])
+	} else {
+		_p1 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+	sz = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1073,13 +1057,18 @@ func Mkdir(path string, mode uint32) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+func Lremovexattr(path string, attr string) (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))
+	var _p1 *byte
+	_p1, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1088,13 +1077,24 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Mkfifo(path string, mode uint32) (err error) {
+func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
 	var _p0 *byte
 	_p0, err = BytePtrFromString(path)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	var _p2 unsafe.Pointer
+	if len(data) > 0 {
+		_p2 = unsafe.Pointer(&data[0])
+	} else {
+		_p2 = unsafe.Pointer(&_zero)
+	}
+	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1103,13 +1103,14 @@ 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 MemfdCreate(name string, flags int) (fd int, err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(name)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
+	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+	fd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1118,14 +1119,13 @@ func Mknod(path string, mode uint32, dev int) (err error) {
 
 // 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) {
+func Mkdirat(dirfd int, path string, mode uint32) (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)
+	_, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1134,13 +1134,33 @@ 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 Mknodat(dirfd int, path string, mode uint32, dev 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)
+	_, _, 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 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)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -1150,14 +1170,18 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Pathconf(path string, name int) (val int, err error) {
+func PivotRoot(newroot string, putold string) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(newroot)
 	if err != nil {
 		return
 	}
-	r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
-	val = int(r0)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(putold)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1166,15 +1190,8 @@ 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) {
-	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)
-	n = int(r0)
+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)
 	}
@@ -1183,15 +1200,8 @@ 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) {
-	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)
-	n = int(r0)
+func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1200,14 +1210,8 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 
 // 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)))
+func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
 	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -1217,19 +1221,14 @@ func read(fd int, p []byte) (n int, err error) {
 
 // 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])
+func read(fd int, p []byte) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(p) > 0 {
+		_p0 = unsafe.Pointer(&p[0])
 	} else {
-		_p1 = unsafe.Pointer(&_zero)
+		_p0 = unsafe.Pointer(&_zero)
 	}
-	r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
 	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -1239,20 +1238,18 @@ func Readlink(path string, buf []byte) (n int, err error) {
 
 // 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) {
+func Removexattr(path string, attr string) (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)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1261,18 +1258,18 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Rename(from string, to string) (err error) {
+func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(from)
+	_p0, err = BytePtrFromString(oldpath)
 	if err != nil {
 		return
 	}
 	var _p1 *byte
-	_p1, err = BytePtrFromString(to)
+	_p1, err = BytePtrFromString(newpath)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+	_, _, e1 := Syscall6(SYS_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1281,18 +1278,24 @@ func Rename(from string, to string) (err error) {
 
 // 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) {
+func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(from)
+	_p0, err = BytePtrFromString(keyType)
 	if err != nil {
 		return
 	}
 	var _p1 *byte
-	_p1, err = BytePtrFromString(to)
+	_p1, err = BytePtrFromString(description)
+	if err != nil {
+		return
+	}
+	var _p2 *byte
+	_p2, err = BytePtrFromString(callback)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+	id = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1301,13 +1304,14 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
 
 // 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
+func Setdomainname(p []byte) (err error) {
+	var _p0 unsafe.Pointer
+	if len(p) > 0 {
+		_p0 = unsafe.Pointer(&p[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
+	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1316,13 +1320,14 @@ func Revoke(path string) (err error) {
 
 // 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
+func Sethostname(p []byte) (err error) {
+	var _p0 unsafe.Pointer
+	if len(p) > 0 {
+		_p0 = unsafe.Pointer(&p[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1331,9 +1336,8 @@ 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))
-	newoffset = int64(r0)
+func Setpgid(pid int, pgid int) (err error) {
+	_, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1342,9 +1346,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
 
 // 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)
+func Setsid() (pid int, err error) {
+	r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+	pid = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1353,8 +1357,8 @@ 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)
+func Settimeofday(tv *Timeval) (err error) {
+	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1363,8 +1367,8 @@ func Setegid(egid int) (err error) {
 
 // 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)
+func Setns(fd int, nstype int) (err error) {
+	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1373,8 +1377,8 @@ func Seteuid(euid int) (err error) {
 
 // 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)
+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)
 	}
@@ -1383,13 +1387,24 @@ func Setgid(gid int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Setlogin(name string) (err error) {
+func Setxattr(path string, attr string, data []byte, flags int) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
+	_p0, err = BytePtrFromString(path)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
+	var _p1 *byte
+	_p1, err = BytePtrFromString(attr)
+	if err != nil {
+		return
+	}
+	var _p2 unsafe.Pointer
+	if len(data) > 0 {
+		_p2 = unsafe.Pointer(&data[0])
+	} else {
+		_p2 = unsafe.Pointer(&_zero)
+	}
+	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1398,8 +1413,9 @@ func Setlogin(name string) (err error) {
 
 // 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)
+func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
+	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
+	newfd = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1408,8 +1424,13 @@ func Setpgid(pid int, pgid int) (err error) {
 
 // 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))
+func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
+	var _p0 *byte
+	_p0, err = BytePtrFromString(path)
+	if err != nil {
+		return
+	}
+	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), uintptr(unsafe.Pointer(stat)), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1418,8 +1439,15 @@ 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 Sync() {
+	SyscallNoError(SYS_SYNC, 0, 0, 0)
+	return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func Syncfs(fd int) (err error) {
+	_, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1428,8 +1456,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 Sysinfo(info *Sysinfo_t) (err error) {
+	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1438,8 +1466,9 @@ 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 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)
 	}
@@ -1448,8 +1477,8 @@ func Setreuid(ruid int, euid int) (err error) {
 
 // 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)
+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)
 	}
@@ -1458,9 +1487,8 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
 
 // 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)
+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)
 	}
@@ -1469,8 +1497,8 @@ func Setsid() (pid int, err error) {
 
 // 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)
+func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1479,8 +1507,9 @@ func Settimeofday(tp *Timeval) (err error) {
 
 // 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)
+func Times(tms *Tms) (ticks uintptr, err error) {
+	r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+	ticks = uintptr(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1489,18 +1518,16 @@ func Setuid(uid int) (err error) {
 
 // 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)
+func Umask(mask int) (oldmask int) {
+	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
+	oldmask = int(r0)
+	return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func Uname(buf *Utsname) (err error) {
+	_, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1509,18 +1536,13 @@ func Symlink(path string, link string) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+func Unmount(target string, flags int) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(oldpath)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(newpath)
+	_p0, err = BytePtrFromString(target)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+	_, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1529,8 +1551,8 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Sync() (err error) {
-	_, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+func Unshare(flags int) (err error) {
+	_, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1539,13 +1561,15 @@ func Sync() (err error) {
 
 // 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
+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)
 	}
-	_, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
+	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1554,21 +1578,19 @@ func Truncate(path string, length int64) (err error) {
 
 // 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)
+func exitThread(code int) (err error) {
+	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
 	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)
+func readlen(fd int, p *byte, np int) (n int, err error) {
+	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1577,13 +1599,9 @@ func Undelete(path string) (err error) {
 
 // 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)
+func writelen(fd int, p *byte, np int) (n int, err error) {
+	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1592,13 +1610,15 @@ func Unlink(path string) (err error) {
 
 // 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
+func readv(fd int, iovs []Iovec) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1607,13 +1627,15 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
 
 // 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
+func writev(fd int, iovs []Iovec) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
 	}
-	_, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1622,14 +1644,14 @@ func Unmount(path string, flags int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func write(fd int, p []byte) (n int, err error) {
+func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
 	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
 	} else {
 		_p0 = unsafe.Pointer(&_zero)
 	}
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
 	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -1639,9 +1661,15 @@ 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))
-	ret = uintptr(r0)
+func pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1650,8 +1678,15 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
 
 // 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)
+func preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
+	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1660,8 +1695,14 @@ func munmap(addr uintptr, length uintptr) (err error) {
 
 // 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))
+func pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
+	var _p0 unsafe.Pointer
+	if len(iovs) > 0 {
+		_p0 = unsafe.Pointer(&iovs[0])
+	} else {
+		_p0 = unsafe.Pointer(&_zero)
+	}
+	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
 	n = int(r0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -1671,9 +1712,8 @@ 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))
-	n = int(r0)
+func munmap(addr uintptr, length uintptr) (err error) {
+	_, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1682,15 +1722,14 @@ 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) {
+func Madvise(b []byte, advice int) (err error) {
 	var _p0 unsafe.Pointer
-	if len(buf) > 0 {
-		_p0 = unsafe.Pointer(&buf[0])
+	if len(b) > 0 {
+		_p0 = unsafe.Pointer(&b[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)
+	_, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1699,8 +1738,14 @@ 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 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)
+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)
 	}
@@ -1709,10 +1754,14 @@ func ptrace(request int, pid int, addr uintptr, data uintptr) (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)
+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)
 	}
@@ -1721,8 +1770,8 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, 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_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+func Mlockall(flags int) (err error) {
+	_, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1731,13 +1780,14 @@ func Fstat(fd int, stat *Stat_t) (err error) {
 
 // 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
+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 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+	_, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1746,8 +1796,14 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
 
 // 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)
+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)
 	}
@@ -1756,9 +1812,8 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
 
 // 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)
+func Munlockall() (err error) {
+	_, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1767,13 +1822,13 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n 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) {
+func faccessat(dirfd int, path string, mode uint32) (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)
+	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1782,13 +1837,13 @@ func Lstat(path string, stat *Stat_t) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func Stat(path string, stat *Stat_t) (err error) {
+func Faccessat2(dirfd int, path string, mode uint32, flags int) (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)
+	_, _, e1 := Syscall6(SYS_FACCESSAT2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1797,13 +1852,80 @@ 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 nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) {
 	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
+	_p0, err = BytePtrFromString(pathname)
 	if err != nil {
 		return
 	}
-	_, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+	if e1 != 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
+	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), 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 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 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)
 	}
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 0e68c14..19ebd3f 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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(mask>>32), 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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(off>>32), uintptr(len), uintptr(len>>32))
-	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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-	n = 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+	_, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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(r1)<<32 | int64(r0))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1860,17 +55,7 @@ func pipe(p *[2]_C_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)
-	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) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	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 c038e52..5c56218 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2525,16 +720,6 @@ func pipe(p *[2]_C_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)
-	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)
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 333683d..dc69d99 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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(mask>>32), 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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(off>>32), uintptr(len), uintptr(len>>32))
-	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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-	n = 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+	_, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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(r1)<<32 | int64(r0))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1860,16 +55,6 @@ func pipe(p *[2]_C_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)
-	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)
@@ -2049,7 +234,7 @@ 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) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
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 838bbdb..1b897de 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1956,7 +151,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)
@@ -2112,7 +307,7 @@ func Setresuid(ruid int, euid int, suid int) (err error) {
 
 // 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)
@@ -2393,16 +588,6 @@ func Gettimeofday(tv *Timeval) (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)
-	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)
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 7da49ae..4918684 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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, 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2510,16 +705,6 @@ func Pause() (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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// 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)
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 f22f83f..9171d3b 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2469,16 +664,6 @@ func utimes(path string, times *[2]Timeval) (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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
 func fstat(fd int, st *stat_t) (err error) {
 	_, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(st)), 0)
 	if e1 != 0 {
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 307c430..82286f0 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2469,16 +664,6 @@ func utimes(path string, times *[2]Timeval) (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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
 func fstat(fd int, st *stat_t) (err error) {
 	_, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(st)), 0)
 	if e1 != 0 {
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 0997b6e..1592062 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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(mask>>32), 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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(off>>32), uintptr(len), uintptr(len>>32))
-	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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
-	n = 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+	_, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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(r1)<<32 | int64(r0))
 	if e1 != 0 {
 		err = errnoErr(e1)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2510,16 +705,6 @@ func Pause() (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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// 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)
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 a601e72..73a42e2 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2577,16 +772,6 @@ func pipe(p *[2]_C_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)
-	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)
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 6e4cb19..6b85595 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2577,16 +772,6 @@ func pipe(p *[2]_C_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)
-	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)
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 e690f19..b761334 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -2373,16 +568,6 @@ func Gettimeofday(tv *Timeval) (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)
-	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)
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 f4cd086..d7032ab 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1850,7 +45,7 @@ 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 Dup2(oldfd int, newfd int) (err error) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2357,16 +552,6 @@ func utimes(path string, times *[2]Timeval) (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)
-	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)
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 2447f2a..bcbbdd9 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
@@ -14,1808 +14,8 @@ var _ syscall.Errno
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_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 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 fchmodat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FCHMODAT, 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 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 Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (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_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 openat(dirfd int, path string, flags int, mode 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(flags), uintptr(mode), 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 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)
-	}
-	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 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 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 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_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 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 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)
-	}
-	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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret 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_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg2)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg3)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(arg4)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
-	var _p0 unsafe.Pointer
-	if len(payload) > 0 {
-		_p0 = unsafe.Pointer(&payload[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret 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_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
-	ret = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(restriction)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), 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 keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
-	_, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
-	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 reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(arg)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), 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 mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(source)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(fstype)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_ACCT, 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 AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 unsafe.Pointer
-	if len(payload) > 0 {
-		_p2 = unsafe.Pointer(&payload[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Adjtimex(buf *Timex) (state int, err error) {
-	r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
-	state = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
-	_, _, e1 := Syscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 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 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 ClockGetres(clockid int32, res *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockGettime(clockid int32, time *Timespec) (err error) {
-	_, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
-	_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func DeleteModule(name string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_DELETE_MODULE, 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 Dup(oldfd int) (fd int, err error) {
-	r0, _, e1 := 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 Dup3(oldfd int, newfd int, flags int) (err error) {
-	_, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func EpollCreate1(flag int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 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 EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
-	_, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Eventfd(initval uint, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), 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 Exit(code int) {
-	SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
-	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 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 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 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 Fdatasync(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_FDATASYNC, 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 Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 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 FinitModule(fd int, params string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), 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 Flistxattr(fd int, dest []byte) (sz int, err error) {
-	var _p0 unsafe.Pointer
-	if len(dest) > 0 {
-		_p0 = unsafe.Pointer(&dest[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
-	sz = int(r0)
-	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 Fremovexattr(fd int, attr string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
-	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, dest []byte, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(attr)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 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 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)
-	}
-	r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), 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 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 Getpid() (pid int) {
-	r0, _ := RawSyscallNoError(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, _ := RawSyscallNoError(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 Getrandom(buf []byte, flags int) (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_GETRANDOM, uintptr(_p0), uintptr(len(buf)), 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 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 Gettid() (tid int) {
-	r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
-	tid = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Getxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 InitModule(moduleImage []byte, params string) (err error) {
-	var _p0 unsafe.Pointer
-	if len(moduleImage) > 0 {
-		_p0 = unsafe.Pointer(&moduleImage[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(params)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), 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 InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(pathname)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
-	watchdesc = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func InotifyInit1(flags int) (fd int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, 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 InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
-	r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
-	success = 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, sig syscall.Signal) (err error) {
-	_, _, e1 := 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 Klogctl(typ 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)
-	}
-	r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), 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 Lgetxattr(path string, attr string, dest []byte) (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
-	}
-	var _p2 unsafe.Pointer
-	if len(dest) > 0 {
-		_p2 = unsafe.Pointer(&dest[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 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 Listxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Llistxattr(path string, dest []byte) (sz int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	var _p1 unsafe.Pointer
-	if len(dest) > 0 {
-		_p1 = unsafe.Pointer(&dest[0])
-	} else {
-		_p1 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
-	sz = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Lremovexattr(path string, attr 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_LREMOVEXATTR, 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 Lsetxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func MemfdCreate(name string, flags int) (fd int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(name)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall(SYS_MEMFD_CREATE, 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 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 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 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)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func PivotRoot(newroot string, putold string) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(newroot)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(putold)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_PIVOT_ROOT, 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 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)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
-	_, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
-	r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
-	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 Removexattr(path string, attr 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)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (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_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), 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 RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(keyType)
-	if err != nil {
-		return
-	}
-	var _p1 *byte
-	_p1, err = BytePtrFromString(description)
-	if err != nil {
-		return
-	}
-	var _p2 *byte
-	_p2, err = BytePtrFromString(callback)
-	if err != nil {
-		return
-	}
-	r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
-	id = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Setdomainname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Sethostname(p []byte) (err error) {
-	var _p0 unsafe.Pointer
-	if len(p) > 0 {
-		_p0 = unsafe.Pointer(&p[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 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 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(tv *Timeval) (err error) {
-	_, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, 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 Setns(fd int, nstype int) (err error) {
-	_, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 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 Setxattr(path string, attr string, data []byte, flags 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
-	}
-	var _p2 unsafe.Pointer
-	if len(data) > 0 {
-		_p2 = unsafe.Pointer(&data[0])
-	} else {
-		_p2 = unsafe.Pointer(&_zero)
-	}
-	_, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
-	r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
-	newfd = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), 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 Sync() {
-	SyscallNoError(SYS_SYNC, 0, 0, 0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Syncfs(fd int) (err error) {
-	_, _, e1 := Syscall(SYS_SYNCFS, 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 Sysinfo(info *Sysinfo_t) (err error) {
-	_, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 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 Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
-	_, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
-	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 := RawSyscall(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 Umask(mask int) (oldmask int) {
-	r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
-	oldmask = int(r0)
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func Uname(buf *Utsname) (err error) {
-	_, _, e1 := RawSyscall(SYS_UNAME, 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 Unmount(target string, flags int) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(target)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_UMOUNT2, 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 Unshare(flags int) (err error) {
-	_, _, e1 := Syscall(SYS_UNSHARE, 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 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 exitThread(code int) (err error) {
-	_, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	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, p *byte, np int) (n int, err error) {
-	r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func readv(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func writev(fd int, iovs []Iovec) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
-	n = int(r0)
-	if e1 != 0 {
-		err = errnoErr(e1)
-	}
-	return
-}
-
-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
-
-func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
-	var _p0 unsafe.Pointer
-	if len(iovs) > 0 {
-		_p0 = unsafe.Pointer(&iovs[0])
-	} else {
-		_p0 = unsafe.Pointer(&_zero)
-	}
-	r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 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 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 Madvise(b []byte, advice 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(advice))
-	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 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 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 faccessat(dirfd int, path string, mode uint32) (err error) {
-	var _p0 *byte
-	_p0, err = BytePtrFromString(path)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+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)
 	}
@@ -1824,13 +24,8 @@ func faccessat(dirfd int, path string, mode uint32) (err error) {
 
 // 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)
-	if err != nil {
-		return
-	}
-	_, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+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)
 	}
@@ -1839,9 +34,9 @@ func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int,
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
-	r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
-	fd = int(r0)
+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)
 	}
@@ -1877,7 +72,7 @@ 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) {
+func dup2(oldfd int, newfd int) (err error) {
 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
 	if e1 != 0 {
 		err = errnoErr(e1)
@@ -2535,16 +730,6 @@ func pipe(p *[2]_C_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)
-	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)
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..ec6bd5b 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,7 @@
-// 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
+// +build openbsd,mips64
 
 package unix
 
@@ -350,8 +350,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 +360,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 +377,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 +411,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 +420,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 +562,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 +685,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 +695,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 +710,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 +820,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 +852,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 +871,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 +964,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 +1024,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 +1054,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)
@@ -1173,7 +1134,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
 	} 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)
@@ -1190,7 +1151,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
 	} 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 +1293,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 +1315,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 +1379,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 +1389,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 +1399,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 +1429,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 +1470,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 +1556,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 +1573,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 +1636,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 +1678,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..6dbb837 100644
--- a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
@@ -11,6 +11,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"
@@ -140,6 +141,7 @@ import (
 //go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.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
@@ -270,6 +272,7 @@ import (
 
 var (
 	procpipe,
+	procpipe2,
 	procgetsockname,
 	procGetcwd,
 	procgetgroups,
@@ -412,6 +415,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 {
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..102f1ab 100644
--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
@@ -1,4 +1,4 @@
-// mksysctl_openbsd.pl
+// go run mksysctl_openbsd.go
 // Code generated by the command above; DO NOT EDIT.
 
 // +build 386,openbsd
@@ -30,6 +30,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..4866fce 100644
--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
@@ -31,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.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..d3801eb 100644
--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
@@ -30,6 +30,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_mips64.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go
new file mode 100644
index 0000000..aca34b3
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go
@@ -0,0 +1,279 @@
+// go run mksysctl_openbsd.go
+// Code generated by the command above; DO NOT EDIT.
+
+// +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
index f336145..ad62324 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
@@ -5,6 +5,7 @@
 
 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_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
index 654dd3d..a2fc91d 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
@@ -5,6 +5,7 @@
 
 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
index 103a72e..20d7808 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
@@ -5,6 +5,7 @@
 
 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_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
index 7ab2130..527b958 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
@@ -5,6 +5,7 @@
 
 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..9912c6e 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
@@ -6,129 +6,125 @@
 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 +157,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 +221,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 +298,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 +308,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_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
index 7aae554..f6742bd 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
@@ -431,4 +431,9 @@ 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
 )
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 7968439..f7e5255 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
@@ -353,4 +353,9 @@ 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
 )
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 3c663c6..3f60977 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
@@ -395,4 +395,9 @@ 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
 )
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 1f3b4d1..dbedf4c 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
@@ -298,4 +298,9 @@ 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
 )
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 00da3de..eeff7e1 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
@@ -416,4 +416,9 @@ 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
 )
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 d404fbd..73cfa53 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
@@ -346,4 +346,9 @@ const (
 	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
 )
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 bfbf242..be74729 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
@@ -346,4 +346,9 @@ const (
 	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
 )
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 3826f49..2a1047c 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
@@ -416,4 +416,9 @@ 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
 )
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 52e3da6..3270742 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
@@ -395,4 +395,9 @@ 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
 )
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 6141f90..a58572f 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
@@ -395,4 +395,9 @@ 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
 )
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 4f7261a..72a65b7 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
@@ -297,4 +297,9 @@ 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
 )
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 f47014a..1fb9ae5 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
@@ -360,4 +360,9 @@ 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
 )
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 dd78abb..57636e0 100644
--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
@@ -374,4 +374,9 @@ const (
 	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
 )
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..5c08d57
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go
@@ -0,0 +1,220 @@
+// 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.
+
+// +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/ztypes_aix_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
index 2c1f815..295859c 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
@@ -219,6 +219,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..a9ee0ff 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
@@ -223,6 +223,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
index 9f47b87..725b4be 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
@@ -92,9 +92,9 @@ type Statfs_t struct {
 	Type        uint32
 	Flags       uint32
 	Fssubtype   uint32
-	Fstypename  [16]int8
-	Mntonname   [1024]int8
-	Mntfromname [1024]int8
+	Fstypename  [16]byte
+	Mntonname   [1024]byte
+	Mntfromname [1024]byte
 	Reserved    [8]uint32
 }
 
@@ -145,6 +145,10 @@ type Dirent struct {
 	_       [3]byte
 }
 
+const (
+	PathMax = 0x400
+)
+
 type RawSockaddrInet4 struct {
 	Len    uint8
 	Family uint8
@@ -190,6 +194,15 @@ 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 _Socklen uint32
 
 type Linger struct {
@@ -254,7 +267,9 @@ const (
 	SizeofSockaddrAny      = 0x6c
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
+	SizeofSockaddrCtl      = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
@@ -301,7 +316,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -344,7 +358,6 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Metric  int32
 }
 
@@ -365,7 +378,6 @@ type IfmaMsghdr2 struct {
 	Addrs    int32
 	Flags    int32
 	Index    uint16
-	_        [2]byte
 	Refcount int32
 }
 
@@ -374,7 +386,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -396,7 +407,8 @@ type RtMetrics struct {
 	Rtt      uint32
 	Rttvar   uint32
 	Pksent   uint32
-	Filler   [4]uint32
+	State    uint32
+	Filler   [3]uint32
 }
 
 const (
@@ -497,3 +509,8 @@ type Clockinfo struct {
 	Stathz  int32
 	Profhz  int32
 }
+
+type CtlInfo struct {
+	Id   uint32
+	Name [96]byte
+}
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..080ffce 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
@@ -70,7 +70,6 @@ type Stat_t struct {
 	Uid     uint32
 	Gid     uint32
 	Rdev    int32
-	_       [4]byte
 	Atim    Timespec
 	Mtim    Timespec
 	Ctim    Timespec
@@ -97,10 +96,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 +133,7 @@ type Fbootstraptransfer_t struct {
 
 type Log2phys_t struct {
 	Flags uint32
-	_     [8]byte
-	_     [8]byte
+	_     [16]byte
 }
 
 type Fsid struct {
@@ -151,6 +150,10 @@ type Dirent struct {
 	_       [3]byte
 }
 
+const (
+	PathMax = 0x400
+)
+
 type RawSockaddrInet4 struct {
 	Len    uint8
 	Family uint8
@@ -196,6 +199,15 @@ 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 _Socklen uint32
 
 type Linger struct {
@@ -221,10 +233,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
@@ -262,7 +272,9 @@ const (
 	SizeofSockaddrAny      = 0x6c
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
+	SizeofSockaddrCtl      = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
@@ -309,7 +321,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -352,7 +363,6 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Metric  int32
 }
 
@@ -373,7 +383,6 @@ type IfmaMsghdr2 struct {
 	Addrs    int32
 	Flags    int32
 	Index    uint16
-	_        [2]byte
 	Refcount int32
 }
 
@@ -382,7 +391,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -404,7 +412,8 @@ type RtMetrics struct {
 	Rtt      uint32
 	Rttvar   uint32
 	Pksent   uint32
-	Filler   [4]uint32
+	State    uint32
+	Filler   [3]uint32
 }
 
 const (
@@ -427,7 +436,6 @@ type BpfStat struct {
 
 type BpfProgram struct {
 	Len   uint32
-	_     [4]byte
 	Insns *BpfInsn
 }
 
@@ -452,7 +460,6 @@ type Termios struct {
 	Cflag  uint64
 	Lflag  uint64
 	Cc     [20]uint8
-	_      [4]byte
 	Ispeed uint64
 	Ospeed uint64
 }
@@ -507,3 +514,8 @@ type Clockinfo struct {
 	Stathz  int32
 	Profhz  int32
 }
+
+type CtlInfo struct {
+	Id   uint32
+	Name [96]byte
+}
diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
index 4fe4c9c..f2a77bc 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
@@ -1,6 +1,5 @@
-// 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
+// cgo -godefs types_darwin.go | go run mkpost.go
+// Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build arm,darwin
 
@@ -31,7 +30,7 @@ type Timeval struct {
 	Usec int32
 }
 
-type Timeval32 [0]byte
+type Timeval32 struct{}
 
 type Rusage struct {
 	Utime    Timeval
@@ -93,9 +92,9 @@ type Statfs_t struct {
 	Type        uint32
 	Flags       uint32
 	Fssubtype   uint32
-	Fstypename  [16]int8
-	Mntonname   [1024]int8
-	Mntfromname [1024]int8
+	Fstypename  [16]byte
+	Mntonname   [1024]byte
+	Mntfromname [1024]byte
 	Reserved    [8]uint32
 }
 
@@ -146,6 +145,10 @@ type Dirent struct {
 	_       [3]byte
 }
 
+const (
+	PathMax = 0x400
+)
+
 type RawSockaddrInet4 struct {
 	Len    uint8
 	Family uint8
@@ -191,6 +194,15 @@ 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 _Socklen uint32
 
 type Linger struct {
@@ -255,7 +267,9 @@ const (
 	SizeofSockaddrAny      = 0x6c
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
+	SizeofSockaddrCtl      = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
@@ -302,7 +316,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -345,7 +358,6 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Metric  int32
 }
 
@@ -366,7 +378,6 @@ type IfmaMsghdr2 struct {
 	Addrs    int32
 	Flags    int32
 	Index    uint16
-	_        [2]byte
 	Refcount int32
 }
 
@@ -375,7 +386,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -397,7 +407,8 @@ type RtMetrics struct {
 	Rtt      uint32
 	Rttvar   uint32
 	Pksent   uint32
-	Filler   [4]uint32
+	State    uint32
+	Filler   [3]uint32
 }
 
 const (
@@ -498,3 +509,8 @@ type Clockinfo struct {
 	Stathz  int32
 	Profhz  int32
 }
+
+type CtlInfo struct {
+	Id   uint32
+	Name [96]byte
+}
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..c949242 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
@@ -70,7 +70,6 @@ type Stat_t struct {
 	Uid     uint32
 	Gid     uint32
 	Rdev    int32
-	_       [4]byte
 	Atim    Timespec
 	Mtim    Timespec
 	Ctim    Timespec
@@ -97,10 +96,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 +133,7 @@ type Fbootstraptransfer_t struct {
 
 type Log2phys_t struct {
 	Flags uint32
-	_     [8]byte
-	_     [8]byte
+	_     [16]byte
 }
 
 type Fsid struct {
@@ -151,6 +150,10 @@ type Dirent struct {
 	_       [3]byte
 }
 
+const (
+	PathMax = 0x400
+)
+
 type RawSockaddrInet4 struct {
 	Len    uint8
 	Family uint8
@@ -196,6 +199,15 @@ 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 _Socklen uint32
 
 type Linger struct {
@@ -221,10 +233,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
@@ -262,7 +272,9 @@ const (
 	SizeofSockaddrAny      = 0x6c
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
+	SizeofSockaddrCtl      = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
@@ -309,7 +321,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -352,7 +363,6 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Metric  int32
 }
 
@@ -373,7 +383,6 @@ type IfmaMsghdr2 struct {
 	Addrs    int32
 	Flags    int32
 	Index    uint16
-	_        [2]byte
 	Refcount int32
 }
 
@@ -382,7 +391,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -404,7 +412,8 @@ type RtMetrics struct {
 	Rtt      uint32
 	Rttvar   uint32
 	Pksent   uint32
-	Filler   [4]uint32
+	State    uint32
+	Filler   [3]uint32
 }
 
 const (
@@ -427,7 +436,6 @@ type BpfStat struct {
 
 type BpfProgram struct {
 	Len   uint32
-	_     [4]byte
 	Insns *BpfInsn
 }
 
@@ -452,7 +460,6 @@ type Termios struct {
 	Cflag  uint64
 	Lflag  uint64
 	Cc     [20]uint8
-	_      [4]byte
 	Ispeed uint64
 	Ospeed uint64
 }
@@ -507,3 +514,8 @@ type Clockinfo struct {
 	Stathz  int32
 	Profhz  int32
 }
+
+type CtlInfo struct {
+	Id   uint32
+	Name [96]byte
+}
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..85506a0 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
@@ -70,11 +70,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 +91,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 +200,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 +234,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x36
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
@@ -269,7 +266,7 @@ type FdSet struct {
 const (
 	SizeofIfMsghdr         = 0xb0
 	SizeofIfData           = 0xa0
-	SizeofIfaMsghdr        = 0x14
+	SizeofIfaMsghdr        = 0x18
 	SizeofIfmaMsghdr       = 0x10
 	SizeofIfAnnounceMsghdr = 0x18
 	SizeofRtMsghdr         = 0x98
@@ -280,10 +277,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 +290,6 @@ type IfData struct {
 	Hdrlen     uint8
 	Recvquota  uint8
 	Xmitquota  uint8
-	_          [2]byte
 	Mtu        uint64
 	Metric     uint64
 	Link_state uint64
@@ -316,24 +311,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 +344,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -374,7 +367,6 @@ type RtMetrics struct {
 	Hopcount  uint64
 	Mssopt    uint16
 	Pad       uint16
-	_         [4]byte
 	Msl       uint64
 	Iwmaxsegs uint64
 	Iwcapsegs uint64
@@ -400,7 +392,6 @@ type BpfStat struct {
 
 type BpfProgram struct {
 	Len   uint32
-	_     [4]byte
 	Insns *BpfInsn
 }
 
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 0ec1596..3e9dad3 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
@@ -128,9 +128,9 @@ type Statfs_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [1024]int8
-	Mntonname   [1024]int8
+	Fstypename  [16]byte
+	Mntfromname [1024]byte
+	Mntonname   [1024]byte
 }
 
 type statfs_freebsd11_t struct {
@@ -153,9 +153,9 @@ type statfs_freebsd11_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [88]int8
-	Mntonname   [88]int8
+	Fstypename  [16]byte
+	Mntfromname [88]byte
+	Mntonname   [88]byte
 }
 
 type Flock_t struct {
@@ -313,6 +313,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x36
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPMreqn          = 0xc
 	SizeofIPv6Mreq         = 0x14
@@ -375,15 +376,15 @@ 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 Sigset_t struct {
@@ -458,7 +459,7 @@ type ifMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Data    ifData
 }
 
@@ -469,7 +470,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -536,7 +536,7 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Metric  int32
 }
 
@@ -547,7 +547,7 @@ type IfmaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 }
 
 type IfAnnounceMsghdr struct {
@@ -564,7 +564,7 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Flags   int32
 	Addrs   int32
 	Pid     int32
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 8340f57..e00e615 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
@@ -123,9 +123,9 @@ type Statfs_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [1024]int8
-	Mntonname   [1024]int8
+	Fstypename  [16]byte
+	Mntfromname [1024]byte
+	Mntonname   [1024]byte
 }
 
 type statfs_freebsd11_t struct {
@@ -148,9 +148,9 @@ type statfs_freebsd11_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [88]int8
-	Mntonname   [88]int8
+	Fstypename  [16]byte
+	Mntfromname [88]byte
+	Mntonname   [88]byte
 }
 
 type Flock_t struct {
@@ -275,10 +275,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
@@ -311,6 +309,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x36
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPMreqn          = 0xc
 	SizeofIPv6Mreq         = 0x14
@@ -463,7 +462,7 @@ type ifMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Data    ifData
 }
 
@@ -474,7 +473,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -541,7 +539,7 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Metric  int32
 }
 
@@ -552,7 +550,7 @@ type IfmaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 }
 
 type IfAnnounceMsghdr struct {
@@ -569,7 +567,7 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -623,7 +621,6 @@ type BpfZbuf struct {
 
 type BpfProgram struct {
 	Len   uint32
-	_     [4]byte
 	Insns *BpfInsn
 }
 
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..5da13c8 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
@@ -125,9 +125,9 @@ type Statfs_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [1024]int8
-	Mntonname   [1024]int8
+	Fstypename  [16]byte
+	Mntfromname [1024]byte
+	Mntonname   [1024]byte
 }
 
 type statfs_freebsd11_t struct {
@@ -150,9 +150,9 @@ type statfs_freebsd11_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [88]int8
-	Mntonname   [88]int8
+	Fstypename  [16]byte
+	Mntfromname [88]byte
+	Mntonname   [88]byte
 }
 
 type Flock_t struct {
@@ -311,6 +311,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x36
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPMreqn          = 0xc
 	SizeofIPv6Mreq         = 0x14
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 e751e00..995ecf9 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
@@ -1,4 +1,4 @@
-// cgo -godefs types_freebsd.go | go run mkpost.go
+// cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build arm64,freebsd
@@ -123,9 +123,9 @@ type Statfs_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [1024]int8
-	Mntonname   [1024]int8
+	Fstypename  [16]byte
+	Mntfromname [1024]byte
+	Mntonname   [1024]byte
 }
 
 type statfs_freebsd11_t struct {
@@ -148,9 +148,9 @@ type statfs_freebsd11_t struct {
 	Owner       uint32
 	Fsid        Fsid
 	Charspare   [80]int8
-	Fstypename  [16]int8
-	Mntfromname [88]int8
-	Mntonname   [88]int8
+	Fstypename  [16]byte
+	Mntfromname [88]byte
+	Mntonname   [88]byte
 }
 
 type Flock_t struct {
@@ -275,10 +275,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
@@ -311,6 +309,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x36
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPMreqn          = 0xc
 	SizeofIPv6Mreq         = 0x14
@@ -326,11 +325,9 @@ const (
 	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
@@ -373,15 +370,15 @@ type PtraceLwpInfoStruct struct {
 }
 
 type __Siginfo struct {
-	Signo    int32
-	Errno    int32
-	Code     int32
-	Pid      int32
-	Uid      uint32
-	Status   int32
-	Addr     *byte
-	Value    [8]byte
-	X_reason [40]byte
+	Signo  int32
+	Errno  int32
+	Code   int32
+	Pid    int32
+	Uid    uint32
+	Status int32
+	Addr   *byte
+	Value  [8]byte
+	_      [40]byte
 }
 
 type Sigset_t struct {
@@ -394,12 +391,14 @@ type Reg struct {
 	Sp   uint64
 	Elr  uint64
 	Spsr uint32
+	_    [4]byte
 }
 
 type FpReg struct {
-	Fp_q  [512]uint8
-	Fp_sr uint32
-	Fp_cr uint32
+	Q  [32][16]uint8
+	Sr uint32
+	Cr uint32
+	_  [8]byte
 }
 
 type PtraceIoDesc struct {
@@ -441,7 +440,7 @@ type ifMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Data    ifData
 }
 
@@ -452,7 +451,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -519,7 +517,7 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Metric  int32
 }
 
@@ -530,7 +528,7 @@ type IfmaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
+	_       uint16
 }
 
 type IfAnnounceMsghdr struct {
@@ -547,7 +545,7 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
+	_       uint16
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -601,7 +599,6 @@ type BpfZbuf struct {
 
 type BpfProgram struct {
 	Len   uint32
-	_     [4]byte
 	Insns *BpfInsn
 }
 
diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go
new file mode 100644
index 0000000..9f3b1a4
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go
@@ -0,0 +1,3682 @@
+// Code generated by mkmerge.go; DO NOT EDIT.
+
+// +build linux
+
+package unix
+
+const (
+	SizeofShort    = 0x2
+	SizeofInt      = 0x4
+	SizeofLongLong = 0x8
+	PathMax        = 0x1000
+)
+
+type (
+	_C_short int16
+	_C_int   int32
+
+	_C_long_long int64
+)
+
+type ItimerSpec struct {
+	Interval Timespec
+	Value    Timespec
+}
+
+const (
+	TIME_OK    = 0x0
+	TIME_INS   = 0x1
+	TIME_DEL   = 0x2
+	TIME_OOP   = 0x3
+	TIME_WAIT  = 0x4
+	TIME_ERROR = 0x5
+	TIME_BAD   = 0x5
+)
+
+type Rlimit struct {
+	Cur uint64
+	Max uint64
+}
+
+type _Gid_t uint32
+
+type StatxTimestamp struct {
+	Sec  int64
+	Nsec uint32
+	_    int32
+}
+
+type Statx_t struct {
+	Mask            uint32
+	Blksize         uint32
+	Attributes      uint64
+	Nlink           uint32
+	Uid             uint32
+	Gid             uint32
+	Mode            uint16
+	_               [1]uint16
+	Ino             uint64
+	Size            uint64
+	Blocks          uint64
+	Attributes_mask uint64
+	Atime           StatxTimestamp
+	Btime           StatxTimestamp
+	Ctime           StatxTimestamp
+	Mtime           StatxTimestamp
+	Rdev_major      uint32
+	Rdev_minor      uint32
+	Dev_major       uint32
+	Dev_minor       uint32
+	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 FileDedupeRange struct {
+	Src_offset uint64
+	Src_length uint64
+	Dest_count uint16
+	Reserved1  uint16
+	Reserved2  uint32
+}
+
+type FscryptPolicy struct {
+	Version                   uint8
+	Contents_encryption_mode  uint8
+	Filenames_encryption_mode uint8
+	Flags                     uint8
+	Master_key_descriptor     [8]uint8
+}
+
+type FscryptKey struct {
+	Mode uint32
+	Raw  [64]uint8
+	Size uint32
+}
+
+type FscryptPolicyV1 struct {
+	Version                   uint8
+	Contents_encryption_mode  uint8
+	Filenames_encryption_mode uint8
+	Flags                     uint8
+	Master_key_descriptor     [8]uint8
+}
+
+type FscryptPolicyV2 struct {
+	Version                   uint8
+	Contents_encryption_mode  uint8
+	Filenames_encryption_mode uint8
+	Flags                     uint8
+	_                         [4]uint8
+	Master_key_identifier     [16]uint8
+}
+
+type FscryptGetPolicyExArg struct {
+	Size   uint64
+	Policy [24]byte
+}
+
+type FscryptKeySpecifier struct {
+	Type uint32
+	_    uint32
+	U    [32]byte
+}
+
+type FscryptAddKeyArg struct {
+	Key_spec FscryptKeySpecifier
+	Raw_size uint32
+	Key_id   uint32
+	_        [8]uint32
+}
+
+type FscryptRemoveKeyArg struct {
+	Key_spec             FscryptKeySpecifier
+	Removal_status_flags uint32
+	_                    [5]uint32
+}
+
+type FscryptGetKeyStatusArg struct {
+	Key_spec     FscryptKeySpecifier
+	_            [6]uint32
+	Status       uint32
+	Status_flags uint32
+	User_count   uint32
+	_            [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
+	Base    int32
+}
+
+const (
+	FADV_NORMAL     = 0x0
+	FADV_RANDOM     = 0x1
+	FADV_SEQUENTIAL = 0x2
+	FADV_WILLNEED   = 0x3
+)
+
+type RawSockaddrInet4 struct {
+	Family uint16
+	Port   uint16
+	Addr   [4]byte /* in_addr */
+	Zero   [8]uint8
+}
+
+type RawSockaddrInet6 struct {
+	Family   uint16
+	Port     uint16
+	Flowinfo uint32
+	Addr     [16]byte /* in6_addr */
+	Scope_id uint32
+}
+
+type RawSockaddrUnix struct {
+	Family uint16
+	Path   [108]int8
+}
+
+type RawSockaddrLinklayer struct {
+	Family   uint16
+	Protocol uint16
+	Ifindex  int32
+	Hatype   uint16
+	Pkttype  uint8
+	Halen    uint8
+	Addr     [8]uint8
+}
+
+type RawSockaddrNetlink struct {
+	Family uint16
+	Pad    uint16
+	Pid    uint32
+	Groups uint32
+}
+
+type RawSockaddrHCI struct {
+	Family  uint16
+	Dev     uint16
+	Channel uint16
+}
+
+type RawSockaddrL2 struct {
+	Family      uint16
+	Psm         uint16
+	Bdaddr      [6]uint8
+	Cid         uint16
+	Bdaddr_type uint8
+	_           [1]byte
+}
+
+type RawSockaddrRFCOMM struct {
+	Family  uint16
+	Bdaddr  [6]uint8
+	Channel uint8
+	_       [1]byte
+}
+
+type RawSockaddrCAN struct {
+	Family  uint16
+	Ifindex int32
+	Addr    [16]byte
+}
+
+type RawSockaddrALG struct {
+	Family uint16
+	Type   [14]uint8
+	Feat   uint32
+	Mask   uint32
+	Name   [64]uint8
+}
+
+type RawSockaddrVM struct {
+	Family    uint16
+	Reserved1 uint16
+	Port      uint32
+	Cid       uint32
+	Zero      [4]uint8
+}
+
+type RawSockaddrXDP struct {
+	Family         uint16
+	Flags          uint16
+	Ifindex        uint32
+	Queue_id       uint32
+	Shared_umem_fd uint32
+}
+
+type RawSockaddrPPPoX [0x1e]byte
+
+type RawSockaddrTIPC struct {
+	Family   uint16
+	Addrtype uint8
+	Scope    int8
+	Addr     [12]byte
+}
+
+type RawSockaddrL2TPIP struct {
+	Family  uint16
+	Unused  uint16
+	Addr    [4]byte /* in_addr */
+	Conn_id uint32
+	_       [4]uint8
+}
+
+type RawSockaddrL2TPIP6 struct {
+	Family   uint16
+	Unused   uint16
+	Flowinfo uint32
+	Addr     [16]byte /* in6_addr */
+	Scope_id uint32
+	Conn_id  uint32
+}
+
+type RawSockaddrIUCV struct {
+	Family  uint16
+	Port    uint16
+	Addr    uint32
+	Nodeid  [8]int8
+	User_id [8]int8
+	Name    [8]int8
+}
+
+type _Socklen uint32
+
+type Linger struct {
+	Onoff  int32
+	Linger int32
+}
+
+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 PacketMreq struct {
+	Ifindex int32
+	Type    uint16
+	Alen    uint16
+	Address [8]uint8
+}
+
+type Inet4Pktinfo struct {
+	Ifindex  int32
+	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 {
+	Data [8]uint32
+}
+
+type Ucred struct {
+	Pid int32
+	Uid uint32
+	Gid 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 CanFilter struct {
+	Id   uint32
+	Mask uint32
+}
+
+const (
+	SizeofSockaddrInet4     = 0x10
+	SizeofSockaddrInet6     = 0x1c
+	SizeofSockaddrAny       = 0x70
+	SizeofSockaddrUnix      = 0x6e
+	SizeofSockaddrLinklayer = 0x14
+	SizeofSockaddrNetlink   = 0xc
+	SizeofSockaddrHCI       = 0x6
+	SizeofSockaddrL2        = 0xe
+	SizeofSockaddrRFCOMM    = 0xa
+	SizeofSockaddrCAN       = 0x18
+	SizeofSockaddrALG       = 0x58
+	SizeofSockaddrVM        = 0x10
+	SizeofSockaddrXDP       = 0x10
+	SizeofSockaddrPPPoX     = 0x1e
+	SizeofSockaddrTIPC      = 0x10
+	SizeofSockaddrL2TPIP    = 0x10
+	SizeofSockaddrL2TPIP6   = 0x20
+	SizeofSockaddrIUCV      = 0x20
+	SizeofLinger            = 0x8
+	SizeofIPMreq            = 0x8
+	SizeofIPMreqn           = 0xc
+	SizeofIPv6Mreq          = 0x14
+	SizeofPacketMreq        = 0x10
+	SizeofInet4Pktinfo      = 0xc
+	SizeofInet6Pktinfo      = 0x14
+	SizeofIPv6MTUInfo       = 0x20
+	SizeofICMPv6Filter      = 0x20
+	SizeofUcred             = 0xc
+	SizeofTCPInfo           = 0x68
+	SizeofCanFilter         = 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
+	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 {
+	Len   uint32
+	Type  uint16
+	Flags uint16
+	Seq   uint32
+	Pid   uint32
+}
+
+type NlMsgerr struct {
+	Error int32
+	Msg   NlMsghdr
+}
+
+type RtGenmsg struct {
+	Family uint8
+}
+
+type NlAttr struct {
+	Len  uint16
+	Type uint16
+}
+
+type RtAttr struct {
+	Len  uint16
+	Type uint16
+}
+
+type IfInfomsg struct {
+	Family uint8
+	_      uint8
+	Type   uint16
+	Index  int32
+	Flags  uint32
+	Change uint32
+}
+
+type IfAddrmsg struct {
+	Family    uint8
+	Prefixlen uint8
+	Flags     uint8
+	Scope     uint8
+	Index     uint32
+}
+
+type IfaCacheinfo struct {
+	Prefered uint32
+	Valid    uint32
+	Cstamp   uint32
+	Tstamp   uint32
+}
+
+type RtMsg struct {
+	Family   uint8
+	Dst_len  uint8
+	Src_len  uint8
+	Tos      uint8
+	Table    uint8
+	Protocol uint8
+	Scope    uint8
+	Type     uint8
+	Flags    uint32
+}
+
+type RtNexthop struct {
+	Len     uint16
+	Flags   uint8
+	Hops    uint8
+	Ifindex int32
+}
+
+type NdUseroptmsg struct {
+	Family    uint8
+	Pad1      uint8
+	Opts_len  uint16
+	Ifindex   int32
+	Icmp_type uint8
+	Icmp_code uint8
+	Pad2      uint16
+	Pad3      uint32
+}
+
+type NdMsg struct {
+	Family  uint8
+	Pad1    uint8
+	Pad2    uint16
+	Ifindex int32
+	State   uint16
+	Flags   uint8
+	Type    uint8
+}
+
+const (
+	SizeofSockFilter = 0x8
+)
+
+type SockFilter struct {
+	Code uint16
+	Jt   uint8
+	Jf   uint8
+	K    uint32
+}
+
+type SockFprog struct {
+	Len    uint16
+	Filter *SockFilter
+}
+
+type InotifyEvent struct {
+	Wd     int32
+	Mask   uint32
+	Cookie uint32
+	Len    uint32
+}
+
+const SizeofInotifyEvent = 0x10
+
+const SI_LOAD_SHIFT = 0x10
+
+type Utsname struct {
+	Sysname    [65]byte
+	Nodename   [65]byte
+	Release    [65]byte
+	Version    [65]byte
+	Machine    [65]byte
+	Domainname [65]byte
+}
+
+const (
+	AT_EMPTY_PATH   = 0x1000
+	AT_FDCWD        = -0x64
+	AT_NO_AUTOMOUNT = 0x800
+	AT_REMOVEDIR    = 0x200
+
+	AT_STATX_SYNC_AS_STAT = 0x0
+	AT_STATX_FORCE_SYNC   = 0x2000
+	AT_STATX_DONT_SYNC    = 0x4000
+
+	AT_SYMLINK_FOLLOW   = 0x400
+	AT_SYMLINK_NOFOLLOW = 0x100
+
+	AT_EACCESS = 0x200
+)
+
+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 {
+	Fd      int32
+	Events  int16
+	Revents int16
+}
+
+const (
+	POLLIN   = 0x1
+	POLLPRI  = 0x2
+	POLLOUT  = 0x4
+	POLLERR  = 0x8
+	POLLHUP  = 0x10
+	POLLNVAL = 0x20
+)
+
+type SignalfdSiginfo struct {
+	Signo     uint32
+	Errno     int32
+	Code      int32
+	Pid       uint32
+	Uid       uint32
+	Fd        int32
+	Tid       uint32
+	Band      uint32
+	Overrun   uint32
+	Trapno    uint32
+	Status    int32
+	Int       int32
+	Ptr       uint64
+	Utime     uint64
+	Stime     uint64
+	Addr      uint64
+	Addr_lsb  uint16
+	_         uint16
+	Syscall   int32
+	Call_addr uint64
+	Arch      uint32
+	_         [28]uint8
+}
+
+type Winsize struct {
+	Row    uint16
+	Col    uint16
+	Xpixel uint16
+	Ypixel uint16
+}
+
+const (
+	TASKSTATS_CMD_UNSPEC                  = 0x0
+	TASKSTATS_CMD_GET                     = 0x1
+	TASKSTATS_CMD_NEW                     = 0x2
+	TASKSTATS_TYPE_UNSPEC                 = 0x0
+	TASKSTATS_TYPE_PID                    = 0x1
+	TASKSTATS_TYPE_TGID                   = 0x2
+	TASKSTATS_TYPE_STATS                  = 0x3
+	TASKSTATS_TYPE_AGGR_PID               = 0x4
+	TASKSTATS_TYPE_AGGR_TGID              = 0x5
+	TASKSTATS_TYPE_NULL                   = 0x6
+	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
+	TASKSTATS_CMD_ATTR_PID                = 0x1
+	TASKSTATS_CMD_ATTR_TGID               = 0x2
+	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
+	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
+)
+
+type CGroupStats struct {
+	Sleeping        uint64
+	Running         uint64
+	Stopped         uint64
+	Uninterruptible uint64
+	Io_wait         uint64
+}
+
+const (
+	CGROUPSTATS_CMD_UNSPEC        = 0x3
+	CGROUPSTATS_CMD_GET           = 0x4
+	CGROUPSTATS_CMD_NEW           = 0x5
+	CGROUPSTATS_TYPE_UNSPEC       = 0x0
+	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
+	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
+	CGROUPSTATS_CMD_ATTR_FD       = 0x1
+)
+
+type Genlmsghdr struct {
+	Cmd      uint8
+	Version  uint8
+	Reserved uint16
+}
+
+const (
+	CTRL_CMD_UNSPEC            = 0x0
+	CTRL_CMD_NEWFAMILY         = 0x1
+	CTRL_CMD_DELFAMILY         = 0x2
+	CTRL_CMD_GETFAMILY         = 0x3
+	CTRL_CMD_NEWOPS            = 0x4
+	CTRL_CMD_DELOPS            = 0x5
+	CTRL_CMD_GETOPS            = 0x6
+	CTRL_CMD_NEWMCAST_GRP      = 0x7
+	CTRL_CMD_DELMCAST_GRP      = 0x8
+	CTRL_CMD_GETMCAST_GRP      = 0x9
+	CTRL_ATTR_UNSPEC           = 0x0
+	CTRL_ATTR_FAMILY_ID        = 0x1
+	CTRL_ATTR_FAMILY_NAME      = 0x2
+	CTRL_ATTR_VERSION          = 0x3
+	CTRL_ATTR_HDRSIZE          = 0x4
+	CTRL_ATTR_MAXATTR          = 0x5
+	CTRL_ATTR_OPS              = 0x6
+	CTRL_ATTR_MCAST_GROUPS     = 0x7
+	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
+)
+
+const (
+	_CPU_SETSIZE = 0x400
+)
+
+const (
+	BDADDR_BREDR     = 0x0
+	BDADDR_LE_PUBLIC = 0x1
+	BDADDR_LE_RANDOM = 0x2
+)
+
+type PerfEventAttr struct {
+	Type               uint32
+	Size               uint32
+	Config             uint64
+	Sample             uint64
+	Sample_type        uint64
+	Read_format        uint64
+	Bits               uint64
+	Wakeup             uint32
+	Bp_type            uint32
+	Ext1               uint64
+	Ext2               uint64
+	Branch_sample_type uint64
+	Sample_regs_user   uint64
+	Sample_stack_user  uint32
+	Clockid            int32
+	Sample_regs_intr   uint64
+	Aux_watermark      uint32
+	Sample_max_stack   uint16
+	_                  uint16
+}
+
+type PerfEventMmapPage struct {
+	Version        uint32
+	Compat_version uint32
+	Lock           uint32
+	Index          uint32
+	Offset         int64
+	Time_enabled   uint64
+	Time_running   uint64
+	Capabilities   uint64
+	Pmc_width      uint16
+	Time_shift     uint16
+	Time_mult      uint32
+	Time_offset    uint64
+	Time_zero      uint64
+	Size           uint32
+	_              uint32
+	Time_cycles    uint64
+	Time_mask      uint64
+	_              [928]uint8
+	Data_head      uint64
+	Data_tail      uint64
+	Data_offset    uint64
+	Data_size      uint64
+	Aux_head       uint64
+	Aux_tail       uint64
+	Aux_offset     uint64
+	Aux_size       uint64
+}
+
+const (
+	PerfBitDisabled               uint64 = CBitFieldMaskBit0
+	PerfBitInherit                       = CBitFieldMaskBit1
+	PerfBitPinned                        = CBitFieldMaskBit2
+	PerfBitExclusive                     = CBitFieldMaskBit3
+	PerfBitExcludeUser                   = CBitFieldMaskBit4
+	PerfBitExcludeKernel                 = CBitFieldMaskBit5
+	PerfBitExcludeHv                     = CBitFieldMaskBit6
+	PerfBitExcludeIdle                   = CBitFieldMaskBit7
+	PerfBitMmap                          = CBitFieldMaskBit8
+	PerfBitComm                          = CBitFieldMaskBit9
+	PerfBitFreq                          = CBitFieldMaskBit10
+	PerfBitInheritStat                   = CBitFieldMaskBit11
+	PerfBitEnableOnExec                  = CBitFieldMaskBit12
+	PerfBitTask                          = CBitFieldMaskBit13
+	PerfBitWatermark                     = CBitFieldMaskBit14
+	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
+	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
+	PerfBitMmapData                      = CBitFieldMaskBit17
+	PerfBitSampleIDAll                   = CBitFieldMaskBit18
+	PerfBitExcludeHost                   = CBitFieldMaskBit19
+	PerfBitExcludeGuest                  = CBitFieldMaskBit20
+	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
+	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
+	PerfBitMmap2                         = CBitFieldMaskBit23
+	PerfBitCommExec                      = CBitFieldMaskBit24
+	PerfBitUseClockID                    = CBitFieldMaskBit25
+	PerfBitContextSwitch                 = CBitFieldMaskBit26
+)
+
+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_MAX                         = 0x6
+	PERF_COUNT_HW_CPU_CYCLES              = 0x0
+	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
+	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
+	PERF_COUNT_HW_CACHE_MISSES            = 0x3
+	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
+	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
+	PERF_COUNT_HW_BUS_CYCLES              = 0x6
+	PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7
+	PERF_COUNT_HW_STALLED_CYCLES_BACKEND  = 0x8
+	PERF_COUNT_HW_REF_CPU_CYCLES          = 0x9
+	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                     = 0xb
+	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_MAX                       = 0x400000
+	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_MAX                           = 0xb
+	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_MAX                       = 0x15
+	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 {
+	Addr      SockaddrStorage
+	Flags     uint8
+	Prefixlen uint8
+	Keylen    uint16
+	_         uint32
+	Key       [80]uint8
+}
+
+type HDDriveCmdHdr struct {
+	Command uint8
+	Number  uint8
+	Feature uint8
+	Count   uint8
+}
+
+type HDDriveID struct {
+	Config         uint16
+	Cyls           uint16
+	Reserved2      uint16
+	Heads          uint16
+	Track_bytes    uint16
+	Sector_bytes   uint16
+	Sectors        uint16
+	Vendor0        uint16
+	Vendor1        uint16
+	Vendor2        uint16
+	Serial_no      [20]uint8
+	Buf_type       uint16
+	Buf_size       uint16
+	Ecc_bytes      uint16
+	Fw_rev         [8]uint8
+	Model          [40]uint8
+	Max_multsect   uint8
+	Vendor3        uint8
+	Dword_io       uint16
+	Vendor4        uint8
+	Capability     uint8
+	Reserved50     uint16
+	Vendor5        uint8
+	TPIO           uint8
+	Vendor6        uint8
+	TDMA           uint8
+	Field_valid    uint16
+	Cur_cyls       uint16
+	Cur_heads      uint16
+	Cur_sectors    uint16
+	Cur_capacity0  uint16
+	Cur_capacity1  uint16
+	Multsect       uint8
+	Multsect_valid uint8
+	Lba_capacity   uint32
+	Dma_1word      uint16
+	Dma_mword      uint16
+	Eide_pio_modes uint16
+	Eide_dma_min   uint16
+	Eide_dma_time  uint16
+	Eide_pio       uint16
+	Eide_pio_iordy uint16
+	Words69_70     [2]uint16
+	Words71_74     [4]uint16
+	Queue_depth    uint16
+	Words76_79     [4]uint16
+	Major_rev_num  uint16
+	Minor_rev_num  uint16
+	Command_set_1  uint16
+	Command_set_2  uint16
+	Cfsse          uint16
+	Cfs_enable_1   uint16
+	Cfs_enable_2   uint16
+	Csf_default    uint16
+	Dma_ultra      uint16
+	Trseuc         uint16
+	TrsEuc         uint16
+	CurAPMvalues   uint16
+	Mprc           uint16
+	Hw_config      uint16
+	Acoustic       uint16
+	Msrqs          uint16
+	Sxfert         uint16
+	Sal            uint16
+	Spg            uint32
+	Lba_capacity_2 uint64
+	Words104_125   [22]uint16
+	Last_lun       uint16
+	Word127        uint16
+	Dlf            uint16
+	Csfo           uint16
+	Words130_155   [26]uint16
+	Word156        uint16
+	Words157_159   [3]uint16
+	Cfa_power      uint16
+	Words161_175   [15]uint16
+	Words176_205   [30]uint16
+	Words206_254   [49]uint16
+	Integrity_word uint16
+}
+
+const (
+	ST_MANDLOCK    = 0x40
+	ST_NOATIME     = 0x400
+	ST_NODEV       = 0x4
+	ST_NODIRATIME  = 0x800
+	ST_NOEXEC      = 0x8
+	ST_NOSUID      = 0x2
+	ST_RDONLY      = 0x1
+	ST_RELATIME    = 0x1000
+	ST_SYNCHRONOUS = 0x10
+)
+
+type Tpacket2Hdr struct {
+	Status    uint32
+	Len       uint32
+	Snaplen   uint32
+	Mac       uint16
+	Net       uint16
+	Sec       uint32
+	Nsec      uint32
+	Vlan_tci  uint16
+	Vlan_tpid uint16
+	_         [4]uint8
+}
+
+type Tpacket3Hdr struct {
+	Next_offset uint32
+	Sec         uint32
+	Nsec        uint32
+	Snaplen     uint32
+	Len         uint32
+	Status      uint32
+	Mac         uint16
+	Net         uint16
+	Hv1         TpacketHdrVariant1
+	_           [8]uint8
+}
+
+type TpacketHdrVariant1 struct {
+	Rxhash    uint32
+	Vlan_tci  uint32
+	Vlan_tpid uint16
+	_         uint16
+}
+
+type TpacketBlockDesc struct {
+	Version uint32
+	To_priv uint32
+	Hdr     [40]byte
+}
+
+type TpacketBDTS struct {
+	Sec  uint32
+	Usec uint32
+}
+
+type TpacketHdrV1 struct {
+	Block_status        uint32
+	Num_pkts            uint32
+	Offset_to_first_pkt uint32
+	Blk_len             uint32
+	Seq_num             uint64
+	Ts_first_pkt        TpacketBDTS
+	Ts_last_pkt         TpacketBDTS
+}
+
+type TpacketReq struct {
+	Block_size uint32
+	Block_nr   uint32
+	Frame_size uint32
+	Frame_nr   uint32
+}
+
+type TpacketReq3 struct {
+	Block_size       uint32
+	Block_nr         uint32
+	Frame_size       uint32
+	Frame_nr         uint32
+	Retire_blk_tov   uint32
+	Sizeof_priv      uint32
+	Feature_req_word uint32
+}
+
+type TpacketStats struct {
+	Packets uint32
+	Drops   uint32
+}
+
+type TpacketStatsV3 struct {
+	Packets      uint32
+	Drops        uint32
+	Freeze_q_cnt uint32
+}
+
+type TpacketAuxdata struct {
+	Status    uint32
+	Len       uint32
+	Snaplen   uint32
+	Mac       uint16
+	Net       uint16
+	Vlan_tci  uint16
+	Vlan_tpid uint16
+}
+
+const (
+	TPACKET_V1 = 0x0
+	TPACKET_V2 = 0x1
+	TPACKET_V3 = 0x2
+)
+
+const (
+	SizeofTpacket2Hdr = 0x20
+	SizeofTpacket3Hdr = 0x30
+
+	SizeofTpacketStats   = 0x8
+	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_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
+	NF_INET_FORWARD      = 0x2
+	NF_INET_LOCAL_OUT    = 0x3
+	NF_INET_POST_ROUTING = 0x4
+	NF_INET_NUMHOOKS     = 0x5
+)
+
+const (
+	NF_NETDEV_INGRESS  = 0x0
+	NF_NETDEV_NUMHOOKS = 0x1
+)
+
+const (
+	NFPROTO_UNSPEC   = 0x0
+	NFPROTO_INET     = 0x1
+	NFPROTO_IPV4     = 0x2
+	NFPROTO_ARP      = 0x3
+	NFPROTO_NETDEV   = 0x5
+	NFPROTO_BRIDGE   = 0x7
+	NFPROTO_IPV6     = 0xa
+	NFPROTO_DECNET   = 0xc
+	NFPROTO_NUMPROTO = 0xd
+)
+
+type Nfgenmsg struct {
+	Nfgen_family uint8
+	Version      uint8
+	Res_id       uint16
+}
+
+const (
+	NFNL_BATCH_UNSPEC = 0x0
+	NFNL_BATCH_GENID  = 0x1
+)
+
+const (
+	NFT_REG_VERDICT                   = 0x0
+	NFT_REG_1                         = 0x1
+	NFT_REG_2                         = 0x2
+	NFT_REG_3                         = 0x3
+	NFT_REG_4                         = 0x4
+	NFT_REG32_00                      = 0x8
+	NFT_REG32_01                      = 0x9
+	NFT_REG32_02                      = 0xa
+	NFT_REG32_03                      = 0xb
+	NFT_REG32_04                      = 0xc
+	NFT_REG32_05                      = 0xd
+	NFT_REG32_06                      = 0xe
+	NFT_REG32_07                      = 0xf
+	NFT_REG32_08                      = 0x10
+	NFT_REG32_09                      = 0x11
+	NFT_REG32_10                      = 0x12
+	NFT_REG32_11                      = 0x13
+	NFT_REG32_12                      = 0x14
+	NFT_REG32_13                      = 0x15
+	NFT_REG32_14                      = 0x16
+	NFT_REG32_15                      = 0x17
+	NFT_CONTINUE                      = -0x1
+	NFT_BREAK                         = -0x2
+	NFT_JUMP                          = -0x3
+	NFT_GOTO                          = -0x4
+	NFT_RETURN                        = -0x5
+	NFT_MSG_NEWTABLE                  = 0x0
+	NFT_MSG_GETTABLE                  = 0x1
+	NFT_MSG_DELTABLE                  = 0x2
+	NFT_MSG_NEWCHAIN                  = 0x3
+	NFT_MSG_GETCHAIN                  = 0x4
+	NFT_MSG_DELCHAIN                  = 0x5
+	NFT_MSG_NEWRULE                   = 0x6
+	NFT_MSG_GETRULE                   = 0x7
+	NFT_MSG_DELRULE                   = 0x8
+	NFT_MSG_NEWSET                    = 0x9
+	NFT_MSG_GETSET                    = 0xa
+	NFT_MSG_DELSET                    = 0xb
+	NFT_MSG_NEWSETELEM                = 0xc
+	NFT_MSG_GETSETELEM                = 0xd
+	NFT_MSG_DELSETELEM                = 0xe
+	NFT_MSG_NEWGEN                    = 0xf
+	NFT_MSG_GETGEN                    = 0x10
+	NFT_MSG_TRACE                     = 0x11
+	NFT_MSG_NEWOBJ                    = 0x12
+	NFT_MSG_GETOBJ                    = 0x13
+	NFT_MSG_DELOBJ                    = 0x14
+	NFT_MSG_GETOBJ_RESET              = 0x15
+	NFT_MSG_MAX                       = 0x19
+	NFTA_LIST_UNSPEC                  = 0x0
+	NFTA_LIST_ELEM                    = 0x1
+	NFTA_HOOK_UNSPEC                  = 0x0
+	NFTA_HOOK_HOOKNUM                 = 0x1
+	NFTA_HOOK_PRIORITY                = 0x2
+	NFTA_HOOK_DEV                     = 0x3
+	NFT_TABLE_F_DORMANT               = 0x1
+	NFTA_TABLE_UNSPEC                 = 0x0
+	NFTA_TABLE_NAME                   = 0x1
+	NFTA_TABLE_FLAGS                  = 0x2
+	NFTA_TABLE_USE                    = 0x3
+	NFTA_CHAIN_UNSPEC                 = 0x0
+	NFTA_CHAIN_TABLE                  = 0x1
+	NFTA_CHAIN_HANDLE                 = 0x2
+	NFTA_CHAIN_NAME                   = 0x3
+	NFTA_CHAIN_HOOK                   = 0x4
+	NFTA_CHAIN_POLICY                 = 0x5
+	NFTA_CHAIN_USE                    = 0x6
+	NFTA_CHAIN_TYPE                   = 0x7
+	NFTA_CHAIN_COUNTERS               = 0x8
+	NFTA_CHAIN_PAD                    = 0x9
+	NFTA_RULE_UNSPEC                  = 0x0
+	NFTA_RULE_TABLE                   = 0x1
+	NFTA_RULE_CHAIN                   = 0x2
+	NFTA_RULE_HANDLE                  = 0x3
+	NFTA_RULE_EXPRESSIONS             = 0x4
+	NFTA_RULE_COMPAT                  = 0x5
+	NFTA_RULE_POSITION                = 0x6
+	NFTA_RULE_USERDATA                = 0x7
+	NFTA_RULE_PAD                     = 0x8
+	NFTA_RULE_ID                      = 0x9
+	NFT_RULE_COMPAT_F_INV             = 0x2
+	NFT_RULE_COMPAT_F_MASK            = 0x2
+	NFTA_RULE_COMPAT_UNSPEC           = 0x0
+	NFTA_RULE_COMPAT_PROTO            = 0x1
+	NFTA_RULE_COMPAT_FLAGS            = 0x2
+	NFT_SET_ANONYMOUS                 = 0x1
+	NFT_SET_CONSTANT                  = 0x2
+	NFT_SET_INTERVAL                  = 0x4
+	NFT_SET_MAP                       = 0x8
+	NFT_SET_TIMEOUT                   = 0x10
+	NFT_SET_EVAL                      = 0x20
+	NFT_SET_OBJECT                    = 0x40
+	NFT_SET_POL_PERFORMANCE           = 0x0
+	NFT_SET_POL_MEMORY                = 0x1
+	NFTA_SET_DESC_UNSPEC              = 0x0
+	NFTA_SET_DESC_SIZE                = 0x1
+	NFTA_SET_UNSPEC                   = 0x0
+	NFTA_SET_TABLE                    = 0x1
+	NFTA_SET_NAME                     = 0x2
+	NFTA_SET_FLAGS                    = 0x3
+	NFTA_SET_KEY_TYPE                 = 0x4
+	NFTA_SET_KEY_LEN                  = 0x5
+	NFTA_SET_DATA_TYPE                = 0x6
+	NFTA_SET_DATA_LEN                 = 0x7
+	NFTA_SET_POLICY                   = 0x8
+	NFTA_SET_DESC                     = 0x9
+	NFTA_SET_ID                       = 0xa
+	NFTA_SET_TIMEOUT                  = 0xb
+	NFTA_SET_GC_INTERVAL              = 0xc
+	NFTA_SET_USERDATA                 = 0xd
+	NFTA_SET_PAD                      = 0xe
+	NFTA_SET_OBJ_TYPE                 = 0xf
+	NFT_SET_ELEM_INTERVAL_END         = 0x1
+	NFTA_SET_ELEM_UNSPEC              = 0x0
+	NFTA_SET_ELEM_KEY                 = 0x1
+	NFTA_SET_ELEM_DATA                = 0x2
+	NFTA_SET_ELEM_FLAGS               = 0x3
+	NFTA_SET_ELEM_TIMEOUT             = 0x4
+	NFTA_SET_ELEM_EXPIRATION          = 0x5
+	NFTA_SET_ELEM_USERDATA            = 0x6
+	NFTA_SET_ELEM_EXPR                = 0x7
+	NFTA_SET_ELEM_PAD                 = 0x8
+	NFTA_SET_ELEM_OBJREF              = 0x9
+	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
+	NFTA_SET_ELEM_LIST_TABLE          = 0x1
+	NFTA_SET_ELEM_LIST_SET            = 0x2
+	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
+	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
+	NFT_DATA_VALUE                    = 0x0
+	NFT_DATA_VERDICT                  = 0xffffff00
+	NFTA_DATA_UNSPEC                  = 0x0
+	NFTA_DATA_VALUE                   = 0x1
+	NFTA_DATA_VERDICT                 = 0x2
+	NFTA_VERDICT_UNSPEC               = 0x0
+	NFTA_VERDICT_CODE                 = 0x1
+	NFTA_VERDICT_CHAIN                = 0x2
+	NFTA_EXPR_UNSPEC                  = 0x0
+	NFTA_EXPR_NAME                    = 0x1
+	NFTA_EXPR_DATA                    = 0x2
+	NFTA_IMMEDIATE_UNSPEC             = 0x0
+	NFTA_IMMEDIATE_DREG               = 0x1
+	NFTA_IMMEDIATE_DATA               = 0x2
+	NFTA_BITWISE_UNSPEC               = 0x0
+	NFTA_BITWISE_SREG                 = 0x1
+	NFTA_BITWISE_DREG                 = 0x2
+	NFTA_BITWISE_LEN                  = 0x3
+	NFTA_BITWISE_MASK                 = 0x4
+	NFTA_BITWISE_XOR                  = 0x5
+	NFT_BYTEORDER_NTOH                = 0x0
+	NFT_BYTEORDER_HTON                = 0x1
+	NFTA_BYTEORDER_UNSPEC             = 0x0
+	NFTA_BYTEORDER_SREG               = 0x1
+	NFTA_BYTEORDER_DREG               = 0x2
+	NFTA_BYTEORDER_OP                 = 0x3
+	NFTA_BYTEORDER_LEN                = 0x4
+	NFTA_BYTEORDER_SIZE               = 0x5
+	NFT_CMP_EQ                        = 0x0
+	NFT_CMP_NEQ                       = 0x1
+	NFT_CMP_LT                        = 0x2
+	NFT_CMP_LTE                       = 0x3
+	NFT_CMP_GT                        = 0x4
+	NFT_CMP_GTE                       = 0x5
+	NFTA_CMP_UNSPEC                   = 0x0
+	NFTA_CMP_SREG                     = 0x1
+	NFTA_CMP_OP                       = 0x2
+	NFTA_CMP_DATA                     = 0x3
+	NFT_RANGE_EQ                      = 0x0
+	NFT_RANGE_NEQ                     = 0x1
+	NFTA_RANGE_UNSPEC                 = 0x0
+	NFTA_RANGE_SREG                   = 0x1
+	NFTA_RANGE_OP                     = 0x2
+	NFTA_RANGE_FROM_DATA              = 0x3
+	NFTA_RANGE_TO_DATA                = 0x4
+	NFT_LOOKUP_F_INV                  = 0x1
+	NFTA_LOOKUP_UNSPEC                = 0x0
+	NFTA_LOOKUP_SET                   = 0x1
+	NFTA_LOOKUP_SREG                  = 0x2
+	NFTA_LOOKUP_DREG                  = 0x3
+	NFTA_LOOKUP_SET_ID                = 0x4
+	NFTA_LOOKUP_FLAGS                 = 0x5
+	NFT_DYNSET_OP_ADD                 = 0x0
+	NFT_DYNSET_OP_UPDATE              = 0x1
+	NFT_DYNSET_F_INV                  = 0x1
+	NFTA_DYNSET_UNSPEC                = 0x0
+	NFTA_DYNSET_SET_NAME              = 0x1
+	NFTA_DYNSET_SET_ID                = 0x2
+	NFTA_DYNSET_OP                    = 0x3
+	NFTA_DYNSET_SREG_KEY              = 0x4
+	NFTA_DYNSET_SREG_DATA             = 0x5
+	NFTA_DYNSET_TIMEOUT               = 0x6
+	NFTA_DYNSET_EXPR                  = 0x7
+	NFTA_DYNSET_PAD                   = 0x8
+	NFTA_DYNSET_FLAGS                 = 0x9
+	NFT_PAYLOAD_LL_HEADER             = 0x0
+	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
+	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
+	NFT_PAYLOAD_CSUM_NONE             = 0x0
+	NFT_PAYLOAD_CSUM_INET             = 0x1
+	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
+	NFTA_PAYLOAD_UNSPEC               = 0x0
+	NFTA_PAYLOAD_DREG                 = 0x1
+	NFTA_PAYLOAD_BASE                 = 0x2
+	NFTA_PAYLOAD_OFFSET               = 0x3
+	NFTA_PAYLOAD_LEN                  = 0x4
+	NFTA_PAYLOAD_SREG                 = 0x5
+	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
+	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
+	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
+	NFT_EXTHDR_F_PRESENT              = 0x1
+	NFT_EXTHDR_OP_IPV6                = 0x0
+	NFT_EXTHDR_OP_TCPOPT              = 0x1
+	NFTA_EXTHDR_UNSPEC                = 0x0
+	NFTA_EXTHDR_DREG                  = 0x1
+	NFTA_EXTHDR_TYPE                  = 0x2
+	NFTA_EXTHDR_OFFSET                = 0x3
+	NFTA_EXTHDR_LEN                   = 0x4
+	NFTA_EXTHDR_FLAGS                 = 0x5
+	NFTA_EXTHDR_OP                    = 0x6
+	NFTA_EXTHDR_SREG                  = 0x7
+	NFT_META_LEN                      = 0x0
+	NFT_META_PROTOCOL                 = 0x1
+	NFT_META_PRIORITY                 = 0x2
+	NFT_META_MARK                     = 0x3
+	NFT_META_IIF                      = 0x4
+	NFT_META_OIF                      = 0x5
+	NFT_META_IIFNAME                  = 0x6
+	NFT_META_OIFNAME                  = 0x7
+	NFT_META_IIFTYPE                  = 0x8
+	NFT_META_OIFTYPE                  = 0x9
+	NFT_META_SKUID                    = 0xa
+	NFT_META_SKGID                    = 0xb
+	NFT_META_NFTRACE                  = 0xc
+	NFT_META_RTCLASSID                = 0xd
+	NFT_META_SECMARK                  = 0xe
+	NFT_META_NFPROTO                  = 0xf
+	NFT_META_L4PROTO                  = 0x10
+	NFT_META_BRI_IIFNAME              = 0x11
+	NFT_META_BRI_OIFNAME              = 0x12
+	NFT_META_PKTTYPE                  = 0x13
+	NFT_META_CPU                      = 0x14
+	NFT_META_IIFGROUP                 = 0x15
+	NFT_META_OIFGROUP                 = 0x16
+	NFT_META_CGROUP                   = 0x17
+	NFT_META_PRANDOM                  = 0x18
+	NFT_RT_CLASSID                    = 0x0
+	NFT_RT_NEXTHOP4                   = 0x1
+	NFT_RT_NEXTHOP6                   = 0x2
+	NFT_RT_TCPMSS                     = 0x3
+	NFT_HASH_JENKINS                  = 0x0
+	NFT_HASH_SYM                      = 0x1
+	NFTA_HASH_UNSPEC                  = 0x0
+	NFTA_HASH_SREG                    = 0x1
+	NFTA_HASH_DREG                    = 0x2
+	NFTA_HASH_LEN                     = 0x3
+	NFTA_HASH_MODULUS                 = 0x4
+	NFTA_HASH_SEED                    = 0x5
+	NFTA_HASH_OFFSET                  = 0x6
+	NFTA_HASH_TYPE                    = 0x7
+	NFTA_META_UNSPEC                  = 0x0
+	NFTA_META_DREG                    = 0x1
+	NFTA_META_KEY                     = 0x2
+	NFTA_META_SREG                    = 0x3
+	NFTA_RT_UNSPEC                    = 0x0
+	NFTA_RT_DREG                      = 0x1
+	NFTA_RT_KEY                       = 0x2
+	NFT_CT_STATE                      = 0x0
+	NFT_CT_DIRECTION                  = 0x1
+	NFT_CT_STATUS                     = 0x2
+	NFT_CT_MARK                       = 0x3
+	NFT_CT_SECMARK                    = 0x4
+	NFT_CT_EXPIRATION                 = 0x5
+	NFT_CT_HELPER                     = 0x6
+	NFT_CT_L3PROTOCOL                 = 0x7
+	NFT_CT_SRC                        = 0x8
+	NFT_CT_DST                        = 0x9
+	NFT_CT_PROTOCOL                   = 0xa
+	NFT_CT_PROTO_SRC                  = 0xb
+	NFT_CT_PROTO_DST                  = 0xc
+	NFT_CT_LABELS                     = 0xd
+	NFT_CT_PKTS                       = 0xe
+	NFT_CT_BYTES                      = 0xf
+	NFT_CT_AVGPKT                     = 0x10
+	NFT_CT_ZONE                       = 0x11
+	NFT_CT_EVENTMASK                  = 0x12
+	NFTA_CT_UNSPEC                    = 0x0
+	NFTA_CT_DREG                      = 0x1
+	NFTA_CT_KEY                       = 0x2
+	NFTA_CT_DIRECTION                 = 0x3
+	NFTA_CT_SREG                      = 0x4
+	NFT_LIMIT_PKTS                    = 0x0
+	NFT_LIMIT_PKT_BYTES               = 0x1
+	NFT_LIMIT_F_INV                   = 0x1
+	NFTA_LIMIT_UNSPEC                 = 0x0
+	NFTA_LIMIT_RATE                   = 0x1
+	NFTA_LIMIT_UNIT                   = 0x2
+	NFTA_LIMIT_BURST                  = 0x3
+	NFTA_LIMIT_TYPE                   = 0x4
+	NFTA_LIMIT_FLAGS                  = 0x5
+	NFTA_LIMIT_PAD                    = 0x6
+	NFTA_COUNTER_UNSPEC               = 0x0
+	NFTA_COUNTER_BYTES                = 0x1
+	NFTA_COUNTER_PACKETS              = 0x2
+	NFTA_COUNTER_PAD                  = 0x3
+	NFTA_LOG_UNSPEC                   = 0x0
+	NFTA_LOG_GROUP                    = 0x1
+	NFTA_LOG_PREFIX                   = 0x2
+	NFTA_LOG_SNAPLEN                  = 0x3
+	NFTA_LOG_QTHRESHOLD               = 0x4
+	NFTA_LOG_LEVEL                    = 0x5
+	NFTA_LOG_FLAGS                    = 0x6
+	NFTA_QUEUE_UNSPEC                 = 0x0
+	NFTA_QUEUE_NUM                    = 0x1
+	NFTA_QUEUE_TOTAL                  = 0x2
+	NFTA_QUEUE_FLAGS                  = 0x3
+	NFTA_QUEUE_SREG_QNUM              = 0x4
+	NFT_QUOTA_F_INV                   = 0x1
+	NFT_QUOTA_F_DEPLETED              = 0x2
+	NFTA_QUOTA_UNSPEC                 = 0x0
+	NFTA_QUOTA_BYTES                  = 0x1
+	NFTA_QUOTA_FLAGS                  = 0x2
+	NFTA_QUOTA_PAD                    = 0x3
+	NFTA_QUOTA_CONSUMED               = 0x4
+	NFT_REJECT_ICMP_UNREACH           = 0x0
+	NFT_REJECT_TCP_RST                = 0x1
+	NFT_REJECT_ICMPX_UNREACH          = 0x2
+	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
+	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
+	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
+	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
+	NFTA_REJECT_UNSPEC                = 0x0
+	NFTA_REJECT_TYPE                  = 0x1
+	NFTA_REJECT_ICMP_CODE             = 0x2
+	NFT_NAT_SNAT                      = 0x0
+	NFT_NAT_DNAT                      = 0x1
+	NFTA_NAT_UNSPEC                   = 0x0
+	NFTA_NAT_TYPE                     = 0x1
+	NFTA_NAT_FAMILY                   = 0x2
+	NFTA_NAT_REG_ADDR_MIN             = 0x3
+	NFTA_NAT_REG_ADDR_MAX             = 0x4
+	NFTA_NAT_REG_PROTO_MIN            = 0x5
+	NFTA_NAT_REG_PROTO_MAX            = 0x6
+	NFTA_NAT_FLAGS                    = 0x7
+	NFTA_MASQ_UNSPEC                  = 0x0
+	NFTA_MASQ_FLAGS                   = 0x1
+	NFTA_MASQ_REG_PROTO_MIN           = 0x2
+	NFTA_MASQ_REG_PROTO_MAX           = 0x3
+	NFTA_REDIR_UNSPEC                 = 0x0
+	NFTA_REDIR_REG_PROTO_MIN          = 0x1
+	NFTA_REDIR_REG_PROTO_MAX          = 0x2
+	NFTA_REDIR_FLAGS                  = 0x3
+	NFTA_DUP_UNSPEC                   = 0x0
+	NFTA_DUP_SREG_ADDR                = 0x1
+	NFTA_DUP_SREG_DEV                 = 0x2
+	NFTA_FWD_UNSPEC                   = 0x0
+	NFTA_FWD_SREG_DEV                 = 0x1
+	NFTA_OBJREF_UNSPEC                = 0x0
+	NFTA_OBJREF_IMM_TYPE              = 0x1
+	NFTA_OBJREF_IMM_NAME              = 0x2
+	NFTA_OBJREF_SET_SREG              = 0x3
+	NFTA_OBJREF_SET_NAME              = 0x4
+	NFTA_OBJREF_SET_ID                = 0x5
+	NFTA_GEN_UNSPEC                   = 0x0
+	NFTA_GEN_ID                       = 0x1
+	NFTA_GEN_PROC_PID                 = 0x2
+	NFTA_GEN_PROC_NAME                = 0x3
+	NFTA_FIB_UNSPEC                   = 0x0
+	NFTA_FIB_DREG                     = 0x1
+	NFTA_FIB_RESULT                   = 0x2
+	NFTA_FIB_FLAGS                    = 0x3
+	NFT_FIB_RESULT_UNSPEC             = 0x0
+	NFT_FIB_RESULT_OIF                = 0x1
+	NFT_FIB_RESULT_OIFNAME            = 0x2
+	NFT_FIB_RESULT_ADDRTYPE           = 0x3
+	NFTA_FIB_F_SADDR                  = 0x1
+	NFTA_FIB_F_DADDR                  = 0x2
+	NFTA_FIB_F_MARK                   = 0x4
+	NFTA_FIB_F_IIF                    = 0x8
+	NFTA_FIB_F_OIF                    = 0x10
+	NFTA_FIB_F_PRESENT                = 0x20
+	NFTA_CT_HELPER_UNSPEC             = 0x0
+	NFTA_CT_HELPER_NAME               = 0x1
+	NFTA_CT_HELPER_L3PROTO            = 0x2
+	NFTA_CT_HELPER_L4PROTO            = 0x3
+	NFTA_OBJ_UNSPEC                   = 0x0
+	NFTA_OBJ_TABLE                    = 0x1
+	NFTA_OBJ_NAME                     = 0x2
+	NFTA_OBJ_TYPE                     = 0x3
+	NFTA_OBJ_DATA                     = 0x4
+	NFTA_OBJ_USE                      = 0x5
+	NFTA_TRACE_UNSPEC                 = 0x0
+	NFTA_TRACE_TABLE                  = 0x1
+	NFTA_TRACE_CHAIN                  = 0x2
+	NFTA_TRACE_RULE_HANDLE            = 0x3
+	NFTA_TRACE_TYPE                   = 0x4
+	NFTA_TRACE_VERDICT                = 0x5
+	NFTA_TRACE_ID                     = 0x6
+	NFTA_TRACE_LL_HEADER              = 0x7
+	NFTA_TRACE_NETWORK_HEADER         = 0x8
+	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
+	NFTA_TRACE_IIF                    = 0xa
+	NFTA_TRACE_IIFTYPE                = 0xb
+	NFTA_TRACE_OIF                    = 0xc
+	NFTA_TRACE_OIFTYPE                = 0xd
+	NFTA_TRACE_MARK                   = 0xe
+	NFTA_TRACE_NFPROTO                = 0xf
+	NFTA_TRACE_POLICY                 = 0x10
+	NFTA_TRACE_PAD                    = 0x11
+	NFT_TRACETYPE_UNSPEC              = 0x0
+	NFT_TRACETYPE_POLICY              = 0x1
+	NFT_TRACETYPE_RETURN              = 0x2
+	NFT_TRACETYPE_RULE                = 0x3
+	NFTA_NG_UNSPEC                    = 0x0
+	NFTA_NG_DREG                      = 0x1
+	NFTA_NG_MODULUS                   = 0x2
+	NFTA_NG_TYPE                      = 0x3
+	NFTA_NG_OFFSET                    = 0x4
+	NFT_NG_INCREMENTAL                = 0x0
+	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
+	Hour  int32
+	Mday  int32
+	Mon   int32
+	Year  int32
+	Wday  int32
+	Yday  int32
+	Isdst int32
+}
+
+type RTCWkAlrm struct {
+	Enabled uint8
+	Pending uint8
+	Time    RTCTime
+}
+
+type BlkpgIoctlArg struct {
+	Op      int32
+	Flags   int32
+	Datalen int32
+	Data    *byte
+}
+
+const (
+	BLKPG_ADD_PARTITION    = 0x1
+	BLKPG_DEL_PARTITION    = 0x2
+	BLKPG_RESIZE_PARTITION = 0x3
+)
+
+const (
+	NETNSA_NONE         = 0x0
+	NETNSA_NSID         = 0x1
+	NETNSA_PID          = 0x2
+	NETNSA_FD           = 0x3
+	NETNSA_TARGET_NSID  = 0x4
+	NETNSA_CURRENT_NSID = 0x5
+)
+
+type XDPRingOffset struct {
+	Producer uint64
+	Consumer uint64
+	Desc     uint64
+	Flags    uint64
+}
+
+type XDPMmapOffsets struct {
+	Rx XDPRingOffset
+	Tx XDPRingOffset
+	Fr XDPRingOffset
+	Cr XDPRingOffset
+}
+
+type XDPStatistics struct {
+	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 {
+	Addr    uint64
+	Len     uint32
+	Options uint32
+}
+
+const (
+	NCSI_CMD_UNSPEC                 = 0x0
+	NCSI_CMD_PKG_INFO               = 0x1
+	NCSI_CMD_SET_INTERFACE          = 0x2
+	NCSI_CMD_CLEAR_INTERFACE        = 0x3
+	NCSI_ATTR_UNSPEC                = 0x0
+	NCSI_ATTR_IFINDEX               = 0x1
+	NCSI_ATTR_PACKAGE_LIST          = 0x2
+	NCSI_ATTR_PACKAGE_ID            = 0x3
+	NCSI_ATTR_CHANNEL_ID            = 0x4
+	NCSI_PKG_ATTR_UNSPEC            = 0x0
+	NCSI_PKG_ATTR                   = 0x1
+	NCSI_PKG_ATTR_ID                = 0x2
+	NCSI_PKG_ATTR_FORCED            = 0x3
+	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
+	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
+	NCSI_CHANNEL_ATTR               = 0x1
+	NCSI_CHANNEL_ATTR_ID            = 0x2
+	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
+	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
+	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
+	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
+	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
+	NCSI_CHANNEL_ATTR_FORCED        = 0x8
+	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
+	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
+)
+
+type ScmTimestamping struct {
+	Ts [3]Timespec
+}
+
+const (
+	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
+	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
+	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
+	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
+	SOF_TIMESTAMPING_SOFTWARE     = 0x10
+	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
+	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
+	SOF_TIMESTAMPING_OPT_ID       = 0x80
+	SOF_TIMESTAMPING_TX_SCHED     = 0x100
+	SOF_TIMESTAMPING_TX_ACK       = 0x200
+	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
+	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
+	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
+	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
+	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
+
+	SOF_TIMESTAMPING_LAST = 0x4000
+	SOF_TIMESTAMPING_MASK = 0x7fff
+
+	SCM_TSTAMP_SND   = 0x0
+	SCM_TSTAMP_SCHED = 0x1
+	SCM_TSTAMP_ACK   = 0x2
+)
+
+type SockExtendedErr struct {
+	Errno  uint32
+	Origin uint8
+	Type   uint8
+	Code   uint8
+	Pad    uint8
+	Info   uint32
+	Data   uint32
+}
+
+type FanotifyEventMetadata struct {
+	Event_len    uint32
+	Vers         uint8
+	Reserved     uint8
+	Metadata_len uint16
+	Mask         uint64
+	Fd           int32
+	Pid          int32
+}
+
+type FanotifyResponse struct {
+	Fd       int32
+	Response uint32
+}
+
+const (
+	CRYPTO_MSG_BASE      = 0x10
+	CRYPTO_MSG_NEWALG    = 0x10
+	CRYPTO_MSG_DELALG    = 0x11
+	CRYPTO_MSG_UPDATEALG = 0x12
+	CRYPTO_MSG_GETALG    = 0x13
+	CRYPTO_MSG_DELRNG    = 0x14
+	CRYPTO_MSG_GETSTAT   = 0x15
+)
+
+const (
+	CRYPTOCFGA_UNSPEC           = 0x0
+	CRYPTOCFGA_PRIORITY_VAL     = 0x1
+	CRYPTOCFGA_REPORT_LARVAL    = 0x2
+	CRYPTOCFGA_REPORT_HASH      = 0x3
+	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
+	CRYPTOCFGA_REPORT_AEAD      = 0x5
+	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
+	CRYPTOCFGA_REPORT_RNG       = 0x7
+	CRYPTOCFGA_REPORT_CIPHER    = 0x8
+	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
+	CRYPTOCFGA_REPORT_KPP       = 0xa
+	CRYPTOCFGA_REPORT_ACOMP     = 0xb
+	CRYPTOCFGA_STAT_LARVAL      = 0xc
+	CRYPTOCFGA_STAT_HASH        = 0xd
+	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
+	CRYPTOCFGA_STAT_AEAD        = 0xf
+	CRYPTOCFGA_STAT_COMPRESS    = 0x10
+	CRYPTOCFGA_STAT_RNG         = 0x11
+	CRYPTOCFGA_STAT_CIPHER      = 0x12
+	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
+	CRYPTOCFGA_STAT_KPP         = 0x14
+	CRYPTOCFGA_STAT_ACOMP       = 0x15
+)
+
+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_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 (
+	RTNLGRP_NONE          = 0x0
+	RTNLGRP_LINK          = 0x1
+	RTNLGRP_NOTIFY        = 0x2
+	RTNLGRP_NEIGH         = 0x3
+	RTNLGRP_TC            = 0x4
+	RTNLGRP_IPV4_IFADDR   = 0x5
+	RTNLGRP_IPV4_MROUTE   = 0x6
+	RTNLGRP_IPV4_ROUTE    = 0x7
+	RTNLGRP_IPV4_RULE     = 0x8
+	RTNLGRP_IPV6_IFADDR   = 0x9
+	RTNLGRP_IPV6_MROUTE   = 0xa
+	RTNLGRP_IPV6_ROUTE    = 0xb
+	RTNLGRP_IPV6_IFINFO   = 0xc
+	RTNLGRP_DECnet_IFADDR = 0xd
+	RTNLGRP_NOP2          = 0xe
+	RTNLGRP_DECnet_ROUTE  = 0xf
+	RTNLGRP_DECnet_RULE   = 0x10
+	RTNLGRP_NOP4          = 0x11
+	RTNLGRP_IPV6_PREFIX   = 0x12
+	RTNLGRP_IPV6_RULE     = 0x13
+	RTNLGRP_ND_USEROPT    = 0x14
+	RTNLGRP_PHONET_IFADDR = 0x15
+	RTNLGRP_PHONET_ROUTE  = 0x16
+	RTNLGRP_DCB           = 0x17
+	RTNLGRP_IPV4_NETCONF  = 0x18
+	RTNLGRP_IPV6_NETCONF  = 0x19
+	RTNLGRP_MDB           = 0x1a
+	RTNLGRP_MPLS_ROUTE    = 0x1b
+	RTNLGRP_NSID          = 0x1c
+	RTNLGRP_MPLS_NETCONF  = 0x1d
+	RTNLGRP_IPV4_MROUTE_R = 0x1e
+	RTNLGRP_IPV6_MROUTE_R = 0x1f
+	RTNLGRP_NEXTHOP       = 0x20
+	RTNLGRP_BRVLAN        = 0x21
+)
+
+type CapUserHeader struct {
+	Version uint32
+	Pid     int32
+}
+
+type CapUserData struct {
+	Effective   uint32
+	Permitted   uint32
+	Inheritable uint32
+}
+
+const (
+	LINUX_CAPABILITY_VERSION_1 = 0x19980330
+	LINUX_CAPABILITY_VERSION_2 = 0x20071026
+	LINUX_CAPABILITY_VERSION_3 = 0x20080522
+)
+
+const (
+	LO_FLAGS_READ_ONLY = 0x1
+	LO_FLAGS_AUTOCLEAR = 0x4
+	LO_FLAGS_PARTSCAN  = 0x8
+	LO_FLAGS_DIRECT_IO = 0x10
+)
+
+type LoopInfo64 struct {
+	Device           uint64
+	Inode            uint64
+	Rdevice          uint64
+	Offset           uint64
+	Sizelimit        uint64
+	Number           uint32
+	Encrypt_type     uint32
+	Encrypt_key_size uint32
+	Flags            uint32
+	File_name        [64]uint8
+	Crypt_name       [64]uint8
+	Encrypt_key      [32]uint8
+	Init             [2]uint64
+}
+
+type TIPCSocketAddr struct {
+	Ref  uint32
+	Node uint32
+}
+
+type TIPCServiceRange struct {
+	Type  uint32
+	Lower uint32
+	Upper uint32
+}
+
+type TIPCServiceName struct {
+	Type     uint32
+	Instance uint32
+	Domain   uint32
+}
+
+type TIPCEvent struct {
+	Event uint32
+	Lower uint32
+	Upper uint32
+	Port  TIPCSocketAddr
+	S     TIPCSubscr
+}
+
+type TIPCGroupReq struct {
+	Type     uint32
+	Instance uint32
+	Scope    uint32
+	Flags    uint32
+}
+
+const (
+	TIPC_CLUSTER_SCOPE = 0x2
+	TIPC_NODE_SCOPE    = 0x3
+)
+
+const (
+	SYSLOG_ACTION_CLOSE         = 0
+	SYSLOG_ACTION_OPEN          = 1
+	SYSLOG_ACTION_READ          = 2
+	SYSLOG_ACTION_READ_ALL      = 3
+	SYSLOG_ACTION_READ_CLEAR    = 4
+	SYSLOG_ACTION_CLEAR         = 5
+	SYSLOG_ACTION_CONSOLE_OFF   = 6
+	SYSLOG_ACTION_CONSOLE_ON    = 7
+	SYSLOG_ACTION_CONSOLE_LEVEL = 8
+	SYSLOG_ACTION_SIZE_UNREAD   = 9
+	SYSLOG_ACTION_SIZE_BUFFER   = 10
+)
+
+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_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                                    = 0x49
+	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_MAX                                   = 0xa3
+	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_FUNCTION_ATTR_MAX                     = 0x1
+)
+
+type FsverityDigest struct {
+	Algorithm uint16
+	Size      uint16
+}
+
+type FsverityEnableArg struct {
+	Version        uint32
+	Hash_algorithm uint32
+	Block_size     uint32
+	Salt_size      uint32
+	Salt_ptr       uint64
+	Sig_size       uint32
+	_              uint32
+	Sig_ptr        uint64
+	_              [11]uint64
+}
+
+type Nhmsg struct {
+	Family   uint8
+	Scope    uint8
+	Protocol uint8
+	Resvd    uint8
+	Flags    uint32
+}
+
+type NexthopGrp struct {
+	Id     uint32
+	Weight uint8
+	Resvd1 uint8
+	Resvd2 uint16
+}
+
+const (
+	NHA_UNSPEC     = 0x0
+	NHA_ID         = 0x1
+	NHA_GROUP      = 0x2
+	NHA_GROUP_TYPE = 0x3
+	NHA_BLACKHOLE  = 0x4
+	NHA_OIF        = 0x5
+	NHA_GATEWAY    = 0x6
+	NHA_ENCAP_TYPE = 0x7
+	NHA_ENCAP      = 0x8
+	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_MAX        = 0x8
+
+	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_USER_MAX                      = 0x1c
+	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_KERNEL_MAX                    = 0x1d
+	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_MAX                   = 0x8
+	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_MAX                       = 0x9
+	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_MAX                    = 0x17
+	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
+)
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 d808958..088bd77 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build 386,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x4
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x4
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x4
+	SizeofLong = 0x4
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int32
-	_C_long_long int64
+	_C_long int32
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int32
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	_       uint16
@@ -114,36 +100,6 @@ type Stat_t struct {
 	Ino     uint64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -153,10 +109,6 @@ type Dirent struct {
 	_      [1]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -165,182 +117,16 @@ type Flock_t struct {
 	Pid    int32
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -351,41 +137,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -402,383 +158,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x8
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x1c
-	SizeofCmsghdr           = 0xc
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x8
+	SizeofMsghdr  = 0x1c
+	SizeofCmsghdr = 0xc
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x8
+	SizeofSockFprog = 0x8
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Ebx      int32
 	Ecx      int32
@@ -820,15 +209,6 @@ type Sysinfo_t struct {
 	_         [8]int8
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint32
@@ -843,35 +223,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -880,33 +232,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -918,13 +243,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -974,279 +292,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint32
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x20
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x20
 )
 
 const (
@@ -1322,22 +374,6 @@ type SockaddrStorage struct {
 	_      uint32
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1345,88 +381,6 @@ type HDGeometry struct {
 	Start     uint32
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int32
 	Bsize   int32
@@ -1442,18 +396,6 @@ type Statfs_t struct {
 	Spare   [4]int32
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint32
 	Len     uint32
@@ -1464,589 +406,10 @@ type TpacketHdr struct {
 	Usec    uint32
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x18
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x18
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2057,13 +420,6 @@ type RTCPLLInfo struct {
 	Clock   int32
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2073,33 +429,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x1269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2108,135 +440,6 @@ type XDPUmemReg struct {
 	Flags    uint32
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2367,218 +570,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint16
@@ -2593,38 +584,6 @@ type LoopInfo struct {
 	Init             [2]uint32
 	Reserved         [4]int8
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2633,21 +592,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2659,150 +603,17 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+}
 
 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
+	PPS_GETPARAMS = 0x800470a1
+	PPS_SETPARAMS = 0x400470a2
+	PPS_GETCAP    = 0x800470a3
+	PPS_FETCH     = 0xc00470a4
 )
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 88c7639..078d958 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build amd64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -113,36 +99,6 @@ type Stat_t struct {
 	_       [3]int64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -152,10 +108,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -165,182 +117,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -351,41 +139,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -403,383 +161,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
 const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 0x8
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
 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                = 0x35
-	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
+	SizeofSockFprog = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
-const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
-)
-
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	R15      uint64
 	R14      uint64
@@ -832,15 +223,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -856,35 +238,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -893,33 +247,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -931,13 +258,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -985,279 +305,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1333,22 +387,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1356,88 +394,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1453,18 +409,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1476,589 +420,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2069,13 +434,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2086,33 +444,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x1269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2122,135 +456,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2381,218 +586,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint64
@@ -2608,38 +601,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2648,21 +609,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2674,150 +620,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x800870a1
+	PPS_SETPARAMS = 0x400870a2
+	PPS_GETCAP    = 0x800870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 0c0f24c..2d39122 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build arm,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x4
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x4
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x4
+	SizeofLong = 0x4
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int32
-	_C_long_long int64
+	_C_long int32
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int32
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	_       uint16
@@ -116,36 +102,6 @@ type Stat_t struct {
 	Ino     uint64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -155,10 +111,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -169,182 +121,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]uint8
@@ -355,41 +143,11 @@ type RawSockaddrAny struct {
 	Pad  [96]uint8
 }
 
-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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -406,383 +164,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x8
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x1c
-	SizeofCmsghdr           = 0xc
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x8
+	SizeofMsghdr  = 0x1c
+	SizeofCmsghdr = 0xc
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x8
+	SizeofSockFprog = 0x8
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Uregs [18]uint32
 }
@@ -808,15 +199,6 @@ type Sysinfo_t struct {
 	_         [8]uint8
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint32
@@ -832,35 +214,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -869,33 +223,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -907,13 +234,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -963,279 +283,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint32
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x20
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x20
 )
 
 const (
@@ -1311,22 +365,6 @@ type SockaddrStorage struct {
 	_      uint32
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1334,88 +372,6 @@ type HDGeometry struct {
 	Start     uint32
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int32
 	Bsize   int32
@@ -1432,18 +388,6 @@ type Statfs_t struct {
 	_       [4]byte
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint32
 	Len     uint32
@@ -1454,589 +398,10 @@ type TpacketHdr struct {
 	Usec    uint32
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x18
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x18
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2047,13 +412,6 @@ type RTCPLLInfo struct {
 	Clock   int32
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2064,33 +422,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x1269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2100,135 +434,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]uint8
 	Driver_name [64]uint8
@@ -2359,218 +564,6 @@ type CryptoReportAcomp struct {
 	Type [64]uint8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint16
@@ -2585,38 +578,6 @@ type LoopInfo struct {
 	Init             [2]uint32
 	Reserved         [4]uint8
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2625,21 +586,6 @@ type TIPCSubscr struct {
 	Handle  [8]uint8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2651,150 +597,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]uint8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x800470a1
+	PPS_SETPARAMS = 0x400470a2
+	PPS_GETCAP    = 0x800470a3
+	PPS_FETCH     = 0xc00470a4
 )
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 6065d2d..304cbd0 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build arm64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -114,36 +100,6 @@ type Stat_t struct {
 	_       [2]int32
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -153,10 +109,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -166,182 +118,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -352,41 +140,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -404,383 +162,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs   [31]uint64
 	Sp     uint64
@@ -810,15 +201,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -835,35 +217,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -872,33 +226,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -910,13 +237,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -964,279 +284,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1312,22 +366,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1335,88 +373,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1432,18 +388,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1455,589 +399,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
 const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2048,13 +413,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2065,33 +423,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x1269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2101,135 +435,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2360,218 +565,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2587,38 +580,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2627,21 +588,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2653,150 +599,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x800870a1
+	PPS_SETPARAMS = 0x400870a2
+	PPS_GETCAP    = 0x800870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 29d4408..7d9d570 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build mips,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x4
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x4
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x4
+	SizeofLong = 0x4
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int32
-	_C_long_long int64
+	_C_long int32
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int32
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint32
 	Pad1    [3]int32
@@ -115,36 +101,6 @@ type Stat_t struct {
 	Pad5    [14]int32
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -154,10 +110,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -168,182 +120,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -354,41 +142,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -405,383 +163,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x8
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x1c
-	SizeofCmsghdr           = 0xc
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x8
+	SizeofMsghdr  = 0x1c
+	SizeofCmsghdr = 0xc
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x8
+	SizeofSockFprog = 0x8
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs     [32]uint64
 	Lo       uint64
@@ -813,15 +204,6 @@ type Sysinfo_t struct {
 	_         [8]int8
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint32
@@ -837,35 +219,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -874,33 +228,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x80
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -912,13 +239,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -968,279 +288,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint32
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x20
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x20
 )
 
 const (
@@ -1316,22 +370,6 @@ type SockaddrStorage struct {
 	_      uint32
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1339,88 +377,6 @@ type HDGeometry struct {
 	Start     uint32
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int32
 	Bsize   int32
@@ -1438,18 +394,6 @@ type Statfs_t struct {
 	_       [4]byte
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint32
 	Len     uint32
@@ -1460,589 +404,10 @@ type TpacketHdr struct {
 	Usec    uint32
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x18
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x18
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2053,13 +418,6 @@ type RTCPLLInfo struct {
 	Clock   int32
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2070,33 +428,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x20001269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2106,135 +440,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2365,218 +570,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2591,38 +584,6 @@ type LoopInfo struct {
 	Init             [2]uint32
 	Reserved         [4]int8
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2631,21 +592,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2657,150 +603,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400470a1
+	PPS_SETPARAMS = 0x800470a2
+	PPS_GETCAP    = 0x400470a3
+	PPS_FETCH     = 0xc00470a4
 )
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 9cac9ff..a1eb257 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build mips64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint32
 	Pad1    [3]uint32
@@ -114,36 +100,6 @@ type Stat_t struct {
 	Blocks  int64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -153,10 +109,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -166,182 +118,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -352,41 +140,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -404,383 +162,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs     [32]uint64
 	Lo       uint64
@@ -813,15 +204,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -838,35 +220,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -875,33 +229,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x80
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -913,13 +240,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -967,279 +287,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1315,22 +369,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1338,88 +376,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1435,18 +391,6 @@ type Statfs_t struct {
 	Spare   [5]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1458,589 +402,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
 const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2051,13 +416,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2068,33 +426,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x20001269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2104,135 +438,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2363,218 +568,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2590,38 +583,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2630,21 +591,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2656,150 +602,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400870a1
+	PPS_SETPARAMS = 0x800870a2
+	PPS_GETCAP    = 0x400870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 dbc21cf..2e5ce3b 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build mips64le,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint32
 	Pad1    [3]uint32
@@ -114,36 +100,6 @@ type Stat_t struct {
 	Blocks  int64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -153,10 +109,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -166,182 +118,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -352,41 +140,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -404,383 +162,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs     [32]uint64
 	Lo       uint64
@@ -813,15 +204,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -838,35 +220,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -875,33 +229,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x80
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -913,13 +240,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -967,279 +287,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1315,22 +369,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1338,88 +376,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1435,18 +391,6 @@ type Statfs_t struct {
 	Spare   [5]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1458,589 +402,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
 const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2051,13 +416,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2068,33 +426,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x20001269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2104,135 +438,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2363,218 +568,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2590,38 +583,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2630,21 +591,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2656,150 +602,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400870a1
+	PPS_SETPARAMS = 0x800870a2
+	PPS_GETCAP    = 0x400870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 a266237..bbaa120 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build mipsle,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x4
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x4
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x4
+	SizeofLong = 0x4
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int32
-	_C_long_long int64
+	_C_long int32
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int32
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint32
 	Pad1    [3]int32
@@ -115,36 +101,6 @@ type Stat_t struct {
 	Pad5    [14]int32
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -154,10 +110,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -168,182 +120,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -354,41 +142,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -405,383 +163,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x8
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x1c
-	SizeofCmsghdr           = 0xc
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x8
+	SizeofMsghdr  = 0x1c
+	SizeofCmsghdr = 0xc
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x8
+	SizeofSockFprog = 0x8
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs     [32]uint64
 	Lo       uint64
@@ -813,15 +204,6 @@ type Sysinfo_t struct {
 	_         [8]int8
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint32
@@ -837,35 +219,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -874,33 +228,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x80
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -912,13 +239,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -968,279 +288,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint32
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x20
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x20
 )
 
 const (
@@ -1316,22 +370,6 @@ type SockaddrStorage struct {
 	_      uint32
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1339,88 +377,6 @@ type HDGeometry struct {
 	Start     uint32
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int32
 	Bsize   int32
@@ -1438,18 +394,6 @@ type Statfs_t struct {
 	_       [4]byte
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint32
 	Len     uint32
@@ -1460,589 +404,10 @@ type TpacketHdr struct {
 	Usec    uint32
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x18
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x18
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2053,13 +418,6 @@ type RTCPLLInfo struct {
 	Clock   int32
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2070,33 +428,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x20001269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2106,135 +440,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2365,218 +570,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2591,38 +584,6 @@ type LoopInfo struct {
 	Init             [2]uint32
 	Reserved         [4]int8
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2631,21 +592,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2657,150 +603,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400470a1
+	PPS_SETPARAMS = 0x800470a2
+	PPS_GETCAP    = 0x400470a3
+	PPS_FETCH     = 0xc00470a4
 )
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 e93b73c..0e6e8a7 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build ppc64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -115,36 +101,6 @@ type Stat_t struct {
 	_       uint64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -154,10 +110,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -167,182 +119,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]uint8
@@ -353,41 +141,11 @@ type RawSockaddrAny struct {
 	Pad  [96]uint8
 }
 
-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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -405,383 +163,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
 const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 0x8
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
 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                = 0x35
-	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
+	SizeofSockFprog = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
-const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
-)
-
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Gpr       [32]uint64
 	Nip       uint64
@@ -820,15 +211,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -845,35 +227,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -882,33 +236,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -920,13 +247,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -974,279 +294,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1322,22 +376,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1345,88 +383,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1442,18 +398,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1465,589 +409,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2058,13 +423,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2075,33 +433,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x20001269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2111,135 +445,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]uint8
 	Driver_name [64]uint8
@@ -2370,218 +575,6 @@ type CryptoReportAcomp struct {
 	Type [64]uint8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint64
@@ -2597,38 +590,6 @@ type LoopInfo struct {
 	Reserved         [4]uint8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2637,21 +598,6 @@ type TIPCSubscr struct {
 	Handle  [8]uint8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2663,150 +609,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]uint8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400870a1
+	PPS_SETPARAMS = 0x800870a2
+	PPS_GETCAP    = 0x400870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 1f431b6..7382f38 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build ppc64le,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -115,36 +101,6 @@ type Stat_t struct {
 	_       uint64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -154,10 +110,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -167,182 +119,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]uint8
@@ -353,41 +141,11 @@ type RawSockaddrAny struct {
 	Pad  [96]uint8
 }
 
-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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -405,383 +163,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
 const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 0x8
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
 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                = 0x35
-	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
+	SizeofSockFprog = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
-const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
-)
-
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Gpr       [32]uint64
 	Nip       uint64
@@ -820,15 +211,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -845,35 +227,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -882,33 +236,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -920,13 +247,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -974,279 +294,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1322,22 +376,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1345,88 +383,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1442,18 +398,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1465,589 +409,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
 const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2058,13 +423,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2075,33 +433,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
+	BLKPG = 0x20001269
 )
 
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
-)
-
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2111,135 +445,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]uint8
 	Driver_name [64]uint8
@@ -2370,218 +575,6 @@ type CryptoReportAcomp struct {
 	Type [64]uint8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint64
@@ -2597,38 +590,6 @@ type LoopInfo struct {
 	Reserved         [4]uint8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2637,21 +598,6 @@ type TIPCSubscr struct {
 	Handle  [8]uint8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2663,150 +609,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]uint8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400870a1
+	PPS_SETPARAMS = 0x800870a2
+	PPS_GETCAP    = 0x400870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 81a5dc1..28d5522 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build riscv64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -114,36 +100,6 @@ type Stat_t struct {
 	_       [2]int32
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -153,10 +109,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -166,182 +118,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]uint8
@@ -352,41 +140,11 @@ type RawSockaddrAny struct {
 	Pad  [96]uint8
 }
 
-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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -404,383 +162,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Pc  uint64
 	Ra  uint64
@@ -838,15 +229,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -863,35 +245,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -900,33 +254,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -938,13 +265,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -992,279 +312,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1340,22 +394,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1363,88 +401,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1460,18 +416,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1483,589 +427,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
 const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2076,13 +441,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2093,33 +451,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x1269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2129,135 +463,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]uint8
 	Driver_name [64]uint8
@@ -2388,218 +593,6 @@ type CryptoReportAcomp struct {
 	Type [64]uint8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2615,38 +608,6 @@ type LoopInfo struct {
 	Reserved         [4]uint8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2655,21 +616,6 @@ type TIPCSubscr struct {
 	Handle  [8]uint8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2681,150 +627,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]uint8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x800870a1
+	PPS_SETPARAMS = 0x400870a2
+	PPS_GETCAP    = 0x800870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 ae765d4..a91a7a4 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build s390x,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -88,13 +81,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	Ino     uint64
@@ -113,36 +99,6 @@ type Stat_t struct {
 	_       [3]int64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -152,10 +108,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -165,182 +117,18 @@ type Flock_t struct {
 	_      [4]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x6
-	FADV_NOREUSE    = 0x7
+	FADV_DONTNEED = 0x6
+	FADV_NOREUSE  = 0x7
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -351,41 +139,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -403,383 +161,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
-const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 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                = 0x35
-	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
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
 const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Psw                      PtracePsw
 	Gprs                     [16]uint64
@@ -833,15 +224,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -858,35 +240,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x2000
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -895,33 +249,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -933,13 +260,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -987,279 +307,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1335,22 +389,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1358,88 +396,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    uint32
 	Bsize   uint32
@@ -1456,18 +412,6 @@ type Statfs_t struct {
 	_       [4]byte
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1479,589 +423,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
-const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
-)
-
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
 const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
+	SizeofTpacketHdr = 0x20
 )
 
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2072,13 +437,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2089,33 +447,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x1269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x1269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2125,135 +459,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2384,218 +589,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint16
@@ -2611,38 +604,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2651,21 +612,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2677,150 +623,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x800870a1
+	PPS_SETPARAMS = 0x400870a2
+	PPS_GETCAP    = 0x800870a3
+	PPS_FETCH     = 0xc00870a4
 )
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 63685ca..f824b23 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
@@ -1,4 +1,4 @@
-// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
+// cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/linux/types.go | go run mkpost.go
 // Code generated by the command above; see README.md. DO NOT EDIT.
 
 // +build sparc64,linux
@@ -6,19 +6,12 @@
 package unix
 
 const (
-	SizeofPtr      = 0x8
-	SizeofShort    = 0x2
-	SizeofInt      = 0x4
-	SizeofLong     = 0x8
-	SizeofLongLong = 0x8
-	PathMax        = 0x1000
+	SizeofPtr  = 0x8
+	SizeofLong = 0x8
 )
 
 type (
-	_C_short     int16
-	_C_int       int32
-	_C_long      int64
-	_C_long_long int64
+	_C_long int64
 )
 
 type Timespec struct {
@@ -89,13 +82,6 @@ type Rusage struct {
 	Nivcsw   int64
 }
 
-type Rlimit struct {
-	Cur uint64
-	Max uint64
-}
-
-type _Gid_t uint32
-
 type Stat_t struct {
 	Dev     uint64
 	_       uint16
@@ -116,36 +102,6 @@ type Stat_t struct {
 	_       uint64
 }
 
-type StatxTimestamp struct {
-	Sec  int64
-	Nsec uint32
-	_    int32
-}
-
-type Statx_t struct {
-	Mask            uint32
-	Blksize         uint32
-	Attributes      uint64
-	Nlink           uint32
-	Uid             uint32
-	Gid             uint32
-	Mode            uint16
-	_               [1]uint16
-	Ino             uint64
-	Size            uint64
-	Blocks          uint64
-	Attributes_mask uint64
-	Atime           StatxTimestamp
-	Btime           StatxTimestamp
-	Ctime           StatxTimestamp
-	Mtime           StatxTimestamp
-	Rdev_major      uint32
-	Rdev_minor      uint32
-	Dev_major       uint32
-	Dev_minor       uint32
-	_               [14]uint64
-}
-
 type Dirent struct {
 	Ino    uint64
 	Off    int64
@@ -155,10 +111,6 @@ type Dirent struct {
 	_      [5]byte
 }
 
-type Fsid struct {
-	Val [2]int32
-}
-
 type Flock_t struct {
 	Type   int16
 	Whence int16
@@ -169,182 +121,18 @@ type Flock_t struct {
 	_      [2]byte
 }
 
-type FscryptPolicy struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptKey struct {
-	Mode uint32
-	Raw  [64]uint8
-	Size uint32
-}
-
-type FscryptPolicyV1 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	Master_key_descriptor     [8]uint8
-}
-
-type FscryptPolicyV2 struct {
-	Version                   uint8
-	Contents_encryption_mode  uint8
-	Filenames_encryption_mode uint8
-	Flags                     uint8
-	_                         [4]uint8
-	Master_key_identifier     [16]uint8
-}
-
-type FscryptGetPolicyExArg struct {
-	Size   uint64
-	Policy [24]byte
-}
-
-type FscryptKeySpecifier struct {
-	Type uint32
-	_    uint32
-	U    [32]byte
-}
-
-type FscryptAddKeyArg struct {
-	Key_spec FscryptKeySpecifier
-	Raw_size uint32
-	_        [9]uint32
-}
-
-type FscryptRemoveKeyArg struct {
-	Key_spec             FscryptKeySpecifier
-	Removal_status_flags uint32
-	_                    [5]uint32
-}
-
-type FscryptGetKeyStatusArg struct {
-	Key_spec     FscryptKeySpecifier
-	_            [6]uint32
-	Status       uint32
-	Status_flags uint32
-	User_count   uint32
-	_            [13]uint32
-}
-
-type KeyctlDHParams struct {
-	Private int32
-	Prime   int32
-	Base    int32
+type DmNameList struct {
+	Dev  uint64
+	Next uint32
+	Name [0]byte
+	_    [4]byte
 }
 
 const (
-	FADV_NORMAL     = 0x0
-	FADV_RANDOM     = 0x1
-	FADV_SEQUENTIAL = 0x2
-	FADV_WILLNEED   = 0x3
-	FADV_DONTNEED   = 0x4
-	FADV_NOREUSE    = 0x5
+	FADV_DONTNEED = 0x4
+	FADV_NOREUSE  = 0x5
 )
 
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-type RawSockaddrLinklayer struct {
-	Family   uint16
-	Protocol uint16
-	Ifindex  int32
-	Hatype   uint16
-	Pkttype  uint8
-	Halen    uint8
-	Addr     [8]uint8
-}
-
-type RawSockaddrNetlink struct {
-	Family uint16
-	Pad    uint16
-	Pid    uint32
-	Groups uint32
-}
-
-type RawSockaddrHCI struct {
-	Family  uint16
-	Dev     uint16
-	Channel uint16
-}
-
-type RawSockaddrL2 struct {
-	Family      uint16
-	Psm         uint16
-	Bdaddr      [6]uint8
-	Cid         uint16
-	Bdaddr_type uint8
-	_           [1]byte
-}
-
-type RawSockaddrRFCOMM struct {
-	Family  uint16
-	Bdaddr  [6]uint8
-	Channel uint8
-	_       [1]byte
-}
-
-type RawSockaddrCAN struct {
-	Family  uint16
-	Ifindex int32
-	Addr    [16]byte
-}
-
-type RawSockaddrALG struct {
-	Family uint16
-	Type   [14]uint8
-	Feat   uint32
-	Mask   uint32
-	Name   [64]uint8
-}
-
-type RawSockaddrVM struct {
-	Family    uint16
-	Reserved1 uint16
-	Port      uint32
-	Cid       uint32
-	Zero      [4]uint8
-}
-
-type RawSockaddrXDP struct {
-	Family         uint16
-	Flags          uint16
-	Ifindex        uint32
-	Queue_id       uint32
-	Shared_umem_fd uint32
-}
-
-type RawSockaddrPPPoX [0x1e]byte
-
-type RawSockaddrTIPC struct {
-	Family   uint16
-	Addrtype uint8
-	Scope    int8
-	Addr     [12]byte
-}
-
 type RawSockaddr struct {
 	Family uint16
 	Data   [14]int8
@@ -355,41 +143,11 @@ type RawSockaddrAny struct {
 	Pad  [96]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 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 PacketMreq struct {
-	Ifindex int32
-	Type    uint16
-	Alen    uint16
-	Address [8]uint8
-}
-
 type Msghdr struct {
 	Name       *byte
 	Namelen    uint32
@@ -407,383 +165,16 @@ type Cmsghdr struct {
 	Type  int32
 }
 
-type Inet4Pktinfo struct {
-	Ifindex  int32
-	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 {
-	Data [8]uint32
-}
-
-type Ucred struct {
-	Pid int32
-	Uid uint32
-	Gid 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 CanFilter struct {
-	Id   uint32
-	Mask uint32
-}
-
 const (
-	SizeofSockaddrInet4     = 0x10
-	SizeofSockaddrInet6     = 0x1c
-	SizeofSockaddrAny       = 0x70
-	SizeofSockaddrUnix      = 0x6e
-	SizeofSockaddrLinklayer = 0x14
-	SizeofSockaddrNetlink   = 0xc
-	SizeofSockaddrHCI       = 0x6
-	SizeofSockaddrL2        = 0xe
-	SizeofSockaddrRFCOMM    = 0xa
-	SizeofSockaddrCAN       = 0x18
-	SizeofSockaddrALG       = 0x58
-	SizeofSockaddrVM        = 0x10
-	SizeofSockaddrXDP       = 0x10
-	SizeofSockaddrPPPoX     = 0x1e
-	SizeofSockaddrTIPC      = 0x10
-	SizeofLinger            = 0x8
-	SizeofIovec             = 0x10
-	SizeofIPMreq            = 0x8
-	SizeofIPMreqn           = 0xc
-	SizeofIPv6Mreq          = 0x14
-	SizeofPacketMreq        = 0x10
-	SizeofMsghdr            = 0x38
-	SizeofCmsghdr           = 0x10
-	SizeofInet4Pktinfo      = 0xc
-	SizeofInet6Pktinfo      = 0x14
-	SizeofIPv6MTUInfo       = 0x20
-	SizeofICMPv6Filter      = 0x20
-	SizeofUcred             = 0xc
-	SizeofTCPInfo           = 0x68
-	SizeofCanFilter         = 0x8
+	SizeofIovec   = 0x10
+	SizeofMsghdr  = 0x38
+	SizeofCmsghdr = 0x10
 )
 
 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                = 0x35
-	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
-)
-
-type NlMsghdr struct {
-	Len   uint32
-	Type  uint16
-	Flags uint16
-	Seq   uint32
-	Pid   uint32
-}
-
-type NlMsgerr struct {
-	Error int32
-	Msg   NlMsghdr
-}
-
-type RtGenmsg struct {
-	Family uint8
-}
-
-type NlAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type RtAttr struct {
-	Len  uint16
-	Type uint16
-}
-
-type IfInfomsg struct {
-	Family uint8
-	_      uint8
-	Type   uint16
-	Index  int32
-	Flags  uint32
-	Change uint32
-}
-
-type IfAddrmsg struct {
-	Family    uint8
-	Prefixlen uint8
-	Flags     uint8
-	Scope     uint8
-	Index     uint32
-}
-
-type IfaCacheinfo struct {
-	Prefered uint32
-	Valid    uint32
-	Cstamp   uint32
-	Tstamp   uint32
-}
-
-type RtMsg struct {
-	Family   uint8
-	Dst_len  uint8
-	Src_len  uint8
-	Tos      uint8
-	Table    uint8
-	Protocol uint8
-	Scope    uint8
-	Type     uint8
-	Flags    uint32
-}
-
-type RtNexthop struct {
-	Len     uint16
-	Flags   uint8
-	Hops    uint8
-	Ifindex int32
-}
-
-type NdUseroptmsg struct {
-	Family    uint8
-	Pad1      uint8
-	Opts_len  uint16
-	Ifindex   int32
-	Icmp_type uint8
-	Icmp_code uint8
-	Pad2      uint16
-	Pad3      uint32
-}
-
-type NdMsg struct {
-	Family  uint8
-	Pad1    uint8
-	Pad2    uint16
-	Ifindex int32
-	State   uint16
-	Flags   uint8
-	Type    uint8
-}
-
-const (
-	SizeofSockFilter = 0x8
-	SizeofSockFprog  = 0x10
+	SizeofSockFprog = 0x10
 )
 
-type SockFilter struct {
-	Code uint16
-	Jt   uint8
-	Jf   uint8
-	K    uint32
-}
-
-type SockFprog struct {
-	Len    uint16
-	Filter *SockFilter
-}
-
-type InotifyEvent struct {
-	Wd     int32
-	Mask   uint32
-	Cookie uint32
-	Len    uint32
-}
-
-const SizeofInotifyEvent = 0x10
-
 type PtraceRegs struct {
 	Regs   [16]uint64
 	Tstate uint64
@@ -815,15 +206,6 @@ type Sysinfo_t struct {
 	_         [4]byte
 }
 
-type Utsname struct {
-	Sysname    [65]byte
-	Nodename   [65]byte
-	Release    [65]byte
-	Version    [65]byte
-	Machine    [65]byte
-	Domainname [65]byte
-}
-
 type Ustat_t struct {
 	Tfree  int32
 	Tinode uint64
@@ -840,35 +222,7 @@ type EpollEvent struct {
 }
 
 const (
-	AT_EMPTY_PATH   = 0x1000
-	AT_FDCWD        = -0x64
-	AT_NO_AUTOMOUNT = 0x800
-	AT_REMOVEDIR    = 0x200
-
-	AT_STATX_SYNC_AS_STAT = 0x0
-	AT_STATX_FORCE_SYNC   = 0x2000
-	AT_STATX_DONT_SYNC    = 0x4000
-
-	AT_SYMLINK_FOLLOW   = 0x400
-	AT_SYMLINK_NOFOLLOW = 0x100
-
-	AT_EACCESS = 0x200
-)
-
-type PollFd struct {
-	Fd      int32
-	Events  int16
-	Revents int16
-}
-
-const (
-	POLLIN    = 0x1
-	POLLPRI   = 0x2
-	POLLOUT   = 0x4
 	POLLRDHUP = 0x800
-	POLLERR   = 0x8
-	POLLHUP   = 0x10
-	POLLNVAL  = 0x20
 )
 
 type Sigset_t struct {
@@ -877,33 +231,6 @@ type Sigset_t struct {
 
 const _C__NSIG = 0x41
 
-type SignalfdSiginfo struct {
-	Signo     uint32
-	Errno     int32
-	Code      int32
-	Pid       uint32
-	Uid       uint32
-	Fd        int32
-	Tid       uint32
-	Band      uint32
-	Overrun   uint32
-	Trapno    uint32
-	Status    int32
-	Int       int32
-	Ptr       uint64
-	Utime     uint64
-	Stime     uint64
-	Addr      uint64
-	Addr_lsb  uint16
-	_         uint16
-	Syscall   int32
-	Call_addr uint64
-	Arch      uint32
-	_         [28]uint8
-}
-
-const PERF_IOC_FLAG_GROUP = 0x1
-
 type Termios struct {
 	Iflag  uint32
 	Oflag  uint32
@@ -915,13 +242,6 @@ type Termios struct {
 	Ospeed uint32
 }
 
-type Winsize struct {
-	Row    uint16
-	Col    uint16
-	Xpixel uint16
-	Ypixel uint16
-}
-
 type Taskstats struct {
 	Version                   uint16
 	Ac_exitcode               uint32
@@ -969,279 +289,13 @@ type Taskstats struct {
 	Freepages_delay_total     uint64
 	Thrashing_count           uint64
 	Thrashing_delay_total     uint64
+	Ac_btime64                uint64
 }
 
-const (
-	TASKSTATS_CMD_UNSPEC                  = 0x0
-	TASKSTATS_CMD_GET                     = 0x1
-	TASKSTATS_CMD_NEW                     = 0x2
-	TASKSTATS_TYPE_UNSPEC                 = 0x0
-	TASKSTATS_TYPE_PID                    = 0x1
-	TASKSTATS_TYPE_TGID                   = 0x2
-	TASKSTATS_TYPE_STATS                  = 0x3
-	TASKSTATS_TYPE_AGGR_PID               = 0x4
-	TASKSTATS_TYPE_AGGR_TGID              = 0x5
-	TASKSTATS_TYPE_NULL                   = 0x6
-	TASKSTATS_CMD_ATTR_UNSPEC             = 0x0
-	TASKSTATS_CMD_ATTR_PID                = 0x1
-	TASKSTATS_CMD_ATTR_TGID               = 0x2
-	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = 0x3
-	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
-)
-
-type CGroupStats struct {
-	Sleeping        uint64
-	Running         uint64
-	Stopped         uint64
-	Uninterruptible uint64
-	Io_wait         uint64
-}
-
-const (
-	CGROUPSTATS_CMD_UNSPEC        = 0x3
-	CGROUPSTATS_CMD_GET           = 0x4
-	CGROUPSTATS_CMD_NEW           = 0x5
-	CGROUPSTATS_TYPE_UNSPEC       = 0x0
-	CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
-	CGROUPSTATS_CMD_ATTR_UNSPEC   = 0x0
-	CGROUPSTATS_CMD_ATTR_FD       = 0x1
-)
-
-type Genlmsghdr struct {
-	Cmd      uint8
-	Version  uint8
-	Reserved uint16
-}
-
-const (
-	CTRL_CMD_UNSPEC            = 0x0
-	CTRL_CMD_NEWFAMILY         = 0x1
-	CTRL_CMD_DELFAMILY         = 0x2
-	CTRL_CMD_GETFAMILY         = 0x3
-	CTRL_CMD_NEWOPS            = 0x4
-	CTRL_CMD_DELOPS            = 0x5
-	CTRL_CMD_GETOPS            = 0x6
-	CTRL_CMD_NEWMCAST_GRP      = 0x7
-	CTRL_CMD_DELMCAST_GRP      = 0x8
-	CTRL_CMD_GETMCAST_GRP      = 0x9
-	CTRL_ATTR_UNSPEC           = 0x0
-	CTRL_ATTR_FAMILY_ID        = 0x1
-	CTRL_ATTR_FAMILY_NAME      = 0x2
-	CTRL_ATTR_VERSION          = 0x3
-	CTRL_ATTR_HDRSIZE          = 0x4
-	CTRL_ATTR_MAXATTR          = 0x5
-	CTRL_ATTR_OPS              = 0x6
-	CTRL_ATTR_MCAST_GROUPS     = 0x7
-	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
-)
-
 type cpuMask uint64
 
 const (
-	_CPU_SETSIZE = 0x400
-	_NCPUBITS    = 0x40
-)
-
-const (
-	BDADDR_BREDR     = 0x0
-	BDADDR_LE_PUBLIC = 0x1
-	BDADDR_LE_RANDOM = 0x2
-)
-
-type PerfEventAttr struct {
-	Type               uint32
-	Size               uint32
-	Config             uint64
-	Sample             uint64
-	Sample_type        uint64
-	Read_format        uint64
-	Bits               uint64
-	Wakeup             uint32
-	Bp_type            uint32
-	Ext1               uint64
-	Ext2               uint64
-	Branch_sample_type uint64
-	Sample_regs_user   uint64
-	Sample_stack_user  uint32
-	Clockid            int32
-	Sample_regs_intr   uint64
-	Aux_watermark      uint32
-	Sample_max_stack   uint16
-	_                  uint16
-}
-
-type PerfEventMmapPage struct {
-	Version        uint32
-	Compat_version uint32
-	Lock           uint32
-	Index          uint32
-	Offset         int64
-	Time_enabled   uint64
-	Time_running   uint64
-	Capabilities   uint64
-	Pmc_width      uint16
-	Time_shift     uint16
-	Time_mult      uint32
-	Time_offset    uint64
-	Time_zero      uint64
-	Size           uint32
-	_              [948]uint8
-	Data_head      uint64
-	Data_tail      uint64
-	Data_offset    uint64
-	Data_size      uint64
-	Aux_head       uint64
-	Aux_tail       uint64
-	Aux_offset     uint64
-	Aux_size       uint64
-}
-
-const (
-	PerfBitDisabled               uint64 = CBitFieldMaskBit0
-	PerfBitInherit                       = CBitFieldMaskBit1
-	PerfBitPinned                        = CBitFieldMaskBit2
-	PerfBitExclusive                     = CBitFieldMaskBit3
-	PerfBitExcludeUser                   = CBitFieldMaskBit4
-	PerfBitExcludeKernel                 = CBitFieldMaskBit5
-	PerfBitExcludeHv                     = CBitFieldMaskBit6
-	PerfBitExcludeIdle                   = CBitFieldMaskBit7
-	PerfBitMmap                          = CBitFieldMaskBit8
-	PerfBitComm                          = CBitFieldMaskBit9
-	PerfBitFreq                          = CBitFieldMaskBit10
-	PerfBitInheritStat                   = CBitFieldMaskBit11
-	PerfBitEnableOnExec                  = CBitFieldMaskBit12
-	PerfBitTask                          = CBitFieldMaskBit13
-	PerfBitWatermark                     = CBitFieldMaskBit14
-	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
-	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
-	PerfBitMmapData                      = CBitFieldMaskBit17
-	PerfBitSampleIDAll                   = CBitFieldMaskBit18
-	PerfBitExcludeHost                   = CBitFieldMaskBit19
-	PerfBitExcludeGuest                  = CBitFieldMaskBit20
-	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
-	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
-	PerfBitMmap2                         = CBitFieldMaskBit23
-	PerfBitCommExec                      = CBitFieldMaskBit24
-	PerfBitUseClockID                    = CBitFieldMaskBit25
-	PerfBitContextSwitch                 = CBitFieldMaskBit26
-)
-
-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_COUNT_HW_CPU_CYCLES              = 0x0
-	PERF_COUNT_HW_INSTRUCTIONS            = 0x1
-	PERF_COUNT_HW_CACHE_REFERENCES        = 0x2
-	PERF_COUNT_HW_CACHE_MISSES            = 0x3
-	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = 0x4
-	PERF_COUNT_HW_BRANCH_MISSES           = 0x5
-	PERF_COUNT_HW_BUS_CYCLES              = 0x6
-	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
+	_NCPUBITS = 0x40
 )
 
 const (
@@ -1317,22 +371,6 @@ type SockaddrStorage struct {
 	_      uint64
 }
 
-type TCPMD5Sig struct {
-	Addr      SockaddrStorage
-	Flags     uint8
-	Prefixlen uint8
-	Keylen    uint16
-	_         uint32
-	Key       [80]uint8
-}
-
-type HDDriveCmdHdr struct {
-	Command uint8
-	Number  uint8
-	Feature uint8
-	Count   uint8
-}
-
 type HDGeometry struct {
 	Heads     uint8
 	Sectors   uint8
@@ -1340,88 +378,6 @@ type HDGeometry struct {
 	Start     uint64
 }
 
-type HDDriveID struct {
-	Config         uint16
-	Cyls           uint16
-	Reserved2      uint16
-	Heads          uint16
-	Track_bytes    uint16
-	Sector_bytes   uint16
-	Sectors        uint16
-	Vendor0        uint16
-	Vendor1        uint16
-	Vendor2        uint16
-	Serial_no      [20]uint8
-	Buf_type       uint16
-	Buf_size       uint16
-	Ecc_bytes      uint16
-	Fw_rev         [8]uint8
-	Model          [40]uint8
-	Max_multsect   uint8
-	Vendor3        uint8
-	Dword_io       uint16
-	Vendor4        uint8
-	Capability     uint8
-	Reserved50     uint16
-	Vendor5        uint8
-	TPIO           uint8
-	Vendor6        uint8
-	TDMA           uint8
-	Field_valid    uint16
-	Cur_cyls       uint16
-	Cur_heads      uint16
-	Cur_sectors    uint16
-	Cur_capacity0  uint16
-	Cur_capacity1  uint16
-	Multsect       uint8
-	Multsect_valid uint8
-	Lba_capacity   uint32
-	Dma_1word      uint16
-	Dma_mword      uint16
-	Eide_pio_modes uint16
-	Eide_dma_min   uint16
-	Eide_dma_time  uint16
-	Eide_pio       uint16
-	Eide_pio_iordy uint16
-	Words69_70     [2]uint16
-	Words71_74     [4]uint16
-	Queue_depth    uint16
-	Words76_79     [4]uint16
-	Major_rev_num  uint16
-	Minor_rev_num  uint16
-	Command_set_1  uint16
-	Command_set_2  uint16
-	Cfsse          uint16
-	Cfs_enable_1   uint16
-	Cfs_enable_2   uint16
-	Csf_default    uint16
-	Dma_ultra      uint16
-	Trseuc         uint16
-	TrsEuc         uint16
-	CurAPMvalues   uint16
-	Mprc           uint16
-	Hw_config      uint16
-	Acoustic       uint16
-	Msrqs          uint16
-	Sxfert         uint16
-	Sal            uint16
-	Spg            uint32
-	Lba_capacity_2 uint64
-	Words104_125   [22]uint16
-	Last_lun       uint16
-	Word127        uint16
-	Dlf            uint16
-	Csfo           uint16
-	Words130_155   [26]uint16
-	Word156        uint16
-	Words157_159   [3]uint16
-	Cfa_power      uint16
-	Words161_175   [15]uint16
-	Words176_205   [30]uint16
-	Words206_254   [49]uint16
-	Integrity_word uint16
-}
-
 type Statfs_t struct {
 	Type    int64
 	Bsize   int64
@@ -1437,18 +393,6 @@ type Statfs_t struct {
 	Spare   [4]int64
 }
 
-const (
-	ST_MANDLOCK    = 0x40
-	ST_NOATIME     = 0x400
-	ST_NODEV       = 0x4
-	ST_NODIRATIME  = 0x800
-	ST_NOEXEC      = 0x8
-	ST_NOSUID      = 0x2
-	ST_RDONLY      = 0x1
-	ST_RELATIME    = 0x1000
-	ST_SYNCHRONOUS = 0x10
-)
-
 type TpacketHdr struct {
 	Status  uint64
 	Len     uint32
@@ -1460,589 +404,10 @@ type TpacketHdr struct {
 	_       [4]byte
 }
 
-type Tpacket2Hdr struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Sec       uint32
-	Nsec      uint32
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-	_         [4]uint8
-}
-
-type Tpacket3Hdr struct {
-	Next_offset uint32
-	Sec         uint32
-	Nsec        uint32
-	Snaplen     uint32
-	Len         uint32
-	Status      uint32
-	Mac         uint16
-	Net         uint16
-	Hv1         TpacketHdrVariant1
-	_           [8]uint8
-}
-
-type TpacketHdrVariant1 struct {
-	Rxhash    uint32
-	Vlan_tci  uint32
-	Vlan_tpid uint16
-	_         uint16
-}
-
-type TpacketBlockDesc struct {
-	Version uint32
-	To_priv uint32
-	Hdr     [40]byte
-}
-
-type TpacketBDTS struct {
-	Sec  uint32
-	Usec uint32
-}
-
-type TpacketHdrV1 struct {
-	Block_status        uint32
-	Num_pkts            uint32
-	Offset_to_first_pkt uint32
-	Blk_len             uint32
-	Seq_num             uint64
-	Ts_first_pkt        TpacketBDTS
-	Ts_last_pkt         TpacketBDTS
-}
-
-type TpacketReq struct {
-	Block_size uint32
-	Block_nr   uint32
-	Frame_size uint32
-	Frame_nr   uint32
-}
-
-type TpacketReq3 struct {
-	Block_size       uint32
-	Block_nr         uint32
-	Frame_size       uint32
-	Frame_nr         uint32
-	Retire_blk_tov   uint32
-	Sizeof_priv      uint32
-	Feature_req_word uint32
-}
-
-type TpacketStats struct {
-	Packets uint32
-	Drops   uint32
-}
-
-type TpacketStatsV3 struct {
-	Packets      uint32
-	Drops        uint32
-	Freeze_q_cnt uint32
-}
-
-type TpacketAuxdata struct {
-	Status    uint32
-	Len       uint32
-	Snaplen   uint32
-	Mac       uint16
-	Net       uint16
-	Vlan_tci  uint16
-	Vlan_tpid uint16
-}
-
-const (
-	TPACKET_V1 = 0x0
-	TPACKET_V2 = 0x1
-	TPACKET_V3 = 0x2
-)
-
-const (
-	SizeofTpacketHdr  = 0x20
-	SizeofTpacket2Hdr = 0x20
-	SizeofTpacket3Hdr = 0x30
-
-	SizeofTpacketStats   = 0x8
-	SizeofTpacketStatsV3 = 0xc
-)
-
 const (
-	NF_INET_PRE_ROUTING  = 0x0
-	NF_INET_LOCAL_IN     = 0x1
-	NF_INET_FORWARD      = 0x2
-	NF_INET_LOCAL_OUT    = 0x3
-	NF_INET_POST_ROUTING = 0x4
-	NF_INET_NUMHOOKS     = 0x5
+	SizeofTpacketHdr = 0x20
 )
 
-const (
-	NF_NETDEV_INGRESS  = 0x0
-	NF_NETDEV_NUMHOOKS = 0x1
-)
-
-const (
-	NFPROTO_UNSPEC   = 0x0
-	NFPROTO_INET     = 0x1
-	NFPROTO_IPV4     = 0x2
-	NFPROTO_ARP      = 0x3
-	NFPROTO_NETDEV   = 0x5
-	NFPROTO_BRIDGE   = 0x7
-	NFPROTO_IPV6     = 0xa
-	NFPROTO_DECNET   = 0xc
-	NFPROTO_NUMPROTO = 0xd
-)
-
-type Nfgenmsg struct {
-	Nfgen_family uint8
-	Version      uint8
-	Res_id       uint16
-}
-
-const (
-	NFNL_BATCH_UNSPEC = 0x0
-	NFNL_BATCH_GENID  = 0x1
-)
-
-const (
-	NFT_REG_VERDICT                   = 0x0
-	NFT_REG_1                         = 0x1
-	NFT_REG_2                         = 0x2
-	NFT_REG_3                         = 0x3
-	NFT_REG_4                         = 0x4
-	NFT_REG32_00                      = 0x8
-	NFT_REG32_01                      = 0x9
-	NFT_REG32_02                      = 0xa
-	NFT_REG32_03                      = 0xb
-	NFT_REG32_04                      = 0xc
-	NFT_REG32_05                      = 0xd
-	NFT_REG32_06                      = 0xe
-	NFT_REG32_07                      = 0xf
-	NFT_REG32_08                      = 0x10
-	NFT_REG32_09                      = 0x11
-	NFT_REG32_10                      = 0x12
-	NFT_REG32_11                      = 0x13
-	NFT_REG32_12                      = 0x14
-	NFT_REG32_13                      = 0x15
-	NFT_REG32_14                      = 0x16
-	NFT_REG32_15                      = 0x17
-	NFT_CONTINUE                      = -0x1
-	NFT_BREAK                         = -0x2
-	NFT_JUMP                          = -0x3
-	NFT_GOTO                          = -0x4
-	NFT_RETURN                        = -0x5
-	NFT_MSG_NEWTABLE                  = 0x0
-	NFT_MSG_GETTABLE                  = 0x1
-	NFT_MSG_DELTABLE                  = 0x2
-	NFT_MSG_NEWCHAIN                  = 0x3
-	NFT_MSG_GETCHAIN                  = 0x4
-	NFT_MSG_DELCHAIN                  = 0x5
-	NFT_MSG_NEWRULE                   = 0x6
-	NFT_MSG_GETRULE                   = 0x7
-	NFT_MSG_DELRULE                   = 0x8
-	NFT_MSG_NEWSET                    = 0x9
-	NFT_MSG_GETSET                    = 0xa
-	NFT_MSG_DELSET                    = 0xb
-	NFT_MSG_NEWSETELEM                = 0xc
-	NFT_MSG_GETSETELEM                = 0xd
-	NFT_MSG_DELSETELEM                = 0xe
-	NFT_MSG_NEWGEN                    = 0xf
-	NFT_MSG_GETGEN                    = 0x10
-	NFT_MSG_TRACE                     = 0x11
-	NFT_MSG_NEWOBJ                    = 0x12
-	NFT_MSG_GETOBJ                    = 0x13
-	NFT_MSG_DELOBJ                    = 0x14
-	NFT_MSG_GETOBJ_RESET              = 0x15
-	NFT_MSG_MAX                       = 0x19
-	NFTA_LIST_UNPEC                   = 0x0
-	NFTA_LIST_ELEM                    = 0x1
-	NFTA_HOOK_UNSPEC                  = 0x0
-	NFTA_HOOK_HOOKNUM                 = 0x1
-	NFTA_HOOK_PRIORITY                = 0x2
-	NFTA_HOOK_DEV                     = 0x3
-	NFT_TABLE_F_DORMANT               = 0x1
-	NFTA_TABLE_UNSPEC                 = 0x0
-	NFTA_TABLE_NAME                   = 0x1
-	NFTA_TABLE_FLAGS                  = 0x2
-	NFTA_TABLE_USE                    = 0x3
-	NFTA_CHAIN_UNSPEC                 = 0x0
-	NFTA_CHAIN_TABLE                  = 0x1
-	NFTA_CHAIN_HANDLE                 = 0x2
-	NFTA_CHAIN_NAME                   = 0x3
-	NFTA_CHAIN_HOOK                   = 0x4
-	NFTA_CHAIN_POLICY                 = 0x5
-	NFTA_CHAIN_USE                    = 0x6
-	NFTA_CHAIN_TYPE                   = 0x7
-	NFTA_CHAIN_COUNTERS               = 0x8
-	NFTA_CHAIN_PAD                    = 0x9
-	NFTA_RULE_UNSPEC                  = 0x0
-	NFTA_RULE_TABLE                   = 0x1
-	NFTA_RULE_CHAIN                   = 0x2
-	NFTA_RULE_HANDLE                  = 0x3
-	NFTA_RULE_EXPRESSIONS             = 0x4
-	NFTA_RULE_COMPAT                  = 0x5
-	NFTA_RULE_POSITION                = 0x6
-	NFTA_RULE_USERDATA                = 0x7
-	NFTA_RULE_PAD                     = 0x8
-	NFTA_RULE_ID                      = 0x9
-	NFT_RULE_COMPAT_F_INV             = 0x2
-	NFT_RULE_COMPAT_F_MASK            = 0x2
-	NFTA_RULE_COMPAT_UNSPEC           = 0x0
-	NFTA_RULE_COMPAT_PROTO            = 0x1
-	NFTA_RULE_COMPAT_FLAGS            = 0x2
-	NFT_SET_ANONYMOUS                 = 0x1
-	NFT_SET_CONSTANT                  = 0x2
-	NFT_SET_INTERVAL                  = 0x4
-	NFT_SET_MAP                       = 0x8
-	NFT_SET_TIMEOUT                   = 0x10
-	NFT_SET_EVAL                      = 0x20
-	NFT_SET_OBJECT                    = 0x40
-	NFT_SET_POL_PERFORMANCE           = 0x0
-	NFT_SET_POL_MEMORY                = 0x1
-	NFTA_SET_DESC_UNSPEC              = 0x0
-	NFTA_SET_DESC_SIZE                = 0x1
-	NFTA_SET_UNSPEC                   = 0x0
-	NFTA_SET_TABLE                    = 0x1
-	NFTA_SET_NAME                     = 0x2
-	NFTA_SET_FLAGS                    = 0x3
-	NFTA_SET_KEY_TYPE                 = 0x4
-	NFTA_SET_KEY_LEN                  = 0x5
-	NFTA_SET_DATA_TYPE                = 0x6
-	NFTA_SET_DATA_LEN                 = 0x7
-	NFTA_SET_POLICY                   = 0x8
-	NFTA_SET_DESC                     = 0x9
-	NFTA_SET_ID                       = 0xa
-	NFTA_SET_TIMEOUT                  = 0xb
-	NFTA_SET_GC_INTERVAL              = 0xc
-	NFTA_SET_USERDATA                 = 0xd
-	NFTA_SET_PAD                      = 0xe
-	NFTA_SET_OBJ_TYPE                 = 0xf
-	NFT_SET_ELEM_INTERVAL_END         = 0x1
-	NFTA_SET_ELEM_UNSPEC              = 0x0
-	NFTA_SET_ELEM_KEY                 = 0x1
-	NFTA_SET_ELEM_DATA                = 0x2
-	NFTA_SET_ELEM_FLAGS               = 0x3
-	NFTA_SET_ELEM_TIMEOUT             = 0x4
-	NFTA_SET_ELEM_EXPIRATION          = 0x5
-	NFTA_SET_ELEM_USERDATA            = 0x6
-	NFTA_SET_ELEM_EXPR                = 0x7
-	NFTA_SET_ELEM_PAD                 = 0x8
-	NFTA_SET_ELEM_OBJREF              = 0x9
-	NFTA_SET_ELEM_LIST_UNSPEC         = 0x0
-	NFTA_SET_ELEM_LIST_TABLE          = 0x1
-	NFTA_SET_ELEM_LIST_SET            = 0x2
-	NFTA_SET_ELEM_LIST_ELEMENTS       = 0x3
-	NFTA_SET_ELEM_LIST_SET_ID         = 0x4
-	NFT_DATA_VALUE                    = 0x0
-	NFT_DATA_VERDICT                  = 0xffffff00
-	NFTA_DATA_UNSPEC                  = 0x0
-	NFTA_DATA_VALUE                   = 0x1
-	NFTA_DATA_VERDICT                 = 0x2
-	NFTA_VERDICT_UNSPEC               = 0x0
-	NFTA_VERDICT_CODE                 = 0x1
-	NFTA_VERDICT_CHAIN                = 0x2
-	NFTA_EXPR_UNSPEC                  = 0x0
-	NFTA_EXPR_NAME                    = 0x1
-	NFTA_EXPR_DATA                    = 0x2
-	NFTA_IMMEDIATE_UNSPEC             = 0x0
-	NFTA_IMMEDIATE_DREG               = 0x1
-	NFTA_IMMEDIATE_DATA               = 0x2
-	NFTA_BITWISE_UNSPEC               = 0x0
-	NFTA_BITWISE_SREG                 = 0x1
-	NFTA_BITWISE_DREG                 = 0x2
-	NFTA_BITWISE_LEN                  = 0x3
-	NFTA_BITWISE_MASK                 = 0x4
-	NFTA_BITWISE_XOR                  = 0x5
-	NFT_BYTEORDER_NTOH                = 0x0
-	NFT_BYTEORDER_HTON                = 0x1
-	NFTA_BYTEORDER_UNSPEC             = 0x0
-	NFTA_BYTEORDER_SREG               = 0x1
-	NFTA_BYTEORDER_DREG               = 0x2
-	NFTA_BYTEORDER_OP                 = 0x3
-	NFTA_BYTEORDER_LEN                = 0x4
-	NFTA_BYTEORDER_SIZE               = 0x5
-	NFT_CMP_EQ                        = 0x0
-	NFT_CMP_NEQ                       = 0x1
-	NFT_CMP_LT                        = 0x2
-	NFT_CMP_LTE                       = 0x3
-	NFT_CMP_GT                        = 0x4
-	NFT_CMP_GTE                       = 0x5
-	NFTA_CMP_UNSPEC                   = 0x0
-	NFTA_CMP_SREG                     = 0x1
-	NFTA_CMP_OP                       = 0x2
-	NFTA_CMP_DATA                     = 0x3
-	NFT_RANGE_EQ                      = 0x0
-	NFT_RANGE_NEQ                     = 0x1
-	NFTA_RANGE_UNSPEC                 = 0x0
-	NFTA_RANGE_SREG                   = 0x1
-	NFTA_RANGE_OP                     = 0x2
-	NFTA_RANGE_FROM_DATA              = 0x3
-	NFTA_RANGE_TO_DATA                = 0x4
-	NFT_LOOKUP_F_INV                  = 0x1
-	NFTA_LOOKUP_UNSPEC                = 0x0
-	NFTA_LOOKUP_SET                   = 0x1
-	NFTA_LOOKUP_SREG                  = 0x2
-	NFTA_LOOKUP_DREG                  = 0x3
-	NFTA_LOOKUP_SET_ID                = 0x4
-	NFTA_LOOKUP_FLAGS                 = 0x5
-	NFT_DYNSET_OP_ADD                 = 0x0
-	NFT_DYNSET_OP_UPDATE              = 0x1
-	NFT_DYNSET_F_INV                  = 0x1
-	NFTA_DYNSET_UNSPEC                = 0x0
-	NFTA_DYNSET_SET_NAME              = 0x1
-	NFTA_DYNSET_SET_ID                = 0x2
-	NFTA_DYNSET_OP                    = 0x3
-	NFTA_DYNSET_SREG_KEY              = 0x4
-	NFTA_DYNSET_SREG_DATA             = 0x5
-	NFTA_DYNSET_TIMEOUT               = 0x6
-	NFTA_DYNSET_EXPR                  = 0x7
-	NFTA_DYNSET_PAD                   = 0x8
-	NFTA_DYNSET_FLAGS                 = 0x9
-	NFT_PAYLOAD_LL_HEADER             = 0x0
-	NFT_PAYLOAD_NETWORK_HEADER        = 0x1
-	NFT_PAYLOAD_TRANSPORT_HEADER      = 0x2
-	NFT_PAYLOAD_CSUM_NONE             = 0x0
-	NFT_PAYLOAD_CSUM_INET             = 0x1
-	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = 0x1
-	NFTA_PAYLOAD_UNSPEC               = 0x0
-	NFTA_PAYLOAD_DREG                 = 0x1
-	NFTA_PAYLOAD_BASE                 = 0x2
-	NFTA_PAYLOAD_OFFSET               = 0x3
-	NFTA_PAYLOAD_LEN                  = 0x4
-	NFTA_PAYLOAD_SREG                 = 0x5
-	NFTA_PAYLOAD_CSUM_TYPE            = 0x6
-	NFTA_PAYLOAD_CSUM_OFFSET          = 0x7
-	NFTA_PAYLOAD_CSUM_FLAGS           = 0x8
-	NFT_EXTHDR_F_PRESENT              = 0x1
-	NFT_EXTHDR_OP_IPV6                = 0x0
-	NFT_EXTHDR_OP_TCPOPT              = 0x1
-	NFTA_EXTHDR_UNSPEC                = 0x0
-	NFTA_EXTHDR_DREG                  = 0x1
-	NFTA_EXTHDR_TYPE                  = 0x2
-	NFTA_EXTHDR_OFFSET                = 0x3
-	NFTA_EXTHDR_LEN                   = 0x4
-	NFTA_EXTHDR_FLAGS                 = 0x5
-	NFTA_EXTHDR_OP                    = 0x6
-	NFTA_EXTHDR_SREG                  = 0x7
-	NFT_META_LEN                      = 0x0
-	NFT_META_PROTOCOL                 = 0x1
-	NFT_META_PRIORITY                 = 0x2
-	NFT_META_MARK                     = 0x3
-	NFT_META_IIF                      = 0x4
-	NFT_META_OIF                      = 0x5
-	NFT_META_IIFNAME                  = 0x6
-	NFT_META_OIFNAME                  = 0x7
-	NFT_META_IIFTYPE                  = 0x8
-	NFT_META_OIFTYPE                  = 0x9
-	NFT_META_SKUID                    = 0xa
-	NFT_META_SKGID                    = 0xb
-	NFT_META_NFTRACE                  = 0xc
-	NFT_META_RTCLASSID                = 0xd
-	NFT_META_SECMARK                  = 0xe
-	NFT_META_NFPROTO                  = 0xf
-	NFT_META_L4PROTO                  = 0x10
-	NFT_META_BRI_IIFNAME              = 0x11
-	NFT_META_BRI_OIFNAME              = 0x12
-	NFT_META_PKTTYPE                  = 0x13
-	NFT_META_CPU                      = 0x14
-	NFT_META_IIFGROUP                 = 0x15
-	NFT_META_OIFGROUP                 = 0x16
-	NFT_META_CGROUP                   = 0x17
-	NFT_META_PRANDOM                  = 0x18
-	NFT_RT_CLASSID                    = 0x0
-	NFT_RT_NEXTHOP4                   = 0x1
-	NFT_RT_NEXTHOP6                   = 0x2
-	NFT_RT_TCPMSS                     = 0x3
-	NFT_HASH_JENKINS                  = 0x0
-	NFT_HASH_SYM                      = 0x1
-	NFTA_HASH_UNSPEC                  = 0x0
-	NFTA_HASH_SREG                    = 0x1
-	NFTA_HASH_DREG                    = 0x2
-	NFTA_HASH_LEN                     = 0x3
-	NFTA_HASH_MODULUS                 = 0x4
-	NFTA_HASH_SEED                    = 0x5
-	NFTA_HASH_OFFSET                  = 0x6
-	NFTA_HASH_TYPE                    = 0x7
-	NFTA_META_UNSPEC                  = 0x0
-	NFTA_META_DREG                    = 0x1
-	NFTA_META_KEY                     = 0x2
-	NFTA_META_SREG                    = 0x3
-	NFTA_RT_UNSPEC                    = 0x0
-	NFTA_RT_DREG                      = 0x1
-	NFTA_RT_KEY                       = 0x2
-	NFT_CT_STATE                      = 0x0
-	NFT_CT_DIRECTION                  = 0x1
-	NFT_CT_STATUS                     = 0x2
-	NFT_CT_MARK                       = 0x3
-	NFT_CT_SECMARK                    = 0x4
-	NFT_CT_EXPIRATION                 = 0x5
-	NFT_CT_HELPER                     = 0x6
-	NFT_CT_L3PROTOCOL                 = 0x7
-	NFT_CT_SRC                        = 0x8
-	NFT_CT_DST                        = 0x9
-	NFT_CT_PROTOCOL                   = 0xa
-	NFT_CT_PROTO_SRC                  = 0xb
-	NFT_CT_PROTO_DST                  = 0xc
-	NFT_CT_LABELS                     = 0xd
-	NFT_CT_PKTS                       = 0xe
-	NFT_CT_BYTES                      = 0xf
-	NFT_CT_AVGPKT                     = 0x10
-	NFT_CT_ZONE                       = 0x11
-	NFT_CT_EVENTMASK                  = 0x12
-	NFTA_CT_UNSPEC                    = 0x0
-	NFTA_CT_DREG                      = 0x1
-	NFTA_CT_KEY                       = 0x2
-	NFTA_CT_DIRECTION                 = 0x3
-	NFTA_CT_SREG                      = 0x4
-	NFT_LIMIT_PKTS                    = 0x0
-	NFT_LIMIT_PKT_BYTES               = 0x1
-	NFT_LIMIT_F_INV                   = 0x1
-	NFTA_LIMIT_UNSPEC                 = 0x0
-	NFTA_LIMIT_RATE                   = 0x1
-	NFTA_LIMIT_UNIT                   = 0x2
-	NFTA_LIMIT_BURST                  = 0x3
-	NFTA_LIMIT_TYPE                   = 0x4
-	NFTA_LIMIT_FLAGS                  = 0x5
-	NFTA_LIMIT_PAD                    = 0x6
-	NFTA_COUNTER_UNSPEC               = 0x0
-	NFTA_COUNTER_BYTES                = 0x1
-	NFTA_COUNTER_PACKETS              = 0x2
-	NFTA_COUNTER_PAD                  = 0x3
-	NFTA_LOG_UNSPEC                   = 0x0
-	NFTA_LOG_GROUP                    = 0x1
-	NFTA_LOG_PREFIX                   = 0x2
-	NFTA_LOG_SNAPLEN                  = 0x3
-	NFTA_LOG_QTHRESHOLD               = 0x4
-	NFTA_LOG_LEVEL                    = 0x5
-	NFTA_LOG_FLAGS                    = 0x6
-	NFTA_QUEUE_UNSPEC                 = 0x0
-	NFTA_QUEUE_NUM                    = 0x1
-	NFTA_QUEUE_TOTAL                  = 0x2
-	NFTA_QUEUE_FLAGS                  = 0x3
-	NFTA_QUEUE_SREG_QNUM              = 0x4
-	NFT_QUOTA_F_INV                   = 0x1
-	NFT_QUOTA_F_DEPLETED              = 0x2
-	NFTA_QUOTA_UNSPEC                 = 0x0
-	NFTA_QUOTA_BYTES                  = 0x1
-	NFTA_QUOTA_FLAGS                  = 0x2
-	NFTA_QUOTA_PAD                    = 0x3
-	NFTA_QUOTA_CONSUMED               = 0x4
-	NFT_REJECT_ICMP_UNREACH           = 0x0
-	NFT_REJECT_TCP_RST                = 0x1
-	NFT_REJECT_ICMPX_UNREACH          = 0x2
-	NFT_REJECT_ICMPX_NO_ROUTE         = 0x0
-	NFT_REJECT_ICMPX_PORT_UNREACH     = 0x1
-	NFT_REJECT_ICMPX_HOST_UNREACH     = 0x2
-	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
-	NFTA_REJECT_UNSPEC                = 0x0
-	NFTA_REJECT_TYPE                  = 0x1
-	NFTA_REJECT_ICMP_CODE             = 0x2
-	NFT_NAT_SNAT                      = 0x0
-	NFT_NAT_DNAT                      = 0x1
-	NFTA_NAT_UNSPEC                   = 0x0
-	NFTA_NAT_TYPE                     = 0x1
-	NFTA_NAT_FAMILY                   = 0x2
-	NFTA_NAT_REG_ADDR_MIN             = 0x3
-	NFTA_NAT_REG_ADDR_MAX             = 0x4
-	NFTA_NAT_REG_PROTO_MIN            = 0x5
-	NFTA_NAT_REG_PROTO_MAX            = 0x6
-	NFTA_NAT_FLAGS                    = 0x7
-	NFTA_MASQ_UNSPEC                  = 0x0
-	NFTA_MASQ_FLAGS                   = 0x1
-	NFTA_MASQ_REG_PROTO_MIN           = 0x2
-	NFTA_MASQ_REG_PROTO_MAX           = 0x3
-	NFTA_REDIR_UNSPEC                 = 0x0
-	NFTA_REDIR_REG_PROTO_MIN          = 0x1
-	NFTA_REDIR_REG_PROTO_MAX          = 0x2
-	NFTA_REDIR_FLAGS                  = 0x3
-	NFTA_DUP_UNSPEC                   = 0x0
-	NFTA_DUP_SREG_ADDR                = 0x1
-	NFTA_DUP_SREG_DEV                 = 0x2
-	NFTA_FWD_UNSPEC                   = 0x0
-	NFTA_FWD_SREG_DEV                 = 0x1
-	NFTA_OBJREF_UNSPEC                = 0x0
-	NFTA_OBJREF_IMM_TYPE              = 0x1
-	NFTA_OBJREF_IMM_NAME              = 0x2
-	NFTA_OBJREF_SET_SREG              = 0x3
-	NFTA_OBJREF_SET_NAME              = 0x4
-	NFTA_OBJREF_SET_ID                = 0x5
-	NFTA_GEN_UNSPEC                   = 0x0
-	NFTA_GEN_ID                       = 0x1
-	NFTA_GEN_PROC_PID                 = 0x2
-	NFTA_GEN_PROC_NAME                = 0x3
-	NFTA_FIB_UNSPEC                   = 0x0
-	NFTA_FIB_DREG                     = 0x1
-	NFTA_FIB_RESULT                   = 0x2
-	NFTA_FIB_FLAGS                    = 0x3
-	NFT_FIB_RESULT_UNSPEC             = 0x0
-	NFT_FIB_RESULT_OIF                = 0x1
-	NFT_FIB_RESULT_OIFNAME            = 0x2
-	NFT_FIB_RESULT_ADDRTYPE           = 0x3
-	NFTA_FIB_F_SADDR                  = 0x1
-	NFTA_FIB_F_DADDR                  = 0x2
-	NFTA_FIB_F_MARK                   = 0x4
-	NFTA_FIB_F_IIF                    = 0x8
-	NFTA_FIB_F_OIF                    = 0x10
-	NFTA_FIB_F_PRESENT                = 0x20
-	NFTA_CT_HELPER_UNSPEC             = 0x0
-	NFTA_CT_HELPER_NAME               = 0x1
-	NFTA_CT_HELPER_L3PROTO            = 0x2
-	NFTA_CT_HELPER_L4PROTO            = 0x3
-	NFTA_OBJ_UNSPEC                   = 0x0
-	NFTA_OBJ_TABLE                    = 0x1
-	NFTA_OBJ_NAME                     = 0x2
-	NFTA_OBJ_TYPE                     = 0x3
-	NFTA_OBJ_DATA                     = 0x4
-	NFTA_OBJ_USE                      = 0x5
-	NFTA_TRACE_UNSPEC                 = 0x0
-	NFTA_TRACE_TABLE                  = 0x1
-	NFTA_TRACE_CHAIN                  = 0x2
-	NFTA_TRACE_RULE_HANDLE            = 0x3
-	NFTA_TRACE_TYPE                   = 0x4
-	NFTA_TRACE_VERDICT                = 0x5
-	NFTA_TRACE_ID                     = 0x6
-	NFTA_TRACE_LL_HEADER              = 0x7
-	NFTA_TRACE_NETWORK_HEADER         = 0x8
-	NFTA_TRACE_TRANSPORT_HEADER       = 0x9
-	NFTA_TRACE_IIF                    = 0xa
-	NFTA_TRACE_IIFTYPE                = 0xb
-	NFTA_TRACE_OIF                    = 0xc
-	NFTA_TRACE_OIFTYPE                = 0xd
-	NFTA_TRACE_MARK                   = 0xe
-	NFTA_TRACE_NFPROTO                = 0xf
-	NFTA_TRACE_POLICY                 = 0x10
-	NFTA_TRACE_PAD                    = 0x11
-	NFT_TRACETYPE_UNSPEC              = 0x0
-	NFT_TRACETYPE_POLICY              = 0x1
-	NFT_TRACETYPE_RETURN              = 0x2
-	NFT_TRACETYPE_RULE                = 0x3
-	NFTA_NG_UNSPEC                    = 0x0
-	NFTA_NG_DREG                      = 0x1
-	NFTA_NG_MODULUS                   = 0x2
-	NFTA_NG_TYPE                      = 0x3
-	NFTA_NG_OFFSET                    = 0x4
-	NFT_NG_INCREMENTAL                = 0x0
-	NFT_NG_RANDOM                     = 0x1
-)
-
-type RTCTime struct {
-	Sec   int32
-	Min   int32
-	Hour  int32
-	Mday  int32
-	Mon   int32
-	Year  int32
-	Wday  int32
-	Yday  int32
-	Isdst int32
-}
-
-type RTCWkAlrm struct {
-	Enabled uint8
-	Pending uint8
-	Time    RTCTime
-}
-
 type RTCPLLInfo struct {
 	Ctrl    int32
 	Value   int32
@@ -2053,13 +418,6 @@ type RTCPLLInfo struct {
 	Clock   int64
 }
 
-type BlkpgIoctlArg struct {
-	Op      int32
-	Flags   int32
-	Datalen int32
-	Data    *byte
-}
-
 type BlkpgPartition struct {
 	Start   int64
 	Length  int64
@@ -2070,33 +428,9 @@ type BlkpgPartition struct {
 }
 
 const (
-	BLKPG                  = 0x20001269
-	BLKPG_ADD_PARTITION    = 0x1
-	BLKPG_DEL_PARTITION    = 0x2
-	BLKPG_RESIZE_PARTITION = 0x3
-)
-
-const (
-	NETNSA_NONE = 0x0
-	NETNSA_NSID = 0x1
-	NETNSA_PID  = 0x2
-	NETNSA_FD   = 0x3
+	BLKPG = 0x20001269
 )
 
-type XDPRingOffset struct {
-	Producer uint64
-	Consumer uint64
-	Desc     uint64
-	Flags    uint64
-}
-
-type XDPMmapOffsets struct {
-	Rx XDPRingOffset
-	Tx XDPRingOffset
-	Fr XDPRingOffset
-	Cr XDPRingOffset
-}
-
 type XDPUmemReg struct {
 	Addr     uint64
 	Len      uint64
@@ -2106,135 +440,6 @@ type XDPUmemReg struct {
 	_        [4]byte
 }
 
-type XDPStatistics struct {
-	Rx_dropped       uint64
-	Rx_invalid_descs uint64
-	Tx_invalid_descs uint64
-}
-
-type XDPDesc struct {
-	Addr    uint64
-	Len     uint32
-	Options uint32
-}
-
-const (
-	NCSI_CMD_UNSPEC                 = 0x0
-	NCSI_CMD_PKG_INFO               = 0x1
-	NCSI_CMD_SET_INTERFACE          = 0x2
-	NCSI_CMD_CLEAR_INTERFACE        = 0x3
-	NCSI_ATTR_UNSPEC                = 0x0
-	NCSI_ATTR_IFINDEX               = 0x1
-	NCSI_ATTR_PACKAGE_LIST          = 0x2
-	NCSI_ATTR_PACKAGE_ID            = 0x3
-	NCSI_ATTR_CHANNEL_ID            = 0x4
-	NCSI_PKG_ATTR_UNSPEC            = 0x0
-	NCSI_PKG_ATTR                   = 0x1
-	NCSI_PKG_ATTR_ID                = 0x2
-	NCSI_PKG_ATTR_FORCED            = 0x3
-	NCSI_PKG_ATTR_CHANNEL_LIST      = 0x4
-	NCSI_CHANNEL_ATTR_UNSPEC        = 0x0
-	NCSI_CHANNEL_ATTR               = 0x1
-	NCSI_CHANNEL_ATTR_ID            = 0x2
-	NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
-	NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
-	NCSI_CHANNEL_ATTR_VERSION_STR   = 0x5
-	NCSI_CHANNEL_ATTR_LINK_STATE    = 0x6
-	NCSI_CHANNEL_ATTR_ACTIVE        = 0x7
-	NCSI_CHANNEL_ATTR_FORCED        = 0x8
-	NCSI_CHANNEL_ATTR_VLAN_LIST     = 0x9
-	NCSI_CHANNEL_ATTR_VLAN_ID       = 0xa
-)
-
-type ScmTimestamping struct {
-	Ts [3]Timespec
-}
-
-const (
-	SOF_TIMESTAMPING_TX_HARDWARE  = 0x1
-	SOF_TIMESTAMPING_TX_SOFTWARE  = 0x2
-	SOF_TIMESTAMPING_RX_HARDWARE  = 0x4
-	SOF_TIMESTAMPING_RX_SOFTWARE  = 0x8
-	SOF_TIMESTAMPING_SOFTWARE     = 0x10
-	SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
-	SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
-	SOF_TIMESTAMPING_OPT_ID       = 0x80
-	SOF_TIMESTAMPING_TX_SCHED     = 0x100
-	SOF_TIMESTAMPING_TX_ACK       = 0x200
-	SOF_TIMESTAMPING_OPT_CMSG     = 0x400
-	SOF_TIMESTAMPING_OPT_TSONLY   = 0x800
-	SOF_TIMESTAMPING_OPT_STATS    = 0x1000
-	SOF_TIMESTAMPING_OPT_PKTINFO  = 0x2000
-	SOF_TIMESTAMPING_OPT_TX_SWHW  = 0x4000
-
-	SOF_TIMESTAMPING_LAST = 0x4000
-	SOF_TIMESTAMPING_MASK = 0x7fff
-
-	SCM_TSTAMP_SND   = 0x0
-	SCM_TSTAMP_SCHED = 0x1
-	SCM_TSTAMP_ACK   = 0x2
-)
-
-type SockExtendedErr struct {
-	Errno  uint32
-	Origin uint8
-	Type   uint8
-	Code   uint8
-	Pad    uint8
-	Info   uint32
-	Data   uint32
-}
-
-type FanotifyEventMetadata struct {
-	Event_len    uint32
-	Vers         uint8
-	Reserved     uint8
-	Metadata_len uint16
-	Mask         uint64
-	Fd           int32
-	Pid          int32
-}
-
-type FanotifyResponse struct {
-	Fd       int32
-	Response uint32
-}
-
-const (
-	CRYPTO_MSG_BASE      = 0x10
-	CRYPTO_MSG_NEWALG    = 0x10
-	CRYPTO_MSG_DELALG    = 0x11
-	CRYPTO_MSG_UPDATEALG = 0x12
-	CRYPTO_MSG_GETALG    = 0x13
-	CRYPTO_MSG_DELRNG    = 0x14
-	CRYPTO_MSG_GETSTAT   = 0x15
-)
-
-const (
-	CRYPTOCFGA_UNSPEC           = 0x0
-	CRYPTOCFGA_PRIORITY_VAL     = 0x1
-	CRYPTOCFGA_REPORT_LARVAL    = 0x2
-	CRYPTOCFGA_REPORT_HASH      = 0x3
-	CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
-	CRYPTOCFGA_REPORT_AEAD      = 0x5
-	CRYPTOCFGA_REPORT_COMPRESS  = 0x6
-	CRYPTOCFGA_REPORT_RNG       = 0x7
-	CRYPTOCFGA_REPORT_CIPHER    = 0x8
-	CRYPTOCFGA_REPORT_AKCIPHER  = 0x9
-	CRYPTOCFGA_REPORT_KPP       = 0xa
-	CRYPTOCFGA_REPORT_ACOMP     = 0xb
-	CRYPTOCFGA_STAT_LARVAL      = 0xc
-	CRYPTOCFGA_STAT_HASH        = 0xd
-	CRYPTOCFGA_STAT_BLKCIPHER   = 0xe
-	CRYPTOCFGA_STAT_AEAD        = 0xf
-	CRYPTOCFGA_STAT_COMPRESS    = 0x10
-	CRYPTOCFGA_STAT_RNG         = 0x11
-	CRYPTOCFGA_STAT_CIPHER      = 0x12
-	CRYPTOCFGA_STAT_AKCIPHER    = 0x13
-	CRYPTOCFGA_STAT_KPP         = 0x14
-	CRYPTOCFGA_STAT_ACOMP       = 0x15
-)
-
 type CryptoUserAlg struct {
 	Name        [64]int8
 	Driver_name [64]int8
@@ -2365,218 +570,6 @@ type CryptoReportAcomp struct {
 	Type [64]int8
 }
 
-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_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_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_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_STACK_BUILD_ID_EMPTY            = 0x0
-	BPF_STACK_BUILD_ID_VALID            = 0x1
-	BPF_STACK_BUILD_ID_IP               = 0x2
-	BPF_ADJ_ROOM_NET                    = 0x0
-	BPF_HDR_START_MAC                   = 0x0
-	BPF_HDR_START_NET                   = 0x1
-	BPF_LWT_ENCAP_SEG6                  = 0x0
-	BPF_LWT_ENCAP_SEG6_INLINE           = 0x1
-	BPF_OK                              = 0x0
-	BPF_DROP                            = 0x2
-	BPF_REDIRECT                        = 0x7
-	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_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
-)
-
-const (
-	RTNLGRP_NONE          = 0x0
-	RTNLGRP_LINK          = 0x1
-	RTNLGRP_NOTIFY        = 0x2
-	RTNLGRP_NEIGH         = 0x3
-	RTNLGRP_TC            = 0x4
-	RTNLGRP_IPV4_IFADDR   = 0x5
-	RTNLGRP_IPV4_MROUTE   = 0x6
-	RTNLGRP_IPV4_ROUTE    = 0x7
-	RTNLGRP_IPV4_RULE     = 0x8
-	RTNLGRP_IPV6_IFADDR   = 0x9
-	RTNLGRP_IPV6_MROUTE   = 0xa
-	RTNLGRP_IPV6_ROUTE    = 0xb
-	RTNLGRP_IPV6_IFINFO   = 0xc
-	RTNLGRP_DECnet_IFADDR = 0xd
-	RTNLGRP_NOP2          = 0xe
-	RTNLGRP_DECnet_ROUTE  = 0xf
-	RTNLGRP_DECnet_RULE   = 0x10
-	RTNLGRP_NOP4          = 0x11
-	RTNLGRP_IPV6_PREFIX   = 0x12
-	RTNLGRP_IPV6_RULE     = 0x13
-	RTNLGRP_ND_USEROPT    = 0x14
-	RTNLGRP_PHONET_IFADDR = 0x15
-	RTNLGRP_PHONET_ROUTE  = 0x16
-	RTNLGRP_DCB           = 0x17
-	RTNLGRP_IPV4_NETCONF  = 0x18
-	RTNLGRP_IPV6_NETCONF  = 0x19
-	RTNLGRP_MDB           = 0x1a
-	RTNLGRP_MPLS_ROUTE    = 0x1b
-	RTNLGRP_NSID          = 0x1c
-	RTNLGRP_MPLS_NETCONF  = 0x1d
-	RTNLGRP_IPV4_MROUTE_R = 0x1e
-	RTNLGRP_IPV6_MROUTE_R = 0x1f
-	RTNLGRP_NEXTHOP       = 0x20
-)
-
-type CapUserHeader struct {
-	Version uint32
-	Pid     int32
-}
-
-type CapUserData struct {
-	Effective   uint32
-	Permitted   uint32
-	Inheritable uint32
-}
-
-const (
-	LINUX_CAPABILITY_VERSION_1 = 0x19980330
-	LINUX_CAPABILITY_VERSION_2 = 0x20071026
-	LINUX_CAPABILITY_VERSION_3 = 0x20080522
-)
-
-const (
-	LO_FLAGS_READ_ONLY = 0x1
-	LO_FLAGS_AUTOCLEAR = 0x4
-	LO_FLAGS_PARTSCAN  = 0x8
-	LO_FLAGS_DIRECT_IO = 0x10
-)
-
 type LoopInfo struct {
 	Number           int32
 	Device           uint32
@@ -2592,38 +585,6 @@ type LoopInfo struct {
 	Reserved         [4]int8
 	_                [4]byte
 }
-type LoopInfo64 struct {
-	Device           uint64
-	Inode            uint64
-	Rdevice          uint64
-	Offset           uint64
-	Sizelimit        uint64
-	Number           uint32
-	Encrypt_type     uint32
-	Encrypt_key_size uint32
-	Flags            uint32
-	File_name        [64]uint8
-	Crypt_name       [64]uint8
-	Encrypt_key      [32]uint8
-	Init             [2]uint64
-}
-
-type TIPCSocketAddr struct {
-	Ref  uint32
-	Node uint32
-}
-
-type TIPCServiceRange struct {
-	Type  uint32
-	Lower uint32
-	Upper uint32
-}
-
-type TIPCServiceName struct {
-	Type     uint32
-	Instance uint32
-	Domain   uint32
-}
 
 type TIPCSubscr struct {
 	Seq     TIPCServiceRange
@@ -2632,21 +593,6 @@ type TIPCSubscr struct {
 	Handle  [8]int8
 }
 
-type TIPCEvent struct {
-	Event uint32
-	Lower uint32
-	Upper uint32
-	Port  TIPCSocketAddr
-	S     TIPCSubscr
-}
-
-type TIPCGroupReq struct {
-	Type     uint32
-	Instance uint32
-	Scope    uint32
-	Flags    uint32
-}
-
 type TIPCSIOCLNReq struct {
 	Peer     uint32
 	Id       uint32
@@ -2658,150 +604,18 @@ type TIPCSIOCNodeIDReq struct {
 	Id   [16]int8
 }
 
-const (
-	TIPC_CLUSTER_SCOPE = 0x2
-	TIPC_NODE_SCOPE    = 0x3
-)
-
-const (
-	SYSLOG_ACTION_CLOSE         = 0
-	SYSLOG_ACTION_OPEN          = 1
-	SYSLOG_ACTION_READ          = 2
-	SYSLOG_ACTION_READ_ALL      = 3
-	SYSLOG_ACTION_READ_CLEAR    = 4
-	SYSLOG_ACTION_CLEAR         = 5
-	SYSLOG_ACTION_CONSOLE_OFF   = 6
-	SYSLOG_ACTION_CONSOLE_ON    = 7
-	SYSLOG_ACTION_CONSOLE_LEVEL = 8
-	SYSLOG_ACTION_SIZE_UNREAD   = 9
-	SYSLOG_ACTION_SIZE_BUFFER   = 10
-)
+type PPSKInfo struct {
+	Assert_sequence uint32
+	Clear_sequence  uint32
+	Assert_tu       PPSKTime
+	Clear_tu        PPSKTime
+	Current_mode    int32
+	_               [4]byte
+}
 
 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
+	PPS_GETPARAMS = 0x400870a1
+	PPS_SETPARAMS = 0x800870a2
+	PPS_GETCAP    = 0x400870a3
+	PPS_FETCH     = 0xc00870a4
 )
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..3f11f88 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
@@ -248,6 +248,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
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..0bed83a 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
@@ -255,6 +255,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
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..e4e3bf7 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
@@ -253,6 +253,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
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..efac861 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
@@ -255,6 +255,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x14
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
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..80fa295 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
@@ -231,6 +231,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
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..560dd6d 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
@@ -235,6 +235,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
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..0c1700f 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
@@ -235,6 +235,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x8
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x1c
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..5b3e466 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
@@ -231,6 +231,7 @@ const (
 	SizeofSockaddrUnix     = 0x6a
 	SizeofSockaddrDatalink = 0x20
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
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..62bff16
--- /dev/null
+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go
@@ -0,0 +1,566 @@
+// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go
+// Code generated by the command above; see README.md. DO NOT EDIT.
+
+// +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]int8
+	F_mntonname   [90]int8
+	F_mntfromname [90]int8
+	F_mntfromspec [90]int8
+	_             [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_SYMLINK_FOLLOW   = 0x4
+	AT_SYMLINK_NOFOLLOW = 0x2
+)
+
+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 = 0x14
+
+type Clockinfo struct {
+	Hz      int32
+	Tick    int32
+	Tickadj 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..ca512af 100644
--- a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
+++ b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
@@ -88,7 +88,6 @@ type Stat_t struct {
 	Mtim    Timespec
 	Ctim    Timespec
 	Blksize int32
-	_       [4]byte
 	Blocks  int64
 	Fstype  [16]int8
 }
@@ -96,7 +95,6 @@ type Stat_t struct {
 type Flock_t struct {
 	Type   int16
 	Whence int16
-	_      [4]byte
 	Start  int64
 	Len    int64
 	Sysid  int32
@@ -138,12 +136,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 {
@@ -196,10 +194,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 +224,7 @@ type IPv6MTUInfo struct {
 }
 
 type ICMPv6Filter struct {
-	X__icmp6_filt [8]uint32
+	Filt [8]uint32
 }
 
 const (
@@ -238,6 +234,7 @@ const (
 	SizeofSockaddrUnix     = 0x6e
 	SizeofSockaddrDatalink = 0xfc
 	SizeofLinger           = 0x8
+	SizeofIovec            = 0x10
 	SizeofIPMreq           = 0x8
 	SizeofIPv6Mreq         = 0x14
 	SizeofMsghdr           = 0x30
@@ -291,7 +288,6 @@ type IfMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Data    IfData
 }
 
@@ -299,7 +295,6 @@ type IfData struct {
 	Type       uint8
 	Addrlen    uint8
 	Hdrlen     uint8
-	_          [1]byte
 	Mtu        uint32
 	Metric     uint32
 	Baudrate   uint32
@@ -324,7 +319,6 @@ type IfaMsghdr struct {
 	Addrs   int32
 	Flags   int32
 	Index   uint16
-	_       [2]byte
 	Metric  int32
 }
 
@@ -333,7 +327,6 @@ type RtMsghdr struct {
 	Version uint8
 	Type    uint8
 	Index   uint16
-	_       [2]byte
 	Flags   int32
 	Addrs   int32
 	Pid     int32
@@ -371,15 +364,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
 }
 
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/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/memory_windows.go b/vendor/golang.org/x/sys/windows/memory_windows.go
index f80a420..1adb607 100644
--- a/vendor/golang.org/x/sys/windows/memory_windows.go
+++ b/vendor/golang.org/x/sys/windows/memory_windows.go
@@ -16,11 +16,22 @@ 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
 )
diff --git a/vendor/golang.org/x/sys/windows/security_windows.go b/vendor/golang.org/x/sys/windows/security_windows.go
index 4b6eff1..69eb462 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
@@ -1101,9 +1114,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 +1243,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 +1321,17 @@ 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())
+
+	var src []byte
+	h := (*unsafeheader.Slice)(unsafe.Pointer(&src))
+	h.Data = unsafe.Pointer(selfRelativeSD)
+	h.Len = sdLen
+	h.Cap = sdLen
+
+	dst := make([]byte, sdLen)
+	copy(dst, src)
+	return (*SECURITY_DESCRIPTOR)(unsafe.Pointer(&dst[0]))
 }
 
 // SecurityDescriptorFromString converts an SDDL string describing a security descriptor into a
@@ -1391,6 +1413,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..b269850 100644
--- a/vendor/golang.org/x/sys/windows/service.go
+++ b/vendor/golang.org/x/sys/windows/service.go
@@ -65,6 +65,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 +81,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 +128,10 @@ 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
 )
 
 type SERVICE_STATUS struct {
@@ -227,3 +233,5 @@ 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?
diff --git a/vendor/golang.org/x/sys/windows/setupapierrors_windows.go b/vendor/golang.org/x/sys/windows/setupapierrors_windows.go
new file mode 100644
index 0000000..1681810
--- /dev/null
+++ b/vendor/golang.org/x/sys/windows/setupapierrors_windows.go
@@ -0,0 +1,100 @@
+// 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 windows
+
+import "syscall"
+
+const (
+	ERROR_EXPECTED_SECTION_NAME                  syscall.Errno = 0x20000000 | 0xC0000000 | 0
+	ERROR_BAD_SECTION_NAME_LINE                  syscall.Errno = 0x20000000 | 0xC0000000 | 1
+	ERROR_SECTION_NAME_TOO_LONG                  syscall.Errno = 0x20000000 | 0xC0000000 | 2
+	ERROR_GENERAL_SYNTAX                         syscall.Errno = 0x20000000 | 0xC0000000 | 3
+	ERROR_WRONG_INF_STYLE                        syscall.Errno = 0x20000000 | 0xC0000000 | 0x100
+	ERROR_SECTION_NOT_FOUND                      syscall.Errno = 0x20000000 | 0xC0000000 | 0x101
+	ERROR_LINE_NOT_FOUND                         syscall.Errno = 0x20000000 | 0xC0000000 | 0x102
+	ERROR_NO_BACKUP                              syscall.Errno = 0x20000000 | 0xC0000000 | 0x103
+	ERROR_NO_ASSOCIATED_CLASS                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x200
+	ERROR_CLASS_MISMATCH                         syscall.Errno = 0x20000000 | 0xC0000000 | 0x201
+	ERROR_DUPLICATE_FOUND                        syscall.Errno = 0x20000000 | 0xC0000000 | 0x202
+	ERROR_NO_DRIVER_SELECTED                     syscall.Errno = 0x20000000 | 0xC0000000 | 0x203
+	ERROR_KEY_DOES_NOT_EXIST                     syscall.Errno = 0x20000000 | 0xC0000000 | 0x204
+	ERROR_INVALID_DEVINST_NAME                   syscall.Errno = 0x20000000 | 0xC0000000 | 0x205
+	ERROR_INVALID_CLASS                          syscall.Errno = 0x20000000 | 0xC0000000 | 0x206
+	ERROR_DEVINST_ALREADY_EXISTS                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x207
+	ERROR_DEVINFO_NOT_REGISTERED                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x208
+	ERROR_INVALID_REG_PROPERTY                   syscall.Errno = 0x20000000 | 0xC0000000 | 0x209
+	ERROR_NO_INF                                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x20A
+	ERROR_NO_SUCH_DEVINST                        syscall.Errno = 0x20000000 | 0xC0000000 | 0x20B
+	ERROR_CANT_LOAD_CLASS_ICON                   syscall.Errno = 0x20000000 | 0xC0000000 | 0x20C
+	ERROR_INVALID_CLASS_INSTALLER                syscall.Errno = 0x20000000 | 0xC0000000 | 0x20D
+	ERROR_DI_DO_DEFAULT                          syscall.Errno = 0x20000000 | 0xC0000000 | 0x20E
+	ERROR_DI_NOFILECOPY                          syscall.Errno = 0x20000000 | 0xC0000000 | 0x20F
+	ERROR_INVALID_HWPROFILE                      syscall.Errno = 0x20000000 | 0xC0000000 | 0x210
+	ERROR_NO_DEVICE_SELECTED                     syscall.Errno = 0x20000000 | 0xC0000000 | 0x211
+	ERROR_DEVINFO_LIST_LOCKED                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x212
+	ERROR_DEVINFO_DATA_LOCKED                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x213
+	ERROR_DI_BAD_PATH                            syscall.Errno = 0x20000000 | 0xC0000000 | 0x214
+	ERROR_NO_CLASSINSTALL_PARAMS                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x215
+	ERROR_FILEQUEUE_LOCKED                       syscall.Errno = 0x20000000 | 0xC0000000 | 0x216
+	ERROR_BAD_SERVICE_INSTALLSECT                syscall.Errno = 0x20000000 | 0xC0000000 | 0x217
+	ERROR_NO_CLASS_DRIVER_LIST                   syscall.Errno = 0x20000000 | 0xC0000000 | 0x218
+	ERROR_NO_ASSOCIATED_SERVICE                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x219
+	ERROR_NO_DEFAULT_DEVICE_INTERFACE            syscall.Errno = 0x20000000 | 0xC0000000 | 0x21A
+	ERROR_DEVICE_INTERFACE_ACTIVE                syscall.Errno = 0x20000000 | 0xC0000000 | 0x21B
+	ERROR_DEVICE_INTERFACE_REMOVED               syscall.Errno = 0x20000000 | 0xC0000000 | 0x21C
+	ERROR_BAD_INTERFACE_INSTALLSECT              syscall.Errno = 0x20000000 | 0xC0000000 | 0x21D
+	ERROR_NO_SUCH_INTERFACE_CLASS                syscall.Errno = 0x20000000 | 0xC0000000 | 0x21E
+	ERROR_INVALID_REFERENCE_STRING               syscall.Errno = 0x20000000 | 0xC0000000 | 0x21F
+	ERROR_INVALID_MACHINENAME                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x220
+	ERROR_REMOTE_COMM_FAILURE                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x221
+	ERROR_MACHINE_UNAVAILABLE                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x222
+	ERROR_NO_CONFIGMGR_SERVICES                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x223
+	ERROR_INVALID_PROPPAGE_PROVIDER              syscall.Errno = 0x20000000 | 0xC0000000 | 0x224
+	ERROR_NO_SUCH_DEVICE_INTERFACE               syscall.Errno = 0x20000000 | 0xC0000000 | 0x225
+	ERROR_DI_POSTPROCESSING_REQUIRED             syscall.Errno = 0x20000000 | 0xC0000000 | 0x226
+	ERROR_INVALID_COINSTALLER                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x227
+	ERROR_NO_COMPAT_DRIVERS                      syscall.Errno = 0x20000000 | 0xC0000000 | 0x228
+	ERROR_NO_DEVICE_ICON                         syscall.Errno = 0x20000000 | 0xC0000000 | 0x229
+	ERROR_INVALID_INF_LOGCONFIG                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x22A
+	ERROR_DI_DONT_INSTALL                        syscall.Errno = 0x20000000 | 0xC0000000 | 0x22B
+	ERROR_INVALID_FILTER_DRIVER                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x22C
+	ERROR_NON_WINDOWS_NT_DRIVER                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x22D
+	ERROR_NON_WINDOWS_DRIVER                     syscall.Errno = 0x20000000 | 0xC0000000 | 0x22E
+	ERROR_NO_CATALOG_FOR_OEM_INF                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x22F
+	ERROR_DEVINSTALL_QUEUE_NONNATIVE             syscall.Errno = 0x20000000 | 0xC0000000 | 0x230
+	ERROR_NOT_DISABLEABLE                        syscall.Errno = 0x20000000 | 0xC0000000 | 0x231
+	ERROR_CANT_REMOVE_DEVINST                    syscall.Errno = 0x20000000 | 0xC0000000 | 0x232
+	ERROR_INVALID_TARGET                         syscall.Errno = 0x20000000 | 0xC0000000 | 0x233
+	ERROR_DRIVER_NONNATIVE                       syscall.Errno = 0x20000000 | 0xC0000000 | 0x234
+	ERROR_IN_WOW64                               syscall.Errno = 0x20000000 | 0xC0000000 | 0x235
+	ERROR_SET_SYSTEM_RESTORE_POINT               syscall.Errno = 0x20000000 | 0xC0000000 | 0x236
+	ERROR_SCE_DISABLED                           syscall.Errno = 0x20000000 | 0xC0000000 | 0x238
+	ERROR_UNKNOWN_EXCEPTION                      syscall.Errno = 0x20000000 | 0xC0000000 | 0x239
+	ERROR_PNP_REGISTRY_ERROR                     syscall.Errno = 0x20000000 | 0xC0000000 | 0x23A
+	ERROR_REMOTE_REQUEST_UNSUPPORTED             syscall.Errno = 0x20000000 | 0xC0000000 | 0x23B
+	ERROR_NOT_AN_INSTALLED_OEM_INF               syscall.Errno = 0x20000000 | 0xC0000000 | 0x23C
+	ERROR_INF_IN_USE_BY_DEVICES                  syscall.Errno = 0x20000000 | 0xC0000000 | 0x23D
+	ERROR_DI_FUNCTION_OBSOLETE                   syscall.Errno = 0x20000000 | 0xC0000000 | 0x23E
+	ERROR_NO_AUTHENTICODE_CATALOG                syscall.Errno = 0x20000000 | 0xC0000000 | 0x23F
+	ERROR_AUTHENTICODE_DISALLOWED                syscall.Errno = 0x20000000 | 0xC0000000 | 0x240
+	ERROR_AUTHENTICODE_TRUSTED_PUBLISHER         syscall.Errno = 0x20000000 | 0xC0000000 | 0x241
+	ERROR_AUTHENTICODE_TRUST_NOT_ESTABLISHED     syscall.Errno = 0x20000000 | 0xC0000000 | 0x242
+	ERROR_AUTHENTICODE_PUBLISHER_NOT_TRUSTED     syscall.Errno = 0x20000000 | 0xC0000000 | 0x243
+	ERROR_SIGNATURE_OSATTRIBUTE_MISMATCH         syscall.Errno = 0x20000000 | 0xC0000000 | 0x244
+	ERROR_ONLY_VALIDATE_VIA_AUTHENTICODE         syscall.Errno = 0x20000000 | 0xC0000000 | 0x245
+	ERROR_DEVICE_INSTALLER_NOT_READY             syscall.Errno = 0x20000000 | 0xC0000000 | 0x246
+	ERROR_DRIVER_STORE_ADD_FAILED                syscall.Errno = 0x20000000 | 0xC0000000 | 0x247
+	ERROR_DEVICE_INSTALL_BLOCKED                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x248
+	ERROR_DRIVER_INSTALL_BLOCKED                 syscall.Errno = 0x20000000 | 0xC0000000 | 0x249
+	ERROR_WRONG_INF_TYPE                         syscall.Errno = 0x20000000 | 0xC0000000 | 0x24A
+	ERROR_FILE_HASH_NOT_IN_CATALOG               syscall.Errno = 0x20000000 | 0xC0000000 | 0x24B
+	ERROR_DRIVER_STORE_DELETE_FAILED             syscall.Errno = 0x20000000 | 0xC0000000 | 0x24C
+	ERROR_UNRECOVERABLE_STACK_OVERFLOW           syscall.Errno = 0x20000000 | 0xC0000000 | 0x300
+	EXCEPTION_SPAPI_UNRECOVERABLE_STACK_OVERFLOW syscall.Errno = ERROR_UNRECOVERABLE_STACK_OVERFLOW
+	ERROR_NO_DEFAULT_INTERFACE_DEVICE            syscall.Errno = ERROR_NO_DEFAULT_DEVICE_INTERFACE
+	ERROR_INTERFACE_DEVICE_ACTIVE                syscall.Errno = ERROR_DEVICE_INTERFACE_ACTIVE
+	ERROR_INTERFACE_DEVICE_REMOVED               syscall.Errno = ERROR_DEVICE_INTERFACE_REMOVED
+	ERROR_NO_SUCH_INTERFACE_DEVICE               syscall.Errno = ERROR_NO_SUCH_DEVICE_INTERFACE
+)
diff --git a/vendor/golang.org/x/sys/windows/syscall.go b/vendor/golang.org/x/sys/windows/syscall.go
index af828a9..6122f55 100644
--- a/vendor/golang.org/x/sys/windows/syscall.go
+++ b/vendor/golang.org/x/sys/windows/syscall.go
@@ -25,17 +25,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 +56,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..0197df8 100644
--- a/vendor/golang.org/x/sys/windows/syscall_windows.go
+++ b/vendor/golang.org/x/sys/windows/syscall_windows.go
@@ -13,12 +13,16 @@ import (
 	"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
@@ -90,11 +94,11 @@ func UTF16FromString(s string) ([]uint16, error) {
 }
 
 // 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,10 +172,13 @@ 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)
@@ -159,6 +192,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
@@ -182,6 +216,10 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //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	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)
@@ -215,6 +253,7 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //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	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) = kernel32.CreateFileMappingW
 //sys	MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error)
 //sys	UnmapViewOfFile(addr uintptr) (err error)
@@ -226,25 +265,41 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys	VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) = kernel32.VirtualProtect
 //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	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
@@ -275,11 +330,14 @@ 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	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)
 
 // Volume Management Functions
 //sys	DefineDosDevice(flags uint32, deviceName *uint16, targetPath *uint16) (err error) = DefineDosDeviceW
@@ -302,8 +360,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
@@ -357,11 +413,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
 }
@@ -1058,11 +1110,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 +1122,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 +1225,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 +1427,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 +1501,7 @@ 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))))
+}
diff --git a/vendor/golang.org/x/sys/windows/types_windows.go b/vendor/golang.org/x/sys/windows/types_windows.go
index 809fff0..fd42607 100644
--- a/vendor/golang.org/x/sys/windows/types_windows.go
+++ b/vendor/golang.org/x/sys/windows/types_windows.go
@@ -227,7 +227,7 @@ const (
 )
 
 const (
-	// filters for ReadDirectoryChangesW
+	// filters for ReadDirectoryChangesW and FindFirstChangeNotificationW
 	FILE_NOTIFY_CHANGE_FILE_NAME   = 0x001
 	FILE_NOTIFY_CHANGE_DIR_NAME    = 0x002
 	FILE_NOTIFY_CHANGE_ATTRIBUTES  = 0x004
@@ -249,24 +249,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 +277,17 @@ 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
+
+	/* Default usage match type is AND with value zero */
 	USAGE_MATCH_TYPE_AND = 0
 	USAGE_MATCH_TYPE_OR  = 1
 
@@ -409,6 +423,71 @@ const (
 	CERT_CHAIN_POLICY_EV                = 8
 	CERT_CHAIN_POLICY_SSL_F12           = 9
 
+	/* Certificate Store close flags */
+	CERT_CLOSE_STORE_FORCE_FLAG = 0x00000001
+	CERT_CLOSE_STORE_CHECK_FLAG = 0x00000002
+
+	/* CryptQueryObject object type */
+	CERT_QUERY_OBJECT_FILE = 1
+	CERT_QUERY_OBJECT_BLOB = 2
+
+	/* CryptQueryObject content type flags */
+	CERT_QUERY_CONTENT_CERT                    = 1
+	CERT_QUERY_CONTENT_CTL                     = 2
+	CERT_QUERY_CONTENT_CRL                     = 3
+	CERT_QUERY_CONTENT_SERIALIZED_STORE        = 4
+	CERT_QUERY_CONTENT_SERIALIZED_CERT         = 5
+	CERT_QUERY_CONTENT_SERIALIZED_CTL          = 6
+	CERT_QUERY_CONTENT_SERIALIZED_CRL          = 7
+	CERT_QUERY_CONTENT_PKCS7_SIGNED            = 8
+	CERT_QUERY_CONTENT_PKCS7_UNSIGNED          = 9
+	CERT_QUERY_CONTENT_PKCS7_SIGNED_EMBED      = 10
+	CERT_QUERY_CONTENT_PKCS10                  = 11
+	CERT_QUERY_CONTENT_PFX                     = 12
+	CERT_QUERY_CONTENT_CERT_PAIR               = 13
+	CERT_QUERY_CONTENT_PFX_AND_LOAD            = 14
+	CERT_QUERY_CONTENT_FLAG_CERT               = (1 << CERT_QUERY_CONTENT_CERT)
+	CERT_QUERY_CONTENT_FLAG_CTL                = (1 << CERT_QUERY_CONTENT_CTL)
+	CERT_QUERY_CONTENT_FLAG_CRL                = (1 << CERT_QUERY_CONTENT_CRL)
+	CERT_QUERY_CONTENT_FLAG_SERIALIZED_STORE   = (1 << CERT_QUERY_CONTENT_SERIALIZED_STORE)
+	CERT_QUERY_CONTENT_FLAG_SERIALIZED_CERT    = (1 << CERT_QUERY_CONTENT_SERIALIZED_CERT)
+	CERT_QUERY_CONTENT_FLAG_SERIALIZED_CTL     = (1 << CERT_QUERY_CONTENT_SERIALIZED_CTL)
+	CERT_QUERY_CONTENT_FLAG_SERIALIZED_CRL     = (1 << CERT_QUERY_CONTENT_SERIALIZED_CRL)
+	CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED       = (1 << CERT_QUERY_CONTENT_PKCS7_SIGNED)
+	CERT_QUERY_CONTENT_FLAG_PKCS7_UNSIGNED     = (1 << CERT_QUERY_CONTENT_PKCS7_UNSIGNED)
+	CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED_EMBED = (1 << CERT_QUERY_CONTENT_PKCS7_SIGNED_EMBED)
+	CERT_QUERY_CONTENT_FLAG_PKCS10             = (1 << CERT_QUERY_CONTENT_PKCS10)
+	CERT_QUERY_CONTENT_FLAG_PFX                = (1 << CERT_QUERY_CONTENT_PFX)
+	CERT_QUERY_CONTENT_FLAG_CERT_PAIR          = (1 << CERT_QUERY_CONTENT_CERT_PAIR)
+	CERT_QUERY_CONTENT_FLAG_PFX_AND_LOAD       = (1 << CERT_QUERY_CONTENT_PFX_AND_LOAD)
+	CERT_QUERY_CONTENT_FLAG_ALL                = (CERT_QUERY_CONTENT_FLAG_CERT | CERT_QUERY_CONTENT_FLAG_CTL | CERT_QUERY_CONTENT_FLAG_CRL | CERT_QUERY_CONTENT_FLAG_SERIALIZED_STORE | CERT_QUERY_CONTENT_FLAG_SERIALIZED_CERT | CERT_QUERY_CONTENT_FLAG_SERIALIZED_CTL | CERT_QUERY_CONTENT_FLAG_SERIALIZED_CRL | CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED | CERT_QUERY_CONTENT_FLAG_PKCS7_UNSIGNED | CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED_EMBED | CERT_QUERY_CONTENT_FLAG_PKCS10 | CERT_QUERY_CONTENT_FLAG_PFX | CERT_QUERY_CONTENT_FLAG_CERT_PAIR)
+	CERT_QUERY_CONTENT_FLAG_ALL_ISSUER_CERT    = (CERT_QUERY_CONTENT_FLAG_CERT | CERT_QUERY_CONTENT_FLAG_SERIALIZED_STORE | CERT_QUERY_CONTENT_FLAG_SERIALIZED_CERT | CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED | CERT_QUERY_CONTENT_FLAG_PKCS7_UNSIGNED)
+
+	/* CryptQueryObject format type flags */
+	CERT_QUERY_FORMAT_BINARY                     = 1
+	CERT_QUERY_FORMAT_BASE64_ENCODED             = 2
+	CERT_QUERY_FORMAT_ASN_ASCII_HEX_ENCODED      = 3
+	CERT_QUERY_FORMAT_FLAG_BINARY                = (1 << CERT_QUERY_FORMAT_BINARY)
+	CERT_QUERY_FORMAT_FLAG_BASE64_ENCODED        = (1 << CERT_QUERY_FORMAT_BASE64_ENCODED)
+	CERT_QUERY_FORMAT_FLAG_ASN_ASCII_HEX_ENCODED = (1 << CERT_QUERY_FORMAT_ASN_ASCII_HEX_ENCODED)
+	CERT_QUERY_FORMAT_FLAG_ALL                   = (CERT_QUERY_FORMAT_FLAG_BINARY | CERT_QUERY_FORMAT_FLAG_BASE64_ENCODED | CERT_QUERY_FORMAT_FLAG_ASN_ASCII_HEX_ENCODED)
+
+	/* CertGetNameString name types */
+	CERT_NAME_EMAIL_TYPE            = 1
+	CERT_NAME_RDN_TYPE              = 2
+	CERT_NAME_ATTR_TYPE             = 3
+	CERT_NAME_SIMPLE_DISPLAY_TYPE   = 4
+	CERT_NAME_FRIENDLY_DISPLAY_TYPE = 5
+	CERT_NAME_DNS_TYPE              = 6
+	CERT_NAME_URL_TYPE              = 7
+	CERT_NAME_UPN_TYPE              = 8
+
+	/* CertGetNameString flags */
+	CERT_NAME_ISSUER_FLAG              = 0x1
+	CERT_NAME_DISABLE_IE4_UTF8_FLAG    = 0x10000
+	CERT_NAME_SEARCH_ALL_NAMES_FLAG    = 0x2
+	CERT_NAME_STR_ENABLE_PUNYCODE_FLAG = 0x00200000
+
 	/* AuthType values for SSLExtraCertChainPolicyPara struct */
 	AUTHTYPE_CLIENT = 1
 	AUTHTYPE_SERVER = 2
@@ -419,6 +498,22 @@ const (
 	SECURITY_FLAG_IGNORE_WRONG_USAGE       = 0x00000200
 	SECURITY_FLAG_IGNORE_CERT_CN_INVALID   = 0x00001000
 	SECURITY_FLAG_IGNORE_CERT_DATE_INVALID = 0x00002000
+
+	/* Flags for Crypt[Un]ProtectData */
+	CRYPTPROTECT_UI_FORBIDDEN      = 0x1
+	CRYPTPROTECT_LOCAL_MACHINE     = 0x4
+	CRYPTPROTECT_CRED_SYNC         = 0x8
+	CRYPTPROTECT_AUDIT             = 0x10
+	CRYPTPROTECT_NO_RECOVERY       = 0x20
+	CRYPTPROTECT_VERIFY_PROTECTION = 0x40
+	CRYPTPROTECT_CRED_REGENERATE   = 0x80
+
+	/* Flags for CryptProtectPromptStruct */
+	CRYPTPROTECT_PROMPT_ON_UNPROTECT   = 1
+	CRYPTPROTECT_PROMPT_ON_PROTECT     = 2
+	CRYPTPROTECT_PROMPT_RESERVED       = 4
+	CRYPTPROTECT_PROMPT_STRONG         = 8
+	CRYPTPROTECT_PROMPT_REQUIRE_STRONG = 16
 )
 
 const (
@@ -441,10 +536,58 @@ const (
 	REALTIME_PRIORITY_CLASS       = 0x00000100
 )
 
+/* wintrust.h constants for WinVerifyTrustEx */
+const (
+	WTD_UI_ALL    = 1
+	WTD_UI_NONE   = 2
+	WTD_UI_NOBAD  = 3
+	WTD_UI_NOGOOD = 4
+
+	WTD_REVOKE_NONE       = 0
+	WTD_REVOKE_WHOLECHAIN = 1
+
+	WTD_CHOICE_FILE    = 1
+	WTD_CHOICE_CATALOG = 2
+	WTD_CHOICE_BLOB    = 3
+	WTD_CHOICE_SIGNER  = 4
+	WTD_CHOICE_CERT    = 5
+
+	WTD_STATEACTION_IGNORE           = 0x00000000
+	WTD_STATEACTION_VERIFY           = 0x00000010
+	WTD_STATEACTION_CLOSE            = 0x00000002
+	WTD_STATEACTION_AUTO_CACHE       = 0x00000003
+	WTD_STATEACTION_AUTO_CACHE_FLUSH = 0x00000004
+
+	WTD_USE_IE4_TRUST_FLAG                  = 0x1
+	WTD_NO_IE4_CHAIN_FLAG                   = 0x2
+	WTD_NO_POLICY_USAGE_FLAG                = 0x4
+	WTD_REVOCATION_CHECK_NONE               = 0x10
+	WTD_REVOCATION_CHECK_END_CERT           = 0x20
+	WTD_REVOCATION_CHECK_CHAIN              = 0x40
+	WTD_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT = 0x80
+	WTD_SAFER_FLAG                          = 0x100
+	WTD_HASH_ONLY_FLAG                      = 0x200
+	WTD_USE_DEFAULT_OSVER_CHECK             = 0x400
+	WTD_LIFETIME_SIGNING_FLAG               = 0x800
+	WTD_CACHE_ONLY_URL_RETRIEVAL            = 0x1000
+	WTD_DISABLE_MD2_MD4                     = 0x2000
+	WTD_MOTW                                = 0x4000
+
+	WTD_UICONTEXT_EXECUTE = 0
+	WTD_UICONTEXT_INSTALL = 1
+)
+
 var (
 	OID_PKIX_KP_SERVER_AUTH = []byte("1.3.6.1.5.5.7.3.1\x00")
 	OID_SERVER_GATED_CRYPTO = []byte("1.3.6.1.4.1.311.10.3.3\x00")
 	OID_SGC_NETSCAPE        = []byte("2.16.840.1.113730.4.1\x00")
+
+	WINTRUST_ACTION_GENERIC_VERIFY_V2 = GUID{
+		Data1: 0xaac56b,
+		Data2: 0xcd44,
+		Data3: 0x11d0,
+		Data4: [8]byte{0x8c, 0xc2, 0x0, 0xc0, 0x4f, 0xc2, 0x95, 0xee},
+	}
 )
 
 // Pointer represents a pointer to an arbitrary Windows type.
@@ -1033,7 +1176,57 @@ type MibIfRow struct {
 }
 
 type CertInfo struct {
-	// Not implemented
+	Version              uint32
+	SerialNumber         CryptIntegerBlob
+	SignatureAlgorithm   CryptAlgorithmIdentifier
+	Issuer               CertNameBlob
+	NotBefore            Filetime
+	NotAfter             Filetime
+	Subject              CertNameBlob
+	SubjectPublicKeyInfo CertPublicKeyInfo
+	IssuerUniqueId       CryptBitBlob
+	SubjectUniqueId      CryptBitBlob
+	CountExtensions      uint32
+	Extensions           *CertExtension
+}
+
+type CertExtension struct {
+	ObjId    *byte
+	Critical int32
+	Value    CryptObjidBlob
+}
+
+type CryptAlgorithmIdentifier struct {
+	ObjId      *byte
+	Parameters CryptObjidBlob
+}
+
+type CertPublicKeyInfo struct {
+	Algorithm CryptAlgorithmIdentifier
+	PublicKey CryptBitBlob
+}
+
+type DataBlob struct {
+	Size uint32
+	Data *byte
+}
+type CryptIntegerBlob DataBlob
+type CryptUintBlob DataBlob
+type CryptObjidBlob DataBlob
+type CertNameBlob DataBlob
+type CertRdnValueBlob DataBlob
+type CertBlob DataBlob
+type CrlBlob DataBlob
+type CryptDataBlob DataBlob
+type CryptHashBlob DataBlob
+type CryptDigestBlob DataBlob
+type CryptDerBlob DataBlob
+type CryptAttrBlob DataBlob
+
+type CryptBitBlob struct {
+	Size       uint32
+	Data       *byte
+	UnusedBits uint32
 }
 
 type CertContext struct {
@@ -1139,6 +1332,66 @@ type CertChainPolicyStatus struct {
 	ExtraPolicyStatus Pointer
 }
 
+type CertPolicyInfo struct {
+	Identifier      *byte
+	CountQualifiers uint32
+	Qualifiers      *CertPolicyQualifierInfo
+}
+
+type CertPoliciesInfo struct {
+	Count       uint32
+	PolicyInfos *CertPolicyInfo
+}
+
+type CertPolicyQualifierInfo struct {
+	// Not implemented
+}
+
+type CertStrongSignPara struct {
+	Size                      uint32
+	InfoChoice                uint32
+	InfoOrSerializedInfoOrOID unsafe.Pointer
+}
+
+type CryptProtectPromptStruct struct {
+	Size        uint32
+	PromptFlags uint32
+	App         HWND
+	Prompt      *uint16
+}
+
+type WinTrustData struct {
+	Size                            uint32
+	PolicyCallbackData              uintptr
+	SIPClientData                   uintptr
+	UIChoice                        uint32
+	RevocationChecks                uint32
+	UnionChoice                     uint32
+	FileOrCatalogOrBlobOrSgnrOrCert unsafe.Pointer
+	StateAction                     uint32
+	StateData                       Handle
+	URLReference                    *uint16
+	ProvFlags                       uint32
+	UIContext                       uint32
+	SignatureSettings               *WinTrustSignatureSettings
+}
+
+type WinTrustFileInfo struct {
+	Size         uint32
+	FilePath     *uint16
+	File         Handle
+	KnownSubject *GUID
+}
+
+type WinTrustSignatureSettings struct {
+	Size             uint32
+	Index            uint32
+	Flags            uint32
+	SecondarySigs    uint32
+	VerifiedSigIndex uint32
+	CryptoPolicy     *CertStrongSignPara
+}
+
 const (
 	// do not reorder
 	HKEY_CLASSES_ROOT = 0x80000000 + iota
@@ -1584,18 +1837,6 @@ const (
 	JOB_OBJECT_LIMIT_WORKINGSET                 = 0x00000001
 )
 
-type JOBOBJECT_BASIC_LIMIT_INFORMATION struct {
-	PerProcessUserTimeLimit int64
-	PerJobUserTimeLimit     int64
-	LimitFlags              uint32
-	MinimumWorkingSetSize   uintptr
-	MaximumWorkingSetSize   uintptr
-	ActiveProcessLimit      uint32
-	Affinity                uintptr
-	PriorityClass           uint32
-	SchedulingClass         uint32
-}
-
 type IO_COUNTERS struct {
 	ReadOperationCount  uint64
 	WriteOperationCount uint64
@@ -1784,3 +2025,69 @@ const (
 	MUI_LANGUAGE_INSTALLED = 0x20
 	MUI_LANGUAGE_LICENSED  = 0x40
 )
+
+// FILE_INFO_BY_HANDLE_CLASS constants for SetFileInformationByHandle/GetFileInformationByHandleEx
+const (
+	FileBasicInfo                  = 0
+	FileStandardInfo               = 1
+	FileNameInfo                   = 2
+	FileRenameInfo                 = 3
+	FileDispositionInfo            = 4
+	FileAllocationInfo             = 5
+	FileEndOfFileInfo              = 6
+	FileStreamInfo                 = 7
+	FileCompressionInfo            = 8
+	FileAttributeTagInfo           = 9
+	FileIdBothDirectoryInfo        = 10
+	FileIdBothDirectoryRestartInfo = 11
+	FileIoPriorityHintInfo         = 12
+	FileRemoteProtocolInfo         = 13
+	FileFullDirectoryInfo          = 14
+	FileFullDirectoryRestartInfo   = 15
+	FileStorageInfo                = 16
+	FileAlignmentInfo              = 17
+	FileIdInfo                     = 18
+	FileIdExtdDirectoryInfo        = 19
+	FileIdExtdDirectoryRestartInfo = 20
+	FileDispositionInfoEx          = 21
+	FileRenameInfoEx               = 22
+	FileCaseSensitiveInfo          = 23
+	FileNormalizedNameInfo         = 24
+)
+
+// LoadLibrary flags for determining from where to search for a DLL
+const (
+	DONT_RESOLVE_DLL_REFERENCES               = 0x1
+	LOAD_LIBRARY_AS_DATAFILE                  = 0x2
+	LOAD_WITH_ALTERED_SEARCH_PATH             = 0x8
+	LOAD_IGNORE_CODE_AUTHZ_LEVEL              = 0x10
+	LOAD_LIBRARY_AS_IMAGE_RESOURCE            = 0x20
+	LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE        = 0x40
+	LOAD_LIBRARY_REQUIRE_SIGNED_TARGET        = 0x80
+	LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR          = 0x100
+	LOAD_LIBRARY_SEARCH_APPLICATION_DIR       = 0x200
+	LOAD_LIBRARY_SEARCH_USER_DIRS             = 0x400
+	LOAD_LIBRARY_SEARCH_SYSTEM32              = 0x800
+	LOAD_LIBRARY_SEARCH_DEFAULT_DIRS          = 0x1000
+	LOAD_LIBRARY_SAFE_CURRENT_DIRS            = 0x00002000
+	LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER = 0x00004000
+	LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY      = 0x00008000
+)
+
+// RegNotifyChangeKeyValue notifyFilter flags.
+const (
+	// REG_NOTIFY_CHANGE_NAME notifies the caller if a subkey is added or deleted.
+	REG_NOTIFY_CHANGE_NAME = 0x00000001
+
+	// REG_NOTIFY_CHANGE_ATTRIBUTES notifies the caller of changes to the attributes of the key, such as the security descriptor information.
+	REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002
+
+	// REG_NOTIFY_CHANGE_LAST_SET notifies the caller of changes to a value of the key. This can include adding or deleting a value, or changing an existing value.
+	REG_NOTIFY_CHANGE_LAST_SET = 0x00000004
+
+	// REG_NOTIFY_CHANGE_SECURITY notifies the caller of changes to the security descriptor of the key.
+	REG_NOTIFY_CHANGE_SECURITY = 0x00000008
+
+	// REG_NOTIFY_THREAD_AGNOSTIC indicates that the lifetime of the registration must not be tied to the lifetime of the thread issuing the RegNotifyChangeKeyValue call. Note: This flag value is only supported in Windows 8 and later.
+	REG_NOTIFY_THREAD_AGNOSTIC = 0x10000000
+)
diff --git a/vendor/golang.org/x/sys/windows/types_windows_386.go b/vendor/golang.org/x/sys/windows/types_windows_386.go
index fe0ddd0..8bce3e2 100644
--- a/vendor/golang.org/x/sys/windows/types_windows_386.go
+++ b/vendor/golang.org/x/sys/windows/types_windows_386.go
@@ -20,3 +20,16 @@ type Servent struct {
 	Port    uint16
 	Proto   *byte
 }
+
+type JOBOBJECT_BASIC_LIMIT_INFORMATION struct {
+	PerProcessUserTimeLimit int64
+	PerJobUserTimeLimit     int64
+	LimitFlags              uint32
+	MinimumWorkingSetSize   uintptr
+	MaximumWorkingSetSize   uintptr
+	ActiveProcessLimit      uint32
+	Affinity                uintptr
+	PriorityClass           uint32
+	SchedulingClass         uint32
+	_                       uint32 // pad to 8 byte boundary
+}
diff --git a/vendor/golang.org/x/sys/windows/types_windows_amd64.go b/vendor/golang.org/x/sys/windows/types_windows_amd64.go
index 7e154c2..fdddc0c 100644
--- a/vendor/golang.org/x/sys/windows/types_windows_amd64.go
+++ b/vendor/golang.org/x/sys/windows/types_windows_amd64.go
@@ -20,3 +20,15 @@ type Servent struct {
 	Proto   *byte
 	Port    uint16
 }
+
+type JOBOBJECT_BASIC_LIMIT_INFORMATION struct {
+	PerProcessUserTimeLimit int64
+	PerJobUserTimeLimit     int64
+	LimitFlags              uint32
+	MinimumWorkingSetSize   uintptr
+	MaximumWorkingSetSize   uintptr
+	ActiveProcessLimit      uint32
+	Affinity                uintptr
+	PriorityClass           uint32
+	SchedulingClass         uint32
+}
diff --git a/vendor/golang.org/x/sys/windows/types_windows_arm.go b/vendor/golang.org/x/sys/windows/types_windows_arm.go
index 74571e3..321872c 100644
--- a/vendor/golang.org/x/sys/windows/types_windows_arm.go
+++ b/vendor/golang.org/x/sys/windows/types_windows_arm.go
@@ -20,3 +20,16 @@ type Servent struct {
 	Port    uint16
 	Proto   *byte
 }
+
+type JOBOBJECT_BASIC_LIMIT_INFORMATION struct {
+	PerProcessUserTimeLimit int64
+	PerJobUserTimeLimit     int64
+	LimitFlags              uint32
+	MinimumWorkingSetSize   uintptr
+	MaximumWorkingSetSize   uintptr
+	ActiveProcessLimit      uint32
+	Affinity                uintptr
+	PriorityClass           uint32
+	SchedulingClass         uint32
+	_                       uint32 // pad to 8 byte boundary
+}
diff --git a/vendor/golang.org/x/sys/windows/zsyscall_windows.go b/vendor/golang.org/x/sys/windows/zsyscall_windows.go
index 2aa4fa6..c38c59d 100644
--- a/vendor/golang.org/x/sys/windows/zsyscall_windows.go
+++ b/vendor/golang.org/x/sys/windows/zsyscall_windows.go
@@ -17,6 +17,7 @@ const (
 
 var (
 	errERROR_IO_PENDING error = syscall.Errno(errnoERROR_IO_PENDING)
+	errERROR_EINVAL     error = syscall.EINVAL
 )
 
 // errnoErr returns common boxed Errno values, to prevent
@@ -24,7 +25,7 @@ var (
 func errnoErr(e syscall.Errno) error {
 	switch e {
 	case 0:
-		return nil
+		return errERROR_EINVAL
 	case errnoERROR_IO_PENDING:
 		return errERROR_IO_PENDING
 	}
@@ -36,384 +37,483 @@ func errnoErr(e syscall.Errno) error {
 
 var (
 	modadvapi32 = NewLazySystemDLL("advapi32.dll")
+	modcrypt32  = NewLazySystemDLL("crypt32.dll")
+	moddnsapi   = NewLazySystemDLL("dnsapi.dll")
+	modiphlpapi = NewLazySystemDLL("iphlpapi.dll")
 	modkernel32 = NewLazySystemDLL("kernel32.dll")
-	modshell32  = NewLazySystemDLL("shell32.dll")
-	moduserenv  = NewLazySystemDLL("userenv.dll")
 	modmswsock  = NewLazySystemDLL("mswsock.dll")
-	modcrypt32  = NewLazySystemDLL("crypt32.dll")
-	moduser32   = NewLazySystemDLL("user32.dll")
-	modole32    = NewLazySystemDLL("ole32.dll")
+	modnetapi32 = NewLazySystemDLL("netapi32.dll")
 	modntdll    = NewLazySystemDLL("ntdll.dll")
+	modole32    = NewLazySystemDLL("ole32.dll")
 	modpsapi    = NewLazySystemDLL("psapi.dll")
-	modws2_32   = NewLazySystemDLL("ws2_32.dll")
-	moddnsapi   = NewLazySystemDLL("dnsapi.dll")
-	modiphlpapi = NewLazySystemDLL("iphlpapi.dll")
+	modsechost  = NewLazySystemDLL("sechost.dll")
 	modsecur32  = NewLazySystemDLL("secur32.dll")
-	modnetapi32 = NewLazySystemDLL("netapi32.dll")
+	modshell32  = NewLazySystemDLL("shell32.dll")
+	moduser32   = NewLazySystemDLL("user32.dll")
+	moduserenv  = NewLazySystemDLL("userenv.dll")
+	modwintrust = NewLazySystemDLL("wintrust.dll")
+	modws2_32   = NewLazySystemDLL("ws2_32.dll")
 	modwtsapi32 = NewLazySystemDLL("wtsapi32.dll")
 
-	procRegisterEventSourceW                                 = modadvapi32.NewProc("RegisterEventSourceW")
-	procDeregisterEventSource                                = modadvapi32.NewProc("DeregisterEventSource")
-	procReportEventW                                         = modadvapi32.NewProc("ReportEventW")
-	procOpenSCManagerW                                       = modadvapi32.NewProc("OpenSCManagerW")
+	procAdjustTokenGroups                                    = modadvapi32.NewProc("AdjustTokenGroups")
+	procAdjustTokenPrivileges                                = modadvapi32.NewProc("AdjustTokenPrivileges")
+	procAllocateAndInitializeSid                             = modadvapi32.NewProc("AllocateAndInitializeSid")
+	procBuildSecurityDescriptorW                             = modadvapi32.NewProc("BuildSecurityDescriptorW")
+	procChangeServiceConfig2W                                = modadvapi32.NewProc("ChangeServiceConfig2W")
+	procChangeServiceConfigW                                 = modadvapi32.NewProc("ChangeServiceConfigW")
+	procCheckTokenMembership                                 = modadvapi32.NewProc("CheckTokenMembership")
 	procCloseServiceHandle                                   = modadvapi32.NewProc("CloseServiceHandle")
+	procControlService                                       = modadvapi32.NewProc("ControlService")
+	procConvertSecurityDescriptorToStringSecurityDescriptorW = modadvapi32.NewProc("ConvertSecurityDescriptorToStringSecurityDescriptorW")
+	procConvertSidToStringSidW                               = modadvapi32.NewProc("ConvertSidToStringSidW")
+	procConvertStringSecurityDescriptorToSecurityDescriptorW = modadvapi32.NewProc("ConvertStringSecurityDescriptorToSecurityDescriptorW")
+	procConvertStringSidToSidW                               = modadvapi32.NewProc("ConvertStringSidToSidW")
+	procCopySid                                              = modadvapi32.NewProc("CopySid")
 	procCreateServiceW                                       = modadvapi32.NewProc("CreateServiceW")
-	procOpenServiceW                                         = modadvapi32.NewProc("OpenServiceW")
+	procCreateWellKnownSid                                   = modadvapi32.NewProc("CreateWellKnownSid")
+	procCryptAcquireContextW                                 = modadvapi32.NewProc("CryptAcquireContextW")
+	procCryptGenRandom                                       = modadvapi32.NewProc("CryptGenRandom")
+	procCryptReleaseContext                                  = modadvapi32.NewProc("CryptReleaseContext")
 	procDeleteService                                        = modadvapi32.NewProc("DeleteService")
-	procStartServiceW                                        = modadvapi32.NewProc("StartServiceW")
-	procQueryServiceStatus                                   = modadvapi32.NewProc("QueryServiceStatus")
-	procQueryServiceLockStatusW                              = modadvapi32.NewProc("QueryServiceLockStatusW")
-	procControlService                                       = modadvapi32.NewProc("ControlService")
-	procStartServiceCtrlDispatcherW                          = modadvapi32.NewProc("StartServiceCtrlDispatcherW")
-	procSetServiceStatus                                     = modadvapi32.NewProc("SetServiceStatus")
-	procChangeServiceConfigW                                 = modadvapi32.NewProc("ChangeServiceConfigW")
-	procQueryServiceConfigW                                  = modadvapi32.NewProc("QueryServiceConfigW")
-	procChangeServiceConfig2W                                = modadvapi32.NewProc("ChangeServiceConfig2W")
-	procQueryServiceConfig2W                                 = modadvapi32.NewProc("QueryServiceConfig2W")
+	procDeregisterEventSource                                = modadvapi32.NewProc("DeregisterEventSource")
+	procDuplicateTokenEx                                     = modadvapi32.NewProc("DuplicateTokenEx")
 	procEnumServicesStatusExW                                = modadvapi32.NewProc("EnumServicesStatusExW")
-	procQueryServiceStatusEx                                 = modadvapi32.NewProc("QueryServiceStatusEx")
+	procEqualSid                                             = modadvapi32.NewProc("EqualSid")
+	procFreeSid                                              = modadvapi32.NewProc("FreeSid")
+	procGetLengthSid                                         = modadvapi32.NewProc("GetLengthSid")
+	procGetNamedSecurityInfoW                                = modadvapi32.NewProc("GetNamedSecurityInfoW")
+	procGetSecurityDescriptorControl                         = modadvapi32.NewProc("GetSecurityDescriptorControl")
+	procGetSecurityDescriptorDacl                            = modadvapi32.NewProc("GetSecurityDescriptorDacl")
+	procGetSecurityDescriptorGroup                           = modadvapi32.NewProc("GetSecurityDescriptorGroup")
+	procGetSecurityDescriptorLength                          = modadvapi32.NewProc("GetSecurityDescriptorLength")
+	procGetSecurityDescriptorOwner                           = modadvapi32.NewProc("GetSecurityDescriptorOwner")
+	procGetSecurityDescriptorRMControl                       = modadvapi32.NewProc("GetSecurityDescriptorRMControl")
+	procGetSecurityDescriptorSacl                            = modadvapi32.NewProc("GetSecurityDescriptorSacl")
+	procGetSecurityInfo                                      = modadvapi32.NewProc("GetSecurityInfo")
+	procGetSidIdentifierAuthority                            = modadvapi32.NewProc("GetSidIdentifierAuthority")
+	procGetSidSubAuthority                                   = modadvapi32.NewProc("GetSidSubAuthority")
+	procGetSidSubAuthorityCount                              = modadvapi32.NewProc("GetSidSubAuthorityCount")
+	procGetTokenInformation                                  = modadvapi32.NewProc("GetTokenInformation")
+	procImpersonateSelf                                      = modadvapi32.NewProc("ImpersonateSelf")
+	procInitializeSecurityDescriptor                         = modadvapi32.NewProc("InitializeSecurityDescriptor")
+	procInitiateSystemShutdownExW                            = modadvapi32.NewProc("InitiateSystemShutdownExW")
+	procIsTokenRestricted                                    = modadvapi32.NewProc("IsTokenRestricted")
+	procIsValidSecurityDescriptor                            = modadvapi32.NewProc("IsValidSecurityDescriptor")
+	procIsValidSid                                           = modadvapi32.NewProc("IsValidSid")
+	procIsWellKnownSid                                       = modadvapi32.NewProc("IsWellKnownSid")
+	procLookupAccountNameW                                   = modadvapi32.NewProc("LookupAccountNameW")
+	procLookupAccountSidW                                    = modadvapi32.NewProc("LookupAccountSidW")
+	procLookupPrivilegeValueW                                = modadvapi32.NewProc("LookupPrivilegeValueW")
+	procMakeAbsoluteSD                                       = modadvapi32.NewProc("MakeAbsoluteSD")
+	procMakeSelfRelativeSD                                   = modadvapi32.NewProc("MakeSelfRelativeSD")
 	procNotifyServiceStatusChangeW                           = modadvapi32.NewProc("NotifyServiceStatusChangeW")
-	procGetLastError                                         = modkernel32.NewProc("GetLastError")
-	procLoadLibraryW                                         = modkernel32.NewProc("LoadLibraryW")
-	procLoadLibraryExW                                       = modkernel32.NewProc("LoadLibraryExW")
-	procFreeLibrary                                          = modkernel32.NewProc("FreeLibrary")
-	procGetProcAddress                                       = modkernel32.NewProc("GetProcAddress")
-	procGetModuleFileNameW                                   = modkernel32.NewProc("GetModuleFileNameW")
-	procGetModuleHandleExW                                   = modkernel32.NewProc("GetModuleHandleExW")
-	procGetVersion                                           = modkernel32.NewProc("GetVersion")
-	procFormatMessageW                                       = modkernel32.NewProc("FormatMessageW")
-	procExitProcess                                          = modkernel32.NewProc("ExitProcess")
-	procIsWow64Process                                       = modkernel32.NewProc("IsWow64Process")
-	procCreateFileW                                          = modkernel32.NewProc("CreateFileW")
-	procReadFile                                             = modkernel32.NewProc("ReadFile")
-	procWriteFile                                            = modkernel32.NewProc("WriteFile")
-	procGetOverlappedResult                                  = modkernel32.NewProc("GetOverlappedResult")
-	procSetFilePointer                                       = modkernel32.NewProc("SetFilePointer")
+	procOpenProcessToken                                     = modadvapi32.NewProc("OpenProcessToken")
+	procOpenSCManagerW                                       = modadvapi32.NewProc("OpenSCManagerW")
+	procOpenServiceW                                         = modadvapi32.NewProc("OpenServiceW")
+	procOpenThreadToken                                      = modadvapi32.NewProc("OpenThreadToken")
+	procQueryServiceConfig2W                                 = modadvapi32.NewProc("QueryServiceConfig2W")
+	procQueryServiceConfigW                                  = modadvapi32.NewProc("QueryServiceConfigW")
+	procQueryServiceLockStatusW                              = modadvapi32.NewProc("QueryServiceLockStatusW")
+	procQueryServiceStatus                                   = modadvapi32.NewProc("QueryServiceStatus")
+	procQueryServiceStatusEx                                 = modadvapi32.NewProc("QueryServiceStatusEx")
+	procRegCloseKey                                          = modadvapi32.NewProc("RegCloseKey")
+	procRegEnumKeyExW                                        = modadvapi32.NewProc("RegEnumKeyExW")
+	procRegNotifyChangeKeyValue                              = modadvapi32.NewProc("RegNotifyChangeKeyValue")
+	procRegOpenKeyExW                                        = modadvapi32.NewProc("RegOpenKeyExW")
+	procRegQueryInfoKeyW                                     = modadvapi32.NewProc("RegQueryInfoKeyW")
+	procRegQueryValueExW                                     = modadvapi32.NewProc("RegQueryValueExW")
+	procRegisterEventSourceW                                 = modadvapi32.NewProc("RegisterEventSourceW")
+	procReportEventW                                         = modadvapi32.NewProc("ReportEventW")
+	procRevertToSelf                                         = modadvapi32.NewProc("RevertToSelf")
+	procSetEntriesInAclW                                     = modadvapi32.NewProc("SetEntriesInAclW")
+	procSetKernelObjectSecurity                              = modadvapi32.NewProc("SetKernelObjectSecurity")
+	procSetNamedSecurityInfoW                                = modadvapi32.NewProc("SetNamedSecurityInfoW")
+	procSetSecurityDescriptorControl                         = modadvapi32.NewProc("SetSecurityDescriptorControl")
+	procSetSecurityDescriptorDacl                            = modadvapi32.NewProc("SetSecurityDescriptorDacl")
+	procSetSecurityDescriptorGroup                           = modadvapi32.NewProc("SetSecurityDescriptorGroup")
+	procSetSecurityDescriptorOwner                           = modadvapi32.NewProc("SetSecurityDescriptorOwner")
+	procSetSecurityDescriptorRMControl                       = modadvapi32.NewProc("SetSecurityDescriptorRMControl")
+	procSetSecurityDescriptorSacl                            = modadvapi32.NewProc("SetSecurityDescriptorSacl")
+	procSetSecurityInfo                                      = modadvapi32.NewProc("SetSecurityInfo")
+	procSetServiceStatus                                     = modadvapi32.NewProc("SetServiceStatus")
+	procSetThreadToken                                       = modadvapi32.NewProc("SetThreadToken")
+	procSetTokenInformation                                  = modadvapi32.NewProc("SetTokenInformation")
+	procStartServiceCtrlDispatcherW                          = modadvapi32.NewProc("StartServiceCtrlDispatcherW")
+	procStartServiceW                                        = modadvapi32.NewProc("StartServiceW")
+	procCertAddCertificateContextToStore                     = modcrypt32.NewProc("CertAddCertificateContextToStore")
+	procCertCloseStore                                       = modcrypt32.NewProc("CertCloseStore")
+	procCertCreateCertificateContext                         = modcrypt32.NewProc("CertCreateCertificateContext")
+	procCertDeleteCertificateFromStore                       = modcrypt32.NewProc("CertDeleteCertificateFromStore")
+	procCertDuplicateCertificateContext                      = modcrypt32.NewProc("CertDuplicateCertificateContext")
+	procCertEnumCertificatesInStore                          = modcrypt32.NewProc("CertEnumCertificatesInStore")
+	procCertFindExtension                                    = modcrypt32.NewProc("CertFindExtension")
+	procCertFreeCertificateChain                             = modcrypt32.NewProc("CertFreeCertificateChain")
+	procCertFreeCertificateContext                           = modcrypt32.NewProc("CertFreeCertificateContext")
+	procCertGetCertificateChain                              = modcrypt32.NewProc("CertGetCertificateChain")
+	procCertGetNameStringW                                   = modcrypt32.NewProc("CertGetNameStringW")
+	procCertOpenStore                                        = modcrypt32.NewProc("CertOpenStore")
+	procCertOpenSystemStoreW                                 = modcrypt32.NewProc("CertOpenSystemStoreW")
+	procCertVerifyCertificateChainPolicy                     = modcrypt32.NewProc("CertVerifyCertificateChainPolicy")
+	procCryptDecodeObject                                    = modcrypt32.NewProc("CryptDecodeObject")
+	procCryptProtectData                                     = modcrypt32.NewProc("CryptProtectData")
+	procCryptQueryObject                                     = modcrypt32.NewProc("CryptQueryObject")
+	procCryptUnprotectData                                   = modcrypt32.NewProc("CryptUnprotectData")
+	procPFXImportCertStore                                   = modcrypt32.NewProc("PFXImportCertStore")
+	procDnsNameCompare_W                                     = moddnsapi.NewProc("DnsNameCompare_W")
+	procDnsQuery_W                                           = moddnsapi.NewProc("DnsQuery_W")
+	procDnsRecordListFree                                    = moddnsapi.NewProc("DnsRecordListFree")
+	procGetAdaptersAddresses                                 = modiphlpapi.NewProc("GetAdaptersAddresses")
+	procGetAdaptersInfo                                      = modiphlpapi.NewProc("GetAdaptersInfo")
+	procGetIfEntry                                           = modiphlpapi.NewProc("GetIfEntry")
+	procAssignProcessToJobObject                             = modkernel32.NewProc("AssignProcessToJobObject")
+	procCancelIo                                             = modkernel32.NewProc("CancelIo")
+	procCancelIoEx                                           = modkernel32.NewProc("CancelIoEx")
 	procCloseHandle                                          = modkernel32.NewProc("CloseHandle")
-	procGetStdHandle                                         = modkernel32.NewProc("GetStdHandle")
-	procSetStdHandle                                         = modkernel32.NewProc("SetStdHandle")
-	procFindFirstFileW                                       = modkernel32.NewProc("FindFirstFileW")
-	procFindNextFileW                                        = modkernel32.NewProc("FindNextFileW")
-	procFindClose                                            = modkernel32.NewProc("FindClose")
-	procGetFileInformationByHandle                           = modkernel32.NewProc("GetFileInformationByHandle")
-	procGetFileInformationByHandleEx                         = modkernel32.NewProc("GetFileInformationByHandleEx")
-	procGetCurrentDirectoryW                                 = modkernel32.NewProc("GetCurrentDirectoryW")
-	procSetCurrentDirectoryW                                 = modkernel32.NewProc("SetCurrentDirectoryW")
 	procCreateDirectoryW                                     = modkernel32.NewProc("CreateDirectoryW")
-	procRemoveDirectoryW                                     = modkernel32.NewProc("RemoveDirectoryW")
-	procDeleteFileW                                          = modkernel32.NewProc("DeleteFileW")
-	procMoveFileW                                            = modkernel32.NewProc("MoveFileW")
-	procMoveFileExW                                          = modkernel32.NewProc("MoveFileExW")
-	procLockFileEx                                           = modkernel32.NewProc("LockFileEx")
-	procUnlockFileEx                                         = modkernel32.NewProc("UnlockFileEx")
-	procGetComputerNameW                                     = modkernel32.NewProc("GetComputerNameW")
-	procGetComputerNameExW                                   = modkernel32.NewProc("GetComputerNameExW")
-	procSetEndOfFile                                         = modkernel32.NewProc("SetEndOfFile")
-	procGetSystemTimeAsFileTime                              = modkernel32.NewProc("GetSystemTimeAsFileTime")
-	procGetSystemTimePreciseAsFileTime                       = modkernel32.NewProc("GetSystemTimePreciseAsFileTime")
-	procGetTimeZoneInformation                               = modkernel32.NewProc("GetTimeZoneInformation")
+	procCreateEventExW                                       = modkernel32.NewProc("CreateEventExW")
+	procCreateEventW                                         = modkernel32.NewProc("CreateEventW")
+	procCreateFileMappingW                                   = modkernel32.NewProc("CreateFileMappingW")
+	procCreateFileW                                          = modkernel32.NewProc("CreateFileW")
+	procCreateHardLinkW                                      = modkernel32.NewProc("CreateHardLinkW")
 	procCreateIoCompletionPort                               = modkernel32.NewProc("CreateIoCompletionPort")
-	procGetQueuedCompletionStatus                            = modkernel32.NewProc("GetQueuedCompletionStatus")
-	procPostQueuedCompletionStatus                           = modkernel32.NewProc("PostQueuedCompletionStatus")
-	procCancelIo                                             = modkernel32.NewProc("CancelIo")
-	procCancelIoEx                                           = modkernel32.NewProc("CancelIoEx")
+	procCreateJobObjectW                                     = modkernel32.NewProc("CreateJobObjectW")
+	procCreateMutexExW                                       = modkernel32.NewProc("CreateMutexExW")
+	procCreateMutexW                                         = modkernel32.NewProc("CreateMutexW")
+	procCreatePipe                                           = modkernel32.NewProc("CreatePipe")
 	procCreateProcessW                                       = modkernel32.NewProc("CreateProcessW")
-	procOpenProcess                                          = modkernel32.NewProc("OpenProcess")
-	procShellExecuteW                                        = modshell32.NewProc("ShellExecuteW")
-	procSHGetKnownFolderPath                                 = modshell32.NewProc("SHGetKnownFolderPath")
-	procTerminateProcess                                     = modkernel32.NewProc("TerminateProcess")
-	procGetExitCodeProcess                                   = modkernel32.NewProc("GetExitCodeProcess")
-	procGetStartupInfoW                                      = modkernel32.NewProc("GetStartupInfoW")
-	procGetProcessTimes                                      = modkernel32.NewProc("GetProcessTimes")
+	procCreateSymbolicLinkW                                  = modkernel32.NewProc("CreateSymbolicLinkW")
+	procCreateToolhelp32Snapshot                             = modkernel32.NewProc("CreateToolhelp32Snapshot")
+	procDefineDosDeviceW                                     = modkernel32.NewProc("DefineDosDeviceW")
+	procDeleteFileW                                          = modkernel32.NewProc("DeleteFileW")
+	procDeleteVolumeMountPointW                              = modkernel32.NewProc("DeleteVolumeMountPointW")
+	procDeviceIoControl                                      = modkernel32.NewProc("DeviceIoControl")
 	procDuplicateHandle                                      = modkernel32.NewProc("DuplicateHandle")
-	procWaitForSingleObject                                  = modkernel32.NewProc("WaitForSingleObject")
-	procWaitForMultipleObjects                               = modkernel32.NewProc("WaitForMultipleObjects")
-	procGetTempPathW                                         = modkernel32.NewProc("GetTempPathW")
-	procCreatePipe                                           = modkernel32.NewProc("CreatePipe")
-	procGetFileType                                          = modkernel32.NewProc("GetFileType")
-	procCryptAcquireContextW                                 = modadvapi32.NewProc("CryptAcquireContextW")
-	procCryptReleaseContext                                  = modadvapi32.NewProc("CryptReleaseContext")
-	procCryptGenRandom                                       = modadvapi32.NewProc("CryptGenRandom")
-	procGetEnvironmentStringsW                               = modkernel32.NewProc("GetEnvironmentStringsW")
+	procExitProcess                                          = modkernel32.NewProc("ExitProcess")
+	procFindClose                                            = modkernel32.NewProc("FindClose")
+	procFindCloseChangeNotification                          = modkernel32.NewProc("FindCloseChangeNotification")
+	procFindFirstChangeNotificationW                         = modkernel32.NewProc("FindFirstChangeNotificationW")
+	procFindFirstFileW                                       = modkernel32.NewProc("FindFirstFileW")
+	procFindFirstVolumeMountPointW                           = modkernel32.NewProc("FindFirstVolumeMountPointW")
+	procFindFirstVolumeW                                     = modkernel32.NewProc("FindFirstVolumeW")
+	procFindNextChangeNotification                           = modkernel32.NewProc("FindNextChangeNotification")
+	procFindNextFileW                                        = modkernel32.NewProc("FindNextFileW")
+	procFindNextVolumeMountPointW                            = modkernel32.NewProc("FindNextVolumeMountPointW")
+	procFindNextVolumeW                                      = modkernel32.NewProc("FindNextVolumeW")
+	procFindVolumeClose                                      = modkernel32.NewProc("FindVolumeClose")
+	procFindVolumeMountPointClose                            = modkernel32.NewProc("FindVolumeMountPointClose")
+	procFlushFileBuffers                                     = modkernel32.NewProc("FlushFileBuffers")
+	procFlushViewOfFile                                      = modkernel32.NewProc("FlushViewOfFile")
+	procFormatMessageW                                       = modkernel32.NewProc("FormatMessageW")
 	procFreeEnvironmentStringsW                              = modkernel32.NewProc("FreeEnvironmentStringsW")
+	procFreeLibrary                                          = modkernel32.NewProc("FreeLibrary")
+	procGenerateConsoleCtrlEvent                             = modkernel32.NewProc("GenerateConsoleCtrlEvent")
+	procGetACP                                               = modkernel32.NewProc("GetACP")
+	procGetCommandLineW                                      = modkernel32.NewProc("GetCommandLineW")
+	procGetComputerNameExW                                   = modkernel32.NewProc("GetComputerNameExW")
+	procGetComputerNameW                                     = modkernel32.NewProc("GetComputerNameW")
+	procGetConsoleMode                                       = modkernel32.NewProc("GetConsoleMode")
+	procGetConsoleScreenBufferInfo                           = modkernel32.NewProc("GetConsoleScreenBufferInfo")
+	procGetCurrentDirectoryW                                 = modkernel32.NewProc("GetCurrentDirectoryW")
+	procGetCurrentProcessId                                  = modkernel32.NewProc("GetCurrentProcessId")
+	procGetCurrentThreadId                                   = modkernel32.NewProc("GetCurrentThreadId")
+	procGetDiskFreeSpaceExW                                  = modkernel32.NewProc("GetDiskFreeSpaceExW")
+	procGetDriveTypeW                                        = modkernel32.NewProc("GetDriveTypeW")
+	procGetEnvironmentStringsW                               = modkernel32.NewProc("GetEnvironmentStringsW")
 	procGetEnvironmentVariableW                              = modkernel32.NewProc("GetEnvironmentVariableW")
-	procSetEnvironmentVariableW                              = modkernel32.NewProc("SetEnvironmentVariableW")
-	procCreateEnvironmentBlock                               = moduserenv.NewProc("CreateEnvironmentBlock")
-	procDestroyEnvironmentBlock                              = moduserenv.NewProc("DestroyEnvironmentBlock")
-	procGetTickCount64                                       = modkernel32.NewProc("GetTickCount64")
-	procSetFileTime                                          = modkernel32.NewProc("SetFileTime")
-	procGetFileAttributesW                                   = modkernel32.NewProc("GetFileAttributesW")
-	procSetFileAttributesW                                   = modkernel32.NewProc("SetFileAttributesW")
+	procGetExitCodeProcess                                   = modkernel32.NewProc("GetExitCodeProcess")
 	procGetFileAttributesExW                                 = modkernel32.NewProc("GetFileAttributesExW")
-	procGetCommandLineW                                      = modkernel32.NewProc("GetCommandLineW")
-	procCommandLineToArgvW                                   = modshell32.NewProc("CommandLineToArgvW")
-	procLocalFree                                            = modkernel32.NewProc("LocalFree")
-	procSetHandleInformation                                 = modkernel32.NewProc("SetHandleInformation")
-	procFlushFileBuffers                                     = modkernel32.NewProc("FlushFileBuffers")
+	procGetFileAttributesW                                   = modkernel32.NewProc("GetFileAttributesW")
+	procGetFileInformationByHandle                           = modkernel32.NewProc("GetFileInformationByHandle")
+	procGetFileInformationByHandleEx                         = modkernel32.NewProc("GetFileInformationByHandleEx")
+	procGetFileType                                          = modkernel32.NewProc("GetFileType")
+	procGetFinalPathNameByHandleW                            = modkernel32.NewProc("GetFinalPathNameByHandleW")
 	procGetFullPathNameW                                     = modkernel32.NewProc("GetFullPathNameW")
+	procGetLastError                                         = modkernel32.NewProc("GetLastError")
+	procGetLogicalDriveStringsW                              = modkernel32.NewProc("GetLogicalDriveStringsW")
+	procGetLogicalDrives                                     = modkernel32.NewProc("GetLogicalDrives")
 	procGetLongPathNameW                                     = modkernel32.NewProc("GetLongPathNameW")
-	procGetShortPathNameW                                    = modkernel32.NewProc("GetShortPathNameW")
-	procCreateFileMappingW                                   = modkernel32.NewProc("CreateFileMappingW")
-	procMapViewOfFile                                        = modkernel32.NewProc("MapViewOfFile")
-	procUnmapViewOfFile                                      = modkernel32.NewProc("UnmapViewOfFile")
-	procFlushViewOfFile                                      = modkernel32.NewProc("FlushViewOfFile")
-	procVirtualLock                                          = modkernel32.NewProc("VirtualLock")
-	procVirtualUnlock                                        = modkernel32.NewProc("VirtualUnlock")
-	procVirtualAlloc                                         = modkernel32.NewProc("VirtualAlloc")
-	procVirtualFree                                          = modkernel32.NewProc("VirtualFree")
-	procVirtualProtect                                       = modkernel32.NewProc("VirtualProtect")
-	procTransmitFile                                         = modmswsock.NewProc("TransmitFile")
-	procReadDirectoryChangesW                                = modkernel32.NewProc("ReadDirectoryChangesW")
-	procCertOpenSystemStoreW                                 = modcrypt32.NewProc("CertOpenSystemStoreW")
-	procCertOpenStore                                        = modcrypt32.NewProc("CertOpenStore")
-	procCertEnumCertificatesInStore                          = modcrypt32.NewProc("CertEnumCertificatesInStore")
-	procCertAddCertificateContextToStore                     = modcrypt32.NewProc("CertAddCertificateContextToStore")
-	procCertCloseStore                                       = modcrypt32.NewProc("CertCloseStore")
-	procCertGetCertificateChain                              = modcrypt32.NewProc("CertGetCertificateChain")
-	procCertFreeCertificateChain                             = modcrypt32.NewProc("CertFreeCertificateChain")
-	procCertCreateCertificateContext                         = modcrypt32.NewProc("CertCreateCertificateContext")
-	procCertFreeCertificateContext                           = modcrypt32.NewProc("CertFreeCertificateContext")
-	procCertVerifyCertificateChainPolicy                     = modcrypt32.NewProc("CertVerifyCertificateChainPolicy")
-	procRegOpenKeyExW                                        = modadvapi32.NewProc("RegOpenKeyExW")
-	procRegCloseKey                                          = modadvapi32.NewProc("RegCloseKey")
-	procRegQueryInfoKeyW                                     = modadvapi32.NewProc("RegQueryInfoKeyW")
-	procRegEnumKeyExW                                        = modadvapi32.NewProc("RegEnumKeyExW")
-	procRegQueryValueExW                                     = modadvapi32.NewProc("RegQueryValueExW")
-	procGetCurrentProcessId                                  = modkernel32.NewProc("GetCurrentProcessId")
-	procGetConsoleMode                                       = modkernel32.NewProc("GetConsoleMode")
-	procSetConsoleMode                                       = modkernel32.NewProc("SetConsoleMode")
-	procGetConsoleScreenBufferInfo                           = modkernel32.NewProc("GetConsoleScreenBufferInfo")
-	procWriteConsoleW                                        = modkernel32.NewProc("WriteConsoleW")
-	procReadConsoleW                                         = modkernel32.NewProc("ReadConsoleW")
-	procCreateToolhelp32Snapshot                             = modkernel32.NewProc("CreateToolhelp32Snapshot")
-	procProcess32FirstW                                      = modkernel32.NewProc("Process32FirstW")
-	procProcess32NextW                                       = modkernel32.NewProc("Process32NextW")
-	procThread32First                                        = modkernel32.NewProc("Thread32First")
-	procThread32Next                                         = modkernel32.NewProc("Thread32Next")
-	procDeviceIoControl                                      = modkernel32.NewProc("DeviceIoControl")
-	procCreateSymbolicLinkW                                  = modkernel32.NewProc("CreateSymbolicLinkW")
-	procCreateHardLinkW                                      = modkernel32.NewProc("CreateHardLinkW")
-	procGetCurrentThreadId                                   = modkernel32.NewProc("GetCurrentThreadId")
-	procCreateEventW                                         = modkernel32.NewProc("CreateEventW")
-	procCreateEventExW                                       = modkernel32.NewProc("CreateEventExW")
-	procOpenEventW                                           = modkernel32.NewProc("OpenEventW")
-	procSetEvent                                             = modkernel32.NewProc("SetEvent")
-	procResetEvent                                           = modkernel32.NewProc("ResetEvent")
-	procPulseEvent                                           = modkernel32.NewProc("PulseEvent")
-	procCreateMutexW                                         = modkernel32.NewProc("CreateMutexW")
-	procCreateMutexExW                                       = modkernel32.NewProc("CreateMutexExW")
-	procOpenMutexW                                           = modkernel32.NewProc("OpenMutexW")
-	procReleaseMutex                                         = modkernel32.NewProc("ReleaseMutex")
-	procSleepEx                                              = modkernel32.NewProc("SleepEx")
-	procCreateJobObjectW                                     = modkernel32.NewProc("CreateJobObjectW")
-	procAssignProcessToJobObject                             = modkernel32.NewProc("AssignProcessToJobObject")
-	procTerminateJobObject                                   = modkernel32.NewProc("TerminateJobObject")
-	procSetErrorMode                                         = modkernel32.NewProc("SetErrorMode")
-	procResumeThread                                         = modkernel32.NewProc("ResumeThread")
-	procSetPriorityClass                                     = modkernel32.NewProc("SetPriorityClass")
+	procGetModuleFileNameW                                   = modkernel32.NewProc("GetModuleFileNameW")
+	procGetModuleHandleExW                                   = modkernel32.NewProc("GetModuleHandleExW")
+	procGetOverlappedResult                                  = modkernel32.NewProc("GetOverlappedResult")
 	procGetPriorityClass                                     = modkernel32.NewProc("GetPriorityClass")
-	procSetInformationJobObject                              = modkernel32.NewProc("SetInformationJobObject")
-	procGenerateConsoleCtrlEvent                             = modkernel32.NewProc("GenerateConsoleCtrlEvent")
+	procGetProcAddress                                       = modkernel32.NewProc("GetProcAddress")
 	procGetProcessId                                         = modkernel32.NewProc("GetProcessId")
-	procOpenThread                                           = modkernel32.NewProc("OpenThread")
-	procSetProcessPriorityBoost                              = modkernel32.NewProc("SetProcessPriorityBoost")
-	procDefineDosDeviceW                                     = modkernel32.NewProc("DefineDosDeviceW")
-	procDeleteVolumeMountPointW                              = modkernel32.NewProc("DeleteVolumeMountPointW")
-	procFindFirstVolumeW                                     = modkernel32.NewProc("FindFirstVolumeW")
-	procFindFirstVolumeMountPointW                           = modkernel32.NewProc("FindFirstVolumeMountPointW")
-	procFindNextVolumeW                                      = modkernel32.NewProc("FindNextVolumeW")
-	procFindNextVolumeMountPointW                            = modkernel32.NewProc("FindNextVolumeMountPointW")
-	procFindVolumeClose                                      = modkernel32.NewProc("FindVolumeClose")
-	procFindVolumeMountPointClose                            = modkernel32.NewProc("FindVolumeMountPointClose")
-	procGetDiskFreeSpaceExW                                  = modkernel32.NewProc("GetDiskFreeSpaceExW")
-	procGetDriveTypeW                                        = modkernel32.NewProc("GetDriveTypeW")
-	procGetLogicalDrives                                     = modkernel32.NewProc("GetLogicalDrives")
-	procGetLogicalDriveStringsW                              = modkernel32.NewProc("GetLogicalDriveStringsW")
-	procGetVolumeInformationW                                = modkernel32.NewProc("GetVolumeInformationW")
+	procGetProcessPreferredUILanguages                       = modkernel32.NewProc("GetProcessPreferredUILanguages")
+	procGetProcessShutdownParameters                         = modkernel32.NewProc("GetProcessShutdownParameters")
+	procGetProcessTimes                                      = modkernel32.NewProc("GetProcessTimes")
+	procGetProcessWorkingSetSizeEx                           = modkernel32.NewProc("GetProcessWorkingSetSizeEx")
+	procGetQueuedCompletionStatus                            = modkernel32.NewProc("GetQueuedCompletionStatus")
+	procGetShortPathNameW                                    = modkernel32.NewProc("GetShortPathNameW")
+	procGetStartupInfoW                                      = modkernel32.NewProc("GetStartupInfoW")
+	procGetStdHandle                                         = modkernel32.NewProc("GetStdHandle")
+	procGetSystemDirectoryW                                  = modkernel32.NewProc("GetSystemDirectoryW")
+	procGetSystemPreferredUILanguages                        = modkernel32.NewProc("GetSystemPreferredUILanguages")
+	procGetSystemTimeAsFileTime                              = modkernel32.NewProc("GetSystemTimeAsFileTime")
+	procGetSystemTimePreciseAsFileTime                       = modkernel32.NewProc("GetSystemTimePreciseAsFileTime")
+	procGetSystemWindowsDirectoryW                           = modkernel32.NewProc("GetSystemWindowsDirectoryW")
+	procGetTempPathW                                         = modkernel32.NewProc("GetTempPathW")
+	procGetThreadPreferredUILanguages                        = modkernel32.NewProc("GetThreadPreferredUILanguages")
+	procGetTickCount64                                       = modkernel32.NewProc("GetTickCount64")
+	procGetTimeZoneInformation                               = modkernel32.NewProc("GetTimeZoneInformation")
+	procGetUserPreferredUILanguages                          = modkernel32.NewProc("GetUserPreferredUILanguages")
+	procGetVersion                                           = modkernel32.NewProc("GetVersion")
 	procGetVolumeInformationByHandleW                        = modkernel32.NewProc("GetVolumeInformationByHandleW")
+	procGetVolumeInformationW                                = modkernel32.NewProc("GetVolumeInformationW")
 	procGetVolumeNameForVolumeMountPointW                    = modkernel32.NewProc("GetVolumeNameForVolumeMountPointW")
 	procGetVolumePathNameW                                   = modkernel32.NewProc("GetVolumePathNameW")
 	procGetVolumePathNamesForVolumeNameW                     = modkernel32.NewProc("GetVolumePathNamesForVolumeNameW")
+	procGetWindowsDirectoryW                                 = modkernel32.NewProc("GetWindowsDirectoryW")
+	procIsWow64Process                                       = modkernel32.NewProc("IsWow64Process")
+	procIsWow64Process2                                      = modkernel32.NewProc("IsWow64Process2")
+	procLoadLibraryExW                                       = modkernel32.NewProc("LoadLibraryExW")
+	procLoadLibraryW                                         = modkernel32.NewProc("LoadLibraryW")
+	procLocalFree                                            = modkernel32.NewProc("LocalFree")
+	procLockFileEx                                           = modkernel32.NewProc("LockFileEx")
+	procMapViewOfFile                                        = modkernel32.NewProc("MapViewOfFile")
+	procMoveFileExW                                          = modkernel32.NewProc("MoveFileExW")
+	procMoveFileW                                            = modkernel32.NewProc("MoveFileW")
+	procMultiByteToWideChar                                  = modkernel32.NewProc("MultiByteToWideChar")
+	procOpenEventW                                           = modkernel32.NewProc("OpenEventW")
+	procOpenMutexW                                           = modkernel32.NewProc("OpenMutexW")
+	procOpenProcess                                          = modkernel32.NewProc("OpenProcess")
+	procOpenThread                                           = modkernel32.NewProc("OpenThread")
+	procPostQueuedCompletionStatus                           = modkernel32.NewProc("PostQueuedCompletionStatus")
+	procProcess32FirstW                                      = modkernel32.NewProc("Process32FirstW")
+	procProcess32NextW                                       = modkernel32.NewProc("Process32NextW")
+	procProcessIdToSessionId                                 = modkernel32.NewProc("ProcessIdToSessionId")
+	procPulseEvent                                           = modkernel32.NewProc("PulseEvent")
 	procQueryDosDeviceW                                      = modkernel32.NewProc("QueryDosDeviceW")
+	procQueryInformationJobObject                            = modkernel32.NewProc("QueryInformationJobObject")
+	procReadConsoleW                                         = modkernel32.NewProc("ReadConsoleW")
+	procReadDirectoryChangesW                                = modkernel32.NewProc("ReadDirectoryChangesW")
+	procReadFile                                             = modkernel32.NewProc("ReadFile")
+	procReleaseMutex                                         = modkernel32.NewProc("ReleaseMutex")
+	procRemoveDirectoryW                                     = modkernel32.NewProc("RemoveDirectoryW")
+	procResetEvent                                           = modkernel32.NewProc("ResetEvent")
+	procResumeThread                                         = modkernel32.NewProc("ResumeThread")
+	procSetConsoleCursorPosition                             = modkernel32.NewProc("SetConsoleCursorPosition")
+	procSetConsoleMode                                       = modkernel32.NewProc("SetConsoleMode")
+	procSetCurrentDirectoryW                                 = modkernel32.NewProc("SetCurrentDirectoryW")
+	procSetDefaultDllDirectories                             = modkernel32.NewProc("SetDefaultDllDirectories")
+	procSetDllDirectoryW                                     = modkernel32.NewProc("SetDllDirectoryW")
+	procSetEndOfFile                                         = modkernel32.NewProc("SetEndOfFile")
+	procSetEnvironmentVariableW                              = modkernel32.NewProc("SetEnvironmentVariableW")
+	procSetErrorMode                                         = modkernel32.NewProc("SetErrorMode")
+	procSetEvent                                             = modkernel32.NewProc("SetEvent")
+	procSetFileAttributesW                                   = modkernel32.NewProc("SetFileAttributesW")
+	procSetFileCompletionNotificationModes                   = modkernel32.NewProc("SetFileCompletionNotificationModes")
+	procSetFileInformationByHandle                           = modkernel32.NewProc("SetFileInformationByHandle")
+	procSetFilePointer                                       = modkernel32.NewProc("SetFilePointer")
+	procSetFileTime                                          = modkernel32.NewProc("SetFileTime")
+	procSetHandleInformation                                 = modkernel32.NewProc("SetHandleInformation")
+	procSetInformationJobObject                              = modkernel32.NewProc("SetInformationJobObject")
+	procSetPriorityClass                                     = modkernel32.NewProc("SetPriorityClass")
+	procSetProcessPriorityBoost                              = modkernel32.NewProc("SetProcessPriorityBoost")
+	procSetProcessShutdownParameters                         = modkernel32.NewProc("SetProcessShutdownParameters")
+	procSetProcessWorkingSetSizeEx                           = modkernel32.NewProc("SetProcessWorkingSetSizeEx")
+	procSetStdHandle                                         = modkernel32.NewProc("SetStdHandle")
 	procSetVolumeLabelW                                      = modkernel32.NewProc("SetVolumeLabelW")
 	procSetVolumeMountPointW                                 = modkernel32.NewProc("SetVolumeMountPointW")
-	procMessageBoxW                                          = moduser32.NewProc("MessageBoxW")
-	procExitWindowsEx                                        = moduser32.NewProc("ExitWindowsEx")
-	procInitiateSystemShutdownExW                            = modadvapi32.NewProc("InitiateSystemShutdownExW")
-	procSetProcessShutdownParameters                         = modkernel32.NewProc("SetProcessShutdownParameters")
-	procGetProcessShutdownParameters                         = modkernel32.NewProc("GetProcessShutdownParameters")
+	procSleepEx                                              = modkernel32.NewProc("SleepEx")
+	procTerminateJobObject                                   = modkernel32.NewProc("TerminateJobObject")
+	procTerminateProcess                                     = modkernel32.NewProc("TerminateProcess")
+	procThread32First                                        = modkernel32.NewProc("Thread32First")
+	procThread32Next                                         = modkernel32.NewProc("Thread32Next")
+	procUnlockFileEx                                         = modkernel32.NewProc("UnlockFileEx")
+	procUnmapViewOfFile                                      = modkernel32.NewProc("UnmapViewOfFile")
+	procVirtualAlloc                                         = modkernel32.NewProc("VirtualAlloc")
+	procVirtualFree                                          = modkernel32.NewProc("VirtualFree")
+	procVirtualLock                                          = modkernel32.NewProc("VirtualLock")
+	procVirtualProtect                                       = modkernel32.NewProc("VirtualProtect")
+	procVirtualUnlock                                        = modkernel32.NewProc("VirtualUnlock")
+	procWaitForMultipleObjects                               = modkernel32.NewProc("WaitForMultipleObjects")
+	procWaitForSingleObject                                  = modkernel32.NewProc("WaitForSingleObject")
+	procWriteConsoleW                                        = modkernel32.NewProc("WriteConsoleW")
+	procWriteFile                                            = modkernel32.NewProc("WriteFile")
+	procAcceptEx                                             = modmswsock.NewProc("AcceptEx")
+	procGetAcceptExSockaddrs                                 = modmswsock.NewProc("GetAcceptExSockaddrs")
+	procTransmitFile                                         = modmswsock.NewProc("TransmitFile")
+	procNetApiBufferFree                                     = modnetapi32.NewProc("NetApiBufferFree")
+	procNetGetJoinInformation                                = modnetapi32.NewProc("NetGetJoinInformation")
+	procNetUserGetInfo                                       = modnetapi32.NewProc("NetUserGetInfo")
+	procRtlGetNtVersionNumbers                               = modntdll.NewProc("RtlGetNtVersionNumbers")
+	procRtlGetVersion                                        = modntdll.NewProc("RtlGetVersion")
 	procCLSIDFromString                                      = modole32.NewProc("CLSIDFromString")
-	procStringFromGUID2                                      = modole32.NewProc("StringFromGUID2")
 	procCoCreateGuid                                         = modole32.NewProc("CoCreateGuid")
 	procCoTaskMemFree                                        = modole32.NewProc("CoTaskMemFree")
-	procRtlGetVersion                                        = modntdll.NewProc("RtlGetVersion")
-	procRtlGetNtVersionNumbers                               = modntdll.NewProc("RtlGetNtVersionNumbers")
-	procGetProcessPreferredUILanguages                       = modkernel32.NewProc("GetProcessPreferredUILanguages")
-	procGetThreadPreferredUILanguages                        = modkernel32.NewProc("GetThreadPreferredUILanguages")
-	procGetUserPreferredUILanguages                          = modkernel32.NewProc("GetUserPreferredUILanguages")
-	procGetSystemPreferredUILanguages                        = modkernel32.NewProc("GetSystemPreferredUILanguages")
+	procStringFromGUID2                                      = modole32.NewProc("StringFromGUID2")
 	procEnumProcesses                                        = modpsapi.NewProc("EnumProcesses")
-	procWSAStartup                                           = modws2_32.NewProc("WSAStartup")
+	procSubscribeServiceChangeNotifications                  = modsechost.NewProc("SubscribeServiceChangeNotifications")
+	procUnsubscribeServiceChangeNotifications                = modsechost.NewProc("UnsubscribeServiceChangeNotifications")
+	procGetUserNameExW                                       = modsecur32.NewProc("GetUserNameExW")
+	procTranslateNameW                                       = modsecur32.NewProc("TranslateNameW")
+	procCommandLineToArgvW                                   = modshell32.NewProc("CommandLineToArgvW")
+	procSHGetKnownFolderPath                                 = modshell32.NewProc("SHGetKnownFolderPath")
+	procShellExecuteW                                        = modshell32.NewProc("ShellExecuteW")
+	procExitWindowsEx                                        = moduser32.NewProc("ExitWindowsEx")
+	procGetShellWindow                                       = moduser32.NewProc("GetShellWindow")
+	procGetWindowThreadProcessId                             = moduser32.NewProc("GetWindowThreadProcessId")
+	procMessageBoxW                                          = moduser32.NewProc("MessageBoxW")
+	procCreateEnvironmentBlock                               = moduserenv.NewProc("CreateEnvironmentBlock")
+	procDestroyEnvironmentBlock                              = moduserenv.NewProc("DestroyEnvironmentBlock")
+	procGetUserProfileDirectoryW                             = moduserenv.NewProc("GetUserProfileDirectoryW")
+	procWinVerifyTrustEx                                     = modwintrust.NewProc("WinVerifyTrustEx")
+	procFreeAddrInfoW                                        = modws2_32.NewProc("FreeAddrInfoW")
+	procGetAddrInfoW                                         = modws2_32.NewProc("GetAddrInfoW")
 	procWSACleanup                                           = modws2_32.NewProc("WSACleanup")
+	procWSAEnumProtocolsW                                    = modws2_32.NewProc("WSAEnumProtocolsW")
 	procWSAIoctl                                             = modws2_32.NewProc("WSAIoctl")
-	procsocket                                               = modws2_32.NewProc("socket")
-	procsendto                                               = modws2_32.NewProc("sendto")
-	procrecvfrom                                             = modws2_32.NewProc("recvfrom")
-	procsetsockopt                                           = modws2_32.NewProc("setsockopt")
-	procgetsockopt                                           = modws2_32.NewProc("getsockopt")
-	procbind                                                 = modws2_32.NewProc("bind")
-	procconnect                                              = modws2_32.NewProc("connect")
-	procgetsockname                                          = modws2_32.NewProc("getsockname")
-	procgetpeername                                          = modws2_32.NewProc("getpeername")
-	proclisten                                               = modws2_32.NewProc("listen")
-	procshutdown                                             = modws2_32.NewProc("shutdown")
-	procclosesocket                                          = modws2_32.NewProc("closesocket")
-	procAcceptEx                                             = modmswsock.NewProc("AcceptEx")
-	procGetAcceptExSockaddrs                                 = modmswsock.NewProc("GetAcceptExSockaddrs")
 	procWSARecv                                              = modws2_32.NewProc("WSARecv")
-	procWSASend                                              = modws2_32.NewProc("WSASend")
 	procWSARecvFrom                                          = modws2_32.NewProc("WSARecvFrom")
+	procWSASend                                              = modws2_32.NewProc("WSASend")
 	procWSASendTo                                            = modws2_32.NewProc("WSASendTo")
+	procWSAStartup                                           = modws2_32.NewProc("WSAStartup")
+	procbind                                                 = modws2_32.NewProc("bind")
+	procclosesocket                                          = modws2_32.NewProc("closesocket")
+	procconnect                                              = modws2_32.NewProc("connect")
 	procgethostbyname                                        = modws2_32.NewProc("gethostbyname")
+	procgetpeername                                          = modws2_32.NewProc("getpeername")
+	procgetprotobyname                                       = modws2_32.NewProc("getprotobyname")
 	procgetservbyname                                        = modws2_32.NewProc("getservbyname")
+	procgetsockname                                          = modws2_32.NewProc("getsockname")
+	procgetsockopt                                           = modws2_32.NewProc("getsockopt")
+	proclisten                                               = modws2_32.NewProc("listen")
 	procntohs                                                = modws2_32.NewProc("ntohs")
-	procgetprotobyname                                       = modws2_32.NewProc("getprotobyname")
-	procDnsQuery_W                                           = moddnsapi.NewProc("DnsQuery_W")
-	procDnsRecordListFree                                    = moddnsapi.NewProc("DnsRecordListFree")
-	procDnsNameCompare_W                                     = moddnsapi.NewProc("DnsNameCompare_W")
-	procGetAddrInfoW                                         = modws2_32.NewProc("GetAddrInfoW")
-	procFreeAddrInfoW                                        = modws2_32.NewProc("FreeAddrInfoW")
-	procGetIfEntry                                           = modiphlpapi.NewProc("GetIfEntry")
-	procGetAdaptersInfo                                      = modiphlpapi.NewProc("GetAdaptersInfo")
-	procSetFileCompletionNotificationModes                   = modkernel32.NewProc("SetFileCompletionNotificationModes")
-	procWSAEnumProtocolsW                                    = modws2_32.NewProc("WSAEnumProtocolsW")
-	procGetAdaptersAddresses                                 = modiphlpapi.NewProc("GetAdaptersAddresses")
-	procGetACP                                               = modkernel32.NewProc("GetACP")
-	procMultiByteToWideChar                                  = modkernel32.NewProc("MultiByteToWideChar")
-	procTranslateNameW                                       = modsecur32.NewProc("TranslateNameW")
-	procGetUserNameExW                                       = modsecur32.NewProc("GetUserNameExW")
-	procNetUserGetInfo                                       = modnetapi32.NewProc("NetUserGetInfo")
-	procNetGetJoinInformation                                = modnetapi32.NewProc("NetGetJoinInformation")
-	procNetApiBufferFree                                     = modnetapi32.NewProc("NetApiBufferFree")
-	procLookupAccountSidW                                    = modadvapi32.NewProc("LookupAccountSidW")
-	procLookupAccountNameW                                   = modadvapi32.NewProc("LookupAccountNameW")
-	procConvertSidToStringSidW                               = modadvapi32.NewProc("ConvertSidToStringSidW")
-	procConvertStringSidToSidW                               = modadvapi32.NewProc("ConvertStringSidToSidW")
-	procGetLengthSid                                         = modadvapi32.NewProc("GetLengthSid")
-	procCopySid                                              = modadvapi32.NewProc("CopySid")
-	procAllocateAndInitializeSid                             = modadvapi32.NewProc("AllocateAndInitializeSid")
-	procCreateWellKnownSid                                   = modadvapi32.NewProc("CreateWellKnownSid")
-	procIsWellKnownSid                                       = modadvapi32.NewProc("IsWellKnownSid")
-	procFreeSid                                              = modadvapi32.NewProc("FreeSid")
-	procEqualSid                                             = modadvapi32.NewProc("EqualSid")
-	procGetSidIdentifierAuthority                            = modadvapi32.NewProc("GetSidIdentifierAuthority")
-	procGetSidSubAuthorityCount                              = modadvapi32.NewProc("GetSidSubAuthorityCount")
-	procGetSidSubAuthority                                   = modadvapi32.NewProc("GetSidSubAuthority")
-	procIsValidSid                                           = modadvapi32.NewProc("IsValidSid")
-	procCheckTokenMembership                                 = modadvapi32.NewProc("CheckTokenMembership")
-	procOpenProcessToken                                     = modadvapi32.NewProc("OpenProcessToken")
-	procOpenThreadToken                                      = modadvapi32.NewProc("OpenThreadToken")
-	procImpersonateSelf                                      = modadvapi32.NewProc("ImpersonateSelf")
-	procRevertToSelf                                         = modadvapi32.NewProc("RevertToSelf")
-	procSetThreadToken                                       = modadvapi32.NewProc("SetThreadToken")
-	procLookupPrivilegeValueW                                = modadvapi32.NewProc("LookupPrivilegeValueW")
-	procAdjustTokenPrivileges                                = modadvapi32.NewProc("AdjustTokenPrivileges")
-	procAdjustTokenGroups                                    = modadvapi32.NewProc("AdjustTokenGroups")
-	procGetTokenInformation                                  = modadvapi32.NewProc("GetTokenInformation")
-	procSetTokenInformation                                  = modadvapi32.NewProc("SetTokenInformation")
-	procDuplicateTokenEx                                     = modadvapi32.NewProc("DuplicateTokenEx")
-	procGetUserProfileDirectoryW                             = moduserenv.NewProc("GetUserProfileDirectoryW")
-	procGetSystemDirectoryW                                  = modkernel32.NewProc("GetSystemDirectoryW")
-	procGetWindowsDirectoryW                                 = modkernel32.NewProc("GetWindowsDirectoryW")
-	procGetSystemWindowsDirectoryW                           = modkernel32.NewProc("GetSystemWindowsDirectoryW")
-	procWTSQueryUserToken                                    = modwtsapi32.NewProc("WTSQueryUserToken")
+	procrecvfrom                                             = modws2_32.NewProc("recvfrom")
+	procsendto                                               = modws2_32.NewProc("sendto")
+	procsetsockopt                                           = modws2_32.NewProc("setsockopt")
+	procshutdown                                             = modws2_32.NewProc("shutdown")
+	procsocket                                               = modws2_32.NewProc("socket")
 	procWTSEnumerateSessionsW                                = modwtsapi32.NewProc("WTSEnumerateSessionsW")
 	procWTSFreeMemory                                        = modwtsapi32.NewProc("WTSFreeMemory")
-	procGetSecurityInfo                                      = modadvapi32.NewProc("GetSecurityInfo")
-	procSetSecurityInfo                                      = modadvapi32.NewProc("SetSecurityInfo")
-	procGetNamedSecurityInfoW                                = modadvapi32.NewProc("GetNamedSecurityInfoW")
-	procSetNamedSecurityInfoW                                = modadvapi32.NewProc("SetNamedSecurityInfoW")
-	procBuildSecurityDescriptorW                             = modadvapi32.NewProc("BuildSecurityDescriptorW")
-	procInitializeSecurityDescriptor                         = modadvapi32.NewProc("InitializeSecurityDescriptor")
-	procGetSecurityDescriptorControl                         = modadvapi32.NewProc("GetSecurityDescriptorControl")
-	procGetSecurityDescriptorDacl                            = modadvapi32.NewProc("GetSecurityDescriptorDacl")
-	procGetSecurityDescriptorSacl                            = modadvapi32.NewProc("GetSecurityDescriptorSacl")
-	procGetSecurityDescriptorOwner                           = modadvapi32.NewProc("GetSecurityDescriptorOwner")
-	procGetSecurityDescriptorGroup                           = modadvapi32.NewProc("GetSecurityDescriptorGroup")
-	procGetSecurityDescriptorLength                          = modadvapi32.NewProc("GetSecurityDescriptorLength")
-	procGetSecurityDescriptorRMControl                       = modadvapi32.NewProc("GetSecurityDescriptorRMControl")
-	procIsValidSecurityDescriptor                            = modadvapi32.NewProc("IsValidSecurityDescriptor")
-	procSetSecurityDescriptorControl                         = modadvapi32.NewProc("SetSecurityDescriptorControl")
-	procSetSecurityDescriptorDacl                            = modadvapi32.NewProc("SetSecurityDescriptorDacl")
-	procSetSecurityDescriptorSacl                            = modadvapi32.NewProc("SetSecurityDescriptorSacl")
-	procSetSecurityDescriptorOwner                           = modadvapi32.NewProc("SetSecurityDescriptorOwner")
-	procSetSecurityDescriptorGroup                           = modadvapi32.NewProc("SetSecurityDescriptorGroup")
-	procSetSecurityDescriptorRMControl                       = modadvapi32.NewProc("SetSecurityDescriptorRMControl")
-	procConvertStringSecurityDescriptorToSecurityDescriptorW = modadvapi32.NewProc("ConvertStringSecurityDescriptorToSecurityDescriptorW")
-	procConvertSecurityDescriptorToStringSecurityDescriptorW = modadvapi32.NewProc("ConvertSecurityDescriptorToStringSecurityDescriptorW")
-	procMakeAbsoluteSD                                       = modadvapi32.NewProc("MakeAbsoluteSD")
-	procMakeSelfRelativeSD                                   = modadvapi32.NewProc("MakeSelfRelativeSD")
-	procSetEntriesInAclW                                     = modadvapi32.NewProc("SetEntriesInAclW")
+	procWTSQueryUserToken                                    = modwtsapi32.NewProc("WTSQueryUserToken")
 )
 
-func RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) {
-	r0, _, e1 := syscall.Syscall(procRegisterEventSourceW.Addr(), 2, uintptr(unsafe.Pointer(uncServerName)), uintptr(unsafe.Pointer(sourceName)), 0)
-	handle = Handle(r0)
-	if handle == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func AdjustTokenGroups(token Token, resetToDefault bool, newstate *Tokengroups, buflen uint32, prevstate *Tokengroups, returnlen *uint32) (err error) {
+	var _p0 uint32
+	if resetToDefault {
+		_p0 = 1
+	}
+	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)))
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func AdjustTokenPrivileges(token Token, disableAllPrivileges bool, newstate *Tokenprivileges, buflen uint32, prevstate *Tokenprivileges, returnlen *uint32) (err error) {
+	var _p0 uint32
+	if disableAllPrivileges {
+		_p0 = 1
+	}
+	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)))
+	if r1 == 0 {
+		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)
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	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)
+	}
+	return
+}
+
+func ChangeServiceConfig2(service Handle, infoLevel uint32, info *byte) (err error) {
+	r1, _, e1 := syscall.Syscall(procChangeServiceConfig2W.Addr(), 3, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(info)))
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func ChangeServiceConfig(service Handle, serviceType uint32, startType uint32, errorControl uint32, binaryPathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16, displayName *uint16) (err error) {
+	r1, _, e1 := syscall.Syscall12(procChangeServiceConfigW.Addr(), 11, uintptr(service), uintptr(serviceType), uintptr(startType), uintptr(errorControl), uintptr(unsafe.Pointer(binaryPathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), uintptr(unsafe.Pointer(displayName)), 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)))
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func CloseServiceHandle(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procCloseServiceHandle.Addr(), 1, uintptr(handle), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func ControlService(service Handle, control uint32, status *SERVICE_STATUS) (err error) {
+	r1, _, e1 := syscall.Syscall(procControlService.Addr(), 3, uintptr(service), uintptr(control), uintptr(unsafe.Pointer(status)))
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func DeregisterEventSource(handle Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procDeregisterEventSource.Addr(), 1, uintptr(handle), 0, 0)
+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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) {
-	r1, _, e1 := syscall.Syscall9(procReportEventW.Addr(), 9, uintptr(log), uintptr(etype), uintptr(category), uintptr(eventId), uintptr(usrSId), uintptr(numStrings), uintptr(dataSize), uintptr(unsafe.Pointer(strings)), uintptr(unsafe.Pointer(rawData)))
+func ConvertSidToStringSid(sid *SID, stringSid **uint16) (err error) {
+	r1, _, e1 := syscall.Syscall(procConvertSidToStringSidW.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(stringSid)), 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) {
-	r0, _, e1 := syscall.Syscall(procOpenSCManagerW.Addr(), 3, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(databaseName)), uintptr(access))
-	handle = Handle(r0)
-	if handle == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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
+	}
+	return _convertStringSecurityDescriptorToSecurityDescriptor(_p0, revision, sd, size)
+}
+
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func CloseServiceHandle(handle Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procCloseServiceHandle.Addr(), 1, uintptr(handle), 0, 0)
+func ConvertStringSidToSid(stringSid *uint16, sid **SID) (err error) {
+	r1, _, e1 := syscall.Syscall(procConvertStringSidToSidW.Addr(), 2, uintptr(unsafe.Pointer(stringSid)), uintptr(unsafe.Pointer(sid)), 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)))
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
@@ -422,1677 +522,1278 @@ func CreateService(mgr Handle, serviceName *uint16, displayName *uint16, access
 	r0, _, e1 := syscall.Syscall15(procCreateServiceW.Addr(), 13, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(unsafe.Pointer(displayName)), uintptr(access), uintptr(srvType), uintptr(startType), uintptr(errCtl), uintptr(unsafe.Pointer(pathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), 0, 0)
 	handle = Handle(r0)
 	if handle == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, err error) {
-	r0, _, e1 := syscall.Syscall(procOpenServiceW.Addr(), 3, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(access))
-	handle = Handle(r0)
-	if handle == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func DeleteService(service Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procDeleteService.Addr(), 1, uintptr(service), 0, 0)
+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)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func StartService(service Handle, numArgs uint32, argVectors **uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procStartServiceW.Addr(), 3, uintptr(service), uintptr(numArgs), uintptr(unsafe.Pointer(argVectors)))
+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)))
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func QueryServiceStatus(service Handle, status *SERVICE_STATUS) (err error) {
-	r1, _, e1 := syscall.Syscall(procQueryServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(status)), 0)
+func CryptReleaseContext(provhandle Handle, flags uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procCryptReleaseContext.Addr(), 2, uintptr(provhandle), uintptr(flags), 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func QueryServiceLockStatus(mgr Handle, lockStatus *QUERY_SERVICE_LOCK_STATUS, bufSize uint32, bytesNeeded *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall6(procQueryServiceLockStatusW.Addr(), 4, uintptr(mgr), uintptr(unsafe.Pointer(lockStatus)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0)
+func DeleteService(service Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procDeleteService.Addr(), 1, uintptr(service), 0, 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func ControlService(service Handle, control uint32, status *SERVICE_STATUS) (err error) {
-	r1, _, e1 := syscall.Syscall(procControlService.Addr(), 3, uintptr(service), uintptr(control), uintptr(unsafe.Pointer(status)))
+func DeregisterEventSource(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procDeregisterEventSource.Addr(), 1, uintptr(handle), 0, 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func StartServiceCtrlDispatcher(serviceTable *SERVICE_TABLE_ENTRY) (err error) {
-	r1, _, e1 := syscall.Syscall(procStartServiceCtrlDispatcherW.Addr(), 1, uintptr(unsafe.Pointer(serviceTable)), 0, 0)
+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)))
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func SetServiceStatus(service Handle, serviceStatus *SERVICE_STATUS) (err error) {
-	r1, _, e1 := syscall.Syscall(procSetServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(serviceStatus)), 0)
+func EnumServicesStatusEx(mgr Handle, infoLevel uint32, serviceType uint32, serviceState uint32, services *byte, bufSize uint32, bytesNeeded *uint32, servicesReturned *uint32, resumeHandle *uint32, groupName *uint16) (err error) {
+	r1, _, e1 := syscall.Syscall12(procEnumServicesStatusExW.Addr(), 10, uintptr(mgr), uintptr(infoLevel), uintptr(serviceType), uintptr(serviceState), uintptr(unsafe.Pointer(services)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), uintptr(unsafe.Pointer(servicesReturned)), uintptr(unsafe.Pointer(resumeHandle)), uintptr(unsafe.Pointer(groupName)), 0, 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func ChangeServiceConfig(service Handle, serviceType uint32, startType uint32, errorControl uint32, binaryPathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16, displayName *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall12(procChangeServiceConfigW.Addr(), 11, uintptr(service), uintptr(serviceType), uintptr(startType), uintptr(errorControl), uintptr(unsafe.Pointer(binaryPathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), uintptr(unsafe.Pointer(displayName)), 0)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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
+	return
+}
+
+func FreeSid(sid *SID) (err error) {
+	r1, _, e1 := syscall.Syscall(procFreeSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
+	if r1 != 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func QueryServiceConfig(service Handle, serviceConfig *QUERY_SERVICE_CONFIG, bufSize uint32, bytesNeeded *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall6(procQueryServiceConfigW.Addr(), 4, uintptr(service), uintptr(unsafe.Pointer(serviceConfig)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func GetLengthSid(sid *SID) (len uint32) {
+	r0, _, _ := syscall.Syscall(procGetLengthSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
+	len = uint32(r0)
+	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
+	}
+	return _getNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl, sd)
+}
+
+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)
 	}
 	return
 }
 
-func ChangeServiceConfig2(service Handle, infoLevel uint32, info *byte) (err error) {
-	r1, _, e1 := syscall.Syscall(procChangeServiceConfig2W.Addr(), 3, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(info)))
+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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func QueryServiceConfig2(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall6(procQueryServiceConfig2W.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0)
+func getSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent *bool, dacl **ACL, daclDefaulted *bool) (err error) {
+	var _p0 uint32
+	if *daclPresent {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if *daclDefaulted {
+		_p1 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func EnumServicesStatusEx(mgr Handle, infoLevel uint32, serviceType uint32, serviceState uint32, services *byte, bufSize uint32, bytesNeeded *uint32, servicesReturned *uint32, resumeHandle *uint32, groupName *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall12(procEnumServicesStatusExW.Addr(), 10, uintptr(mgr), uintptr(infoLevel), uintptr(serviceType), uintptr(serviceState), uintptr(unsafe.Pointer(services)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), uintptr(unsafe.Pointer(servicesReturned)), uintptr(unsafe.Pointer(resumeHandle)), uintptr(unsafe.Pointer(groupName)), 0, 0)
+func getSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group **SID, groupDefaulted *bool) (err error) {
+	var _p0 uint32
+	if *groupDefaulted {
+		_p0 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func QueryServiceStatusEx(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall6(procQueryServiceStatusEx.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0)
+func getSecurityDescriptorLength(sd *SECURITY_DESCRIPTOR) (len uint32) {
+	r0, _, _ := syscall.Syscall(procGetSecurityDescriptorLength.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0)
+	len = uint32(r0)
+	return
+}
+
+func getSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner **SID, ownerDefaulted *bool) (err error) {
+	var _p0 uint32
+	if *ownerDefaulted {
+		_p0 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func NotifyServiceStatusChange(service Handle, notifyMask uint32, notifier *SERVICE_NOTIFY) (ret error) {
-	r0, _, _ := syscall.Syscall(procNotifyServiceStatusChangeW.Addr(), 3, uintptr(service), uintptr(notifyMask), uintptr(unsafe.Pointer(notifier)))
+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)
 	}
 	return
 }
 
-func GetLastError() (lasterr error) {
-	r0, _, _ := syscall.Syscall(procGetLastError.Addr(), 0, 0, 0, 0)
+func getSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent *bool, sacl **ACL, saclDefaulted *bool) (err error) {
+	var _p0 uint32
+	if *saclPresent {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if *saclDefaulted {
+		_p1 = 1
+	}
+	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 {
+		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 {
-		lasterr = syscall.Errno(r0)
+		ret = syscall.Errno(r0)
 	}
 	return
 }
 
-func LoadLibrary(libname string) (handle Handle, err error) {
-	var _p0 *uint16
-	_p0, err = syscall.UTF16PtrFromString(libname)
-	if err != nil {
-		return
+func getSidIdentifierAuthority(sid *SID) (authority *SidIdentifierAuthority) {
+	r0, _, _ := syscall.Syscall(procGetSidIdentifierAuthority.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
+	authority = (*SidIdentifierAuthority)(unsafe.Pointer(r0))
+	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))
+	return
+}
+
+func getSidSubAuthorityCount(sid *SID) (count *uint8) {
+	r0, _, _ := syscall.Syscall(procGetSidSubAuthorityCount.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
+	count = (*uint8)(unsafe.Pointer(r0))
+	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)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
-	return _LoadLibrary(_p0)
+	return
 }
 
-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 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func ImpersonateSelf(impersonationlevel uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procImpersonateSelf.Addr(), 1, uintptr(impersonationlevel), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func LoadLibraryEx(libname string, zero Handle, flags uintptr) (handle Handle, err error) {
-	var _p0 *uint16
-	_p0, err = syscall.UTF16PtrFromString(libname)
-	if err != nil {
-		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 {
+		err = errnoErr(e1)
 	}
-	return _LoadLibraryEx(_p0, zero, flags)
+	return
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func InitiateSystemShutdownEx(machineName *uint16, message *uint16, timeout uint32, forceAppsClosed bool, rebootAfterShutdown bool, reason uint32) (err error) {
+	var _p0 uint32
+	if forceAppsClosed {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if rebootAfterShutdown {
+		_p1 = 1
+	}
+	r1, _, e1 := syscall.Syscall6(procInitiateSystemShutdownExW.Addr(), 6, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(message)), uintptr(timeout), uintptr(_p0), uintptr(_p1), uintptr(reason))
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
-	}
+func isTokenRestricted(tokenHandle Token) (ret bool, err error) {
+	r0, _, e1 := syscall.Syscall(procIsTokenRestricted.Addr(), 1, uintptr(tokenHandle), 0, 0)
+	ret = r0 != 0
+	if !ret {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+func isValidSecurityDescriptor(sd *SECURITY_DESCRIPTOR) (isValid bool) {
+	r0, _, _ := syscall.Syscall(procIsValidSecurityDescriptor.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0)
+	isValid = r0 != 0
+	return
+}
+
+func isValidSid(sid *SID) (isValid bool) {
+	r0, _, _ := syscall.Syscall(procIsValidSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
+	isValid = r0 != 0
+	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
 	return
 }
 
-func GetProcAddress(module Handle, procname string) (proc uintptr, err error) {
-	var _p0 *byte
-	_p0, err = syscall.BytePtrFromString(procname)
-	if err != nil {
-		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)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
-	return _GetProcAddress(module, _p0)
+	return
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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)))
+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)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func GetVersion() (ver uint32, err error) {
-	r0, _, e1 := syscall.Syscall(procGetVersion.Addr(), 0, 0, 0, 0)
-	ver = uint32(r0)
-	if ver == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func NotifyServiceStatusChange(service Handle, notifyMask uint32, notifier *SERVICE_NOTIFY) (ret error) {
+	r0, _, _ := syscall.Syscall(procNotifyServiceStatusChangeW.Addr(), 3, uintptr(service), uintptr(notifyMask), uintptr(unsafe.Pointer(notifier)))
+	if r0 != 0 {
+		ret = syscall.Errno(r0)
 	}
 	return
 }
 
-func ExitProcess(exitcode uint32) {
-	syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0)
+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)))
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
 	return
 }
 
-func IsWow64Process(handle Handle, isWow64 *bool) (err error) {
-	var _p0 uint32
-	if *isWow64 {
-		_p0 = 1
-	} else {
-		_p0 = 0
-	}
-	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
-		}
+func OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) {
+	r0, _, e1 := syscall.Syscall(procOpenSCManagerW.Addr(), 3, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(databaseName)), uintptr(access))
+	handle = Handle(r0)
+	if handle == 0 {
+		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)
+func OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, err error) {
+	r0, _, e1 := syscall.Syscall(procOpenServiceW.Addr(), 3, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(access))
 	handle = Handle(r0)
-	if handle == InvalidHandle {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+	if handle == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) {
-	var _p0 *byte
-	if len(buf) > 0 {
-		_p0 = &buf[0]
+func OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) {
+	var _p0 uint32
+	if openAsSelf {
+		_p0 = 1
 	}
-	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)
+	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
-		}
+		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 QueryServiceConfig2(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) {
+	r1, _, e1 := syscall.Syscall6(procQueryServiceConfig2W.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 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 QueryServiceConfig(service Handle, serviceConfig *QUERY_SERVICE_CONFIG, bufSize uint32, bytesNeeded *uint32) (err error) {
+	r1, _, e1 := syscall.Syscall6(procQueryServiceConfigW.Addr(), 4, uintptr(service), uintptr(unsafe.Pointer(serviceConfig)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 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 QueryServiceLockStatus(mgr Handle, lockStatus *QUERY_SERVICE_LOCK_STATUS, bufSize uint32, bytesNeeded *uint32) (err error) {
+	r1, _, e1 := syscall.Syscall6(procQueryServiceLockStatusW.Addr(), 4, uintptr(mgr), uintptr(unsafe.Pointer(lockStatus)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func CloseHandle(handle Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procCloseHandle.Addr(), 1, uintptr(handle), 0, 0)
+func QueryServiceStatus(service Handle, status *SERVICE_STATUS) (err error) {
+	r1, _, e1 := syscall.Syscall(procQueryServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(status)), 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func QueryServiceStatusEx(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) {
+	r1, _, e1 := syscall.Syscall6(procQueryServiceStatusEx.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0)
+	if r1 == 0 {
+		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 RegCloseKey(key Handle) (regerrno error) {
+	r0, _, _ := syscall.Syscall(procRegCloseKey.Addr(), 1, uintptr(key), 0, 0)
+	if r0 != 0 {
+		regerrno = syscall.Errno(r0)
 	}
 	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)
-	handle = Handle(r0)
-	if handle == InvalidHandle {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
 	}
 	return
 }
 
-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
-		}
+func RegNotifyChangeKeyValue(key Handle, watchSubtree bool, notifyFilter uint32, event Handle, asynchronous bool) (regerrno error) {
+	var _p0 uint32
+	if watchSubtree {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if asynchronous {
+		_p1 = 1
+	}
+	r0, _, _ := syscall.Syscall6(procRegNotifyChangeKeyValue.Addr(), 5, uintptr(key), uintptr(_p0), uintptr(notifyFilter), uintptr(event), uintptr(_p1), 0)
+	if r0 != 0 {
+		regerrno = syscall.Errno(r0)
 	}
 	return
 }
 
-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
-		}
+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)
 	}
 	return
 }
 
-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
-		}
+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)
 	}
 	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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
 	}
 	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 RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) {
+	r0, _, e1 := syscall.Syscall(procRegisterEventSourceW.Addr(), 2, uintptr(unsafe.Pointer(uncServerName)), uintptr(unsafe.Pointer(sourceName)), 0)
+	handle = Handle(r0)
+	if handle == 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 ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) {
+	r1, _, e1 := syscall.Syscall9(procReportEventW.Addr(), 9, uintptr(log), uintptr(etype), uintptr(category), uintptr(eventId), uintptr(usrSId), uintptr(numStrings), uintptr(dataSize), uintptr(unsafe.Pointer(strings)), uintptr(unsafe.Pointer(rawData)))
 	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 RevertToSelf() (err error) {
+	r1, _, e1 := syscall.Syscall(procRevertToSelf.Addr(), 0, 0, 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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
 	}
 	return
 }
 
-func DeleteFile(path *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procDeleteFileW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0)
+func SetKernelObjectSecurity(handle Handle, securityInformation SECURITY_INFORMATION, securityDescriptor *SECURITY_DESCRIPTOR) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetKernelObjectSecurity.Addr(), 3, uintptr(handle), uintptr(securityInformation), uintptr(unsafe.Pointer(securityDescriptor)))
 	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 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
 	}
-	return
+	return _SetNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl)
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
+	if r0 != 0 {
+		ret = syscall.Errno(r0)
 	}
 	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 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
-		}
+		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 setSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent bool, dacl *ACL, daclDefaulted bool) (err error) {
+	var _p0 uint32
+	if daclPresent {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if daclDefaulted {
+		_p1 = 1
+	}
+	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
-		}
+		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 setSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group *SID, groupDefaulted bool) (err error) {
+	var _p0 uint32
+	if groupDefaulted {
+		_p0 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	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)))
+func setSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner *SID, ownerDefaulted bool) (err error) {
+	var _p0 uint32
+	if ownerDefaulted {
+		_p0 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func SetEndOfFile(handle Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0)
+func setSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) {
+	syscall.Syscall(procSetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0)
+	return
+}
+
+func setSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent bool, sacl *ACL, saclDefaulted bool) (err error) {
+	var _p0 uint32
+	if saclPresent {
+		_p0 = 1
+	}
+	var _p1 uint32
+	if saclDefaulted {
+		_p1 = 1
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func GetSystemTimeAsFileTime(time *Filetime) {
-	syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0)
-	return
-}
-
-func GetSystemTimePreciseAsFileTime(time *Filetime) {
-	syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0)
+func SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) {
+	r0, _, _ := 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)
+	if r0 != 0 {
+		ret = syscall.Errno(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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func SetServiceStatus(service Handle, serviceStatus *SERVICE_STATUS) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(serviceStatus)), 0)
+	if r1 == 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 SetThreadToken(thread *Handle, token Token) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetThreadToken.Addr(), 2, uintptr(unsafe.Pointer(thread)), uintptr(token), 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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)
+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
-		}
+		err = errnoErr(e1)
 	}
 	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 StartServiceCtrlDispatcher(serviceTable *SERVICE_TABLE_ENTRY) (err error) {
+	r1, _, e1 := syscall.Syscall(procStartServiceCtrlDispatcherW.Addr(), 1, uintptr(unsafe.Pointer(serviceTable)), 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)
+func StartService(service Handle, numArgs uint32, argVectors **uint16) (err error) {
+	r1, _, e1 := syscall.Syscall(procStartServiceW.Addr(), 3, uintptr(service), uintptr(numArgs), uintptr(unsafe.Pointer(argVectors)))
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func CancelIoEx(s Handle, o *Overlapped) (err error) {
-	r1, _, e1 := syscall.Syscall(procCancelIoEx.Addr(), 2, uintptr(s), uintptr(unsafe.Pointer(o)), 0)
+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
-		}
+		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)
+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
-		}
+		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 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 {
+		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 CertDeleteCertificateFromStore(certContext *CertContext) (err error) {
+	r1, _, e1 := syscall.Syscall(procCertDeleteCertificateFromStore.Addr(), 1, uintptr(unsafe.Pointer(certContext)), 0, 0)
+	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 CertDuplicateCertificateContext(certContext *CertContext) (dupContext *CertContext) {
+	r0, _, _ := syscall.Syscall(procCertDuplicateCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(certContext)), 0, 0)
+	dupContext = (*CertContext)(unsafe.Pointer(r0))
 	return
 }
 
-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
-		}
+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 {
+		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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
-	}
+func CertFindExtension(objId *byte, countExtensions uint32, extensions *CertExtension) (ret *CertExtension) {
+	r0, _, _ := syscall.Syscall(procCertFindExtension.Addr(), 3, uintptr(unsafe.Pointer(objId)), uintptr(countExtensions), uintptr(unsafe.Pointer(extensions)))
+	ret = (*CertExtension)(unsafe.Pointer(r0))
 	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 CertFreeCertificateChain(ctx *CertChainContext) {
+	syscall.Syscall(procCertFreeCertificateChain.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0)
 	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)
+func CertFreeCertificateContext(ctx *CertContext) (err error) {
+	r1, _, e1 := syscall.Syscall(procCertFreeCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		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)
+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)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		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 CertGetNameString(certContext *CertContext, nameType uint32, flags uint32, typePara unsafe.Pointer, name *uint16, size uint32) (chars uint32) {
+	r0, _, _ := syscall.Syscall6(procCertGetNameStringW.Addr(), 6, uintptr(unsafe.Pointer(certContext)), uintptr(nameType), uintptr(flags), uintptr(typePara), uintptr(unsafe.Pointer(name)), uintptr(size))
+	chars = uint32(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
-	}
-	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
-		}
+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)
+	handle = Handle(r0)
+	if handle == 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)
-	n = uint32(r0)
-	if n == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 {
+		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)
+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)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func CryptDecodeObject(encodingType uint32, structType *byte, encodedBytes *byte, lenEncodedBytes uint32, flags uint32, decoded unsafe.Pointer, decodedLen *uint32) (err error) {
+	r1, _, e1 := syscall.Syscall9(procCryptDecodeObject.Addr(), 7, uintptr(encodingType), uintptr(unsafe.Pointer(structType)), uintptr(unsafe.Pointer(encodedBytes)), uintptr(lenEncodedBytes), uintptr(flags), uintptr(decoded), uintptr(unsafe.Pointer(decodedLen)), 0, 0)
+	if r1 == 0 {
+		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 CryptProtectData(dataIn *DataBlob, name *uint16, optionalEntropy *DataBlob, reserved uintptr, promptStruct *CryptProtectPromptStruct, flags uint32, dataOut *DataBlob) (err error) {
+	r1, _, e1 := syscall.Syscall9(procCryptProtectData.Addr(), 7, uintptr(unsafe.Pointer(dataIn)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(optionalEntropy)), uintptr(reserved), uintptr(unsafe.Pointer(promptStruct)), uintptr(flags), uintptr(unsafe.Pointer(dataOut)), 0, 0)
 	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 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) {
+	r1, _, e1 := syscall.Syscall12(procCryptQueryObject.Addr(), 11, uintptr(objectType), uintptr(object), uintptr(expectedContentTypeFlags), uintptr(expectedFormatTypeFlags), uintptr(flags), uintptr(unsafe.Pointer(msgAndCertEncodingType)), uintptr(unsafe.Pointer(contentType)), uintptr(unsafe.Pointer(formatType)), uintptr(unsafe.Pointer(certStore)), uintptr(unsafe.Pointer(msg)), uintptr(unsafe.Pointer(context)), 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 CryptUnprotectData(dataIn *DataBlob, name **uint16, optionalEntropy *DataBlob, reserved uintptr, promptStruct *CryptProtectPromptStruct, flags uint32, dataOut *DataBlob) (err error) {
+	r1, _, e1 := syscall.Syscall9(procCryptUnprotectData.Addr(), 7, uintptr(unsafe.Pointer(dataIn)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(optionalEntropy)), uintptr(reserved), uintptr(unsafe.Pointer(promptStruct)), uintptr(flags), uintptr(unsafe.Pointer(dataOut)), 0, 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 PFXImportCertStore(pfx *CryptDataBlob, password *uint16, flags uint32) (store Handle, err error) {
+	r0, _, e1 := syscall.Syscall(procPFXImportCertStore.Addr(), 3, uintptr(unsafe.Pointer(pfx)), uintptr(unsafe.Pointer(password)), uintptr(flags))
+	store = Handle(r0)
+	if store == 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 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 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 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 {
+		return
 	}
-	return
+	return _DnsQuery(_p0, qtype, options, extra, qrs, pr)
 }
 
-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 _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)))
+	if r0 != 0 {
+		status = syscall.Errno(r0)
 	}
 	return
 }
 
-func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) {
-	var _p0 uint32
-	if inheritExisting {
-		_p0 = 1
-	} else {
-		_p0 = 0
-	}
-	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
-		}
+func DnsRecordListFree(rl *DNSRecord, freetype uint32) {
+	syscall.Syscall(procDnsRecordListFree.Addr(), 2, uintptr(unsafe.Pointer(rl)), uintptr(freetype), 0)
+	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)
 	}
 	return
 }
 
-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
-		}
+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)
 	}
 	return
 }
 
-func getTickCount64() (ms uint64) {
-	r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0)
-	ms = uint64(r0)
+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)
+	}
 	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 AssignProcessToJobObject(job Handle, process Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 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 CancelIo(s Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procCancelIo.Addr(), 1, uintptr(s), 0, 0)
+	if r1 == 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 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
-		}
+		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)))
+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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func GetCommandLine() (cmd *uint16) {
-	r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0)
-	cmd = (*uint16)(unsafe.Pointer(r0))
+func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) {
+	r1, _, e1 := syscall.Syscall(procCreateDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(sa)), 0)
+	if r1 == 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 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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func LocalFree(hmem Handle) (handle Handle, err error) {
-	r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0)
+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
-		}
+	if handle == 0 {
+		err = errnoErr(e1)
 	}
 	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 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 {
+		err = errnoErr(e1)
 	}
 	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 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 {
+		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)
-	n = uint32(r0)
-	if n == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 {
+		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 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 {
+		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 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 {
+		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)))
+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
-		}
+		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 CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) {
+	var _p0 uint32
+	if initialOwner {
+		_p0 = 1
+	}
+	r0, _, e1 := syscall.Syscall(procCreateMutexW.Addr(), 3, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(_p0), uintptr(unsafe.Pointer(name)))
+	handle = Handle(r0)
+	if handle == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func UnmapViewOfFile(addr uintptr) (err error) {
-	r1, _, e1 := syscall.Syscall(procUnmapViewOfFile.Addr(), 1, uintptr(addr), 0, 0)
+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
-		}
+		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 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
+	}
+	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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
+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 {
+		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 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)))
+	if r1 == 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 DeleteFile(path *uint16) (err error) {
+	r1, _, e1 := syscall.Syscall(procDeleteFileW.Addr(), 1, uintptr(unsafe.Pointer(path)), 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 DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) {
+	r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 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 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 {
-		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) {
+func DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error) {
 	var _p0 uint32
-	if watchSubTree {
+	if bInheritHandle {
 		_p0 = 1
-	} else {
-		_p0 = 0
 	}
-	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)
+	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 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 ExitProcess(exitcode uint32) {
+	syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0)
 	return
 }
 
-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)
-	handle = Handle(r0)
-	if handle == InvalidHandle {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func FindClose(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procFindClose.Addr(), 1, uintptr(handle), 0, 0)
+	if r1 == 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 FindCloseChangeNotification(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procFindCloseChangeNotification.Addr(), 1, uintptr(handle), 0, 0)
+	if r1 == 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 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 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 _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 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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func CertFreeCertificateChain(ctx *CertChainContext) {
-	syscall.Syscall(procCertFreeCertificateChain.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0)
+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 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 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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func CertFreeCertificateContext(ctx *CertContext) (err error) {
-	r1, _, e1 := syscall.Syscall(procCertFreeCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 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 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 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 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 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 {
+		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 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 {
+		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 FindVolumeClose(findVolume Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0)
+	if r1 == 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 FindVolumeMountPointClose(findVolumeMountPoint Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procFindVolumeMountPointClose.Addr(), 1, uintptr(findVolumeMountPoint), 0, 0)
+	if r1 == 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 FlushFileBuffers(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procFlushFileBuffers.Addr(), 1, uintptr(handle), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func GetCurrentProcessId() (pid uint32) {
-	r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0)
-	pid = uint32(r0)
-	return
-}
-
-func GetConsoleMode(console Handle, mode *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall(procGetConsoleMode.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(mode)), 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 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
-		}
+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 GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) {
-	r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 0)
+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 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 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 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 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 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 GetACP() (acp uint32) {
+	r0, _, _ := syscall.Syscall(procGetACP.Addr(), 0, 0, 0, 0)
+	acp = uint32(r0)
 	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 GetCommandLine() (cmd *uint16) {
+	r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0)
+	cmd = (*uint16)(unsafe.Pointer(r0))
 	return
 }
 
-func Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) {
-	r1, _, e1 := syscall.Syscall(procProcess32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0)
+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 Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) {
-	r1, _, e1 := syscall.Syscall(procThread32First.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 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 Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) {
-	r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 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 {
-		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 GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) {
+	r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 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 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 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 GetCurrentProcessId() (pid uint32) {
+	r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0)
+	pid = uint32(r0)
 	return
 }
 
@@ -2102,226 +1803,166 @@ func GetCurrentThreadId() (id uint32) {
 	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 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 {
+		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 GetDriveType(rootPathName *uint16) (driveType uint32) {
+	r0, _, _ := syscall.Syscall(procGetDriveTypeW.Addr(), 1, uintptr(unsafe.Pointer(rootPathName)), 0, 0)
+	driveType = uint32(r0)
 	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 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 SetEvent(event Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 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 ResetEvent(event Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0)
+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 {
-		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 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
-		}
+		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
+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)
 	}
-	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
-		}
+	return
+}
+
+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 {
+		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 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 {
+		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 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)
 	}
-	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
+}
+
+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 ReleaseMutex(mutex Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 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 SleepEx(milliseconds uint32, alertable bool) (ret uint32) {
-	var _p0 uint32
-	if alertable {
-		_p0 = 1
-	} else {
-		_p0 = 0
+func GetLastError() (lasterr error) {
+	r0, _, _ := syscall.Syscall(procGetLastError.Addr(), 0, 0, 0, 0)
+	if r0 != 0 {
+		lasterr = syscall.Errno(r0)
 	}
-	r0, _, _ := syscall.Syscall(procSleepEx.Addr(), 2, uintptr(milliseconds), uintptr(_p0), 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 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)
 	}
 	return
 }
 
-func AssignProcessToJobObject(job Handle, process Handle) (err error) {
-	r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 0)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 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
-		}
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func SetErrorMode(mode uint32) (ret uint32) {
-	r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0)
-	ret = uint32(r0)
+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 {
+		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 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 {
+		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 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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
@@ -2330,36 +1971,25 @@ 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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error) {
-	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
-		}
+func GetProcAddress(module Handle, procname string) (proc uintptr, err error) {
+	var _p0 *byte
+	_p0, err = syscall.BytePtrFromString(procname)
+	if err != nil {
+		return
 	}
-	return
+	return _GetProcAddress(module, _p0)
 }
 
-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
-		}
+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
 }
@@ -2368,202 +1998,155 @@ 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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) {
-	var _p0 uint32
-	if inheritHandle {
-		_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
-		}
+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)
 	}
 	return
 }
 
-func SetProcessPriorityBoost(process Handle, disable bool) (err error) {
-	var _p0 uint32
-	if disable {
-		_p0 = 1
-	} else {
-		_p0 = 0
-	}
-	r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0)
+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 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 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 DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 0)
+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 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
-		}
+		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 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 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))
+func GetStartupInfo(startupInfo *StartupInfo) (err error) {
+	r1, _, e1 := syscall.Syscall(procGetStartupInfoW.Addr(), 1, uintptr(unsafe.Pointer(startupInfo)), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
+	return
+}
+
+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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		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))
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 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 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
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
+func GetSystemTimeAsFileTime(time *Filetime) {
+	syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0)
+	return
+}
+
+func GetSystemTimePreciseAsFileTime(time *Filetime) {
+	syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0)
+	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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-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
-		}
+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 {
+		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 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
-		}
+		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 getTickCount64() (ms uint64) {
+	r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0)
+	ms = uint64(r0)
 	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 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 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 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 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
-		}
+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
 }
@@ -2571,11 +2154,15 @@ func GetVolumeInformation(rootPathName *uint16, volumeNameBuffer *uint16, volume
 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 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 {
+		err = errnoErr(e1)
 	}
 	return
 }
@@ -2583,11 +2170,7 @@ func GetVolumeInformationByHandle(file Handle, volumeNameBuffer *uint16, volumeN
 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 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
@@ -2595,11 +2178,7 @@ func GetVolumeNameForVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint
 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
 }
@@ -2607,1010 +2186,851 @@ func GetVolumePathName(fileName *uint16, volumePathName *uint16, bufferLength ui
 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 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 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 SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procSetVolumeLabelW.Addr(), 2, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeName)), 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 SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procSetVolumeMountPointW.Addr(), 2, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), 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 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 LoadLibraryEx(libname string, zero Handle, flags uintptr) (handle Handle, err error) {
+	var _p0 *uint16
+	_p0, err = syscall.UTF16PtrFromString(libname)
+	if err != nil {
+		return
 	}
-	return
+	return _LoadLibraryEx(_p0, zero, flags)
 }
 
-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
-		}
+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 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
+func LoadLibrary(libname string) (handle Handle, err error) {
+	var _p0 *uint16
+	_p0, err = syscall.UTF16PtrFromString(libname)
+	if err != nil {
+		return
 	}
-	var _p1 uint32
-	if rebootAfterShutdown {
-		_p1 = 1
-	} else {
-		_p1 = 0
+	return _LoadLibrary(_p0)
+}
+
+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 == 0 {
+		err = errnoErr(e1)
 	}
-	r1, _, e1 := syscall.Syscall6(procInitiateSystemShutdownExW.Addr(), 6, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(message)), uintptr(timeout), uintptr(_p0), uintptr(_p1), uintptr(reason))
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+	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 {
+		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 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 GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) {
-	r1, _, e1 := syscall.Syscall(procGetProcessShutdownParameters.Addr(), 2, uintptr(unsafe.Pointer(level)), uintptr(unsafe.Pointer(flags)), 0)
+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 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 {
-		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 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 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 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 coCreateGuid(pguid *GUID) (ret error) {
-	r0, _, _ := syscall.Syscall(procCoCreateGuid.Addr(), 1, uintptr(unsafe.Pointer(pguid)), 0, 0)
-	if r0 != 0 {
-		ret = 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 CoTaskMemFree(address unsafe.Pointer) {
-	syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0)
+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 rtlGetVersion(info *OsVersionInfoEx) (ret error) {
-	r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0)
-	if r0 != 0 {
-		ret = syscall.Errno(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 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 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 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)
+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)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	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)
+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 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)
+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 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)
+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 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)))
+func PulseEvent(event Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procPulseEvent.Addr(), 1, uintptr(event), 0, 0)
 	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func WSAStartup(verreq uint32, data *WSAData) (sockerr error) {
-	r0, _, _ := syscall.Syscall(procWSAStartup.Addr(), 2, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0)
-	if r0 != 0 {
-		sockerr = syscall.Errno(r0)
+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 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 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 {
+		err = errnoErr(e1)
 	}
 	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 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 {
+		err = errnoErr(e1)
 	}
 	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 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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func sendto(s Handle, buf []byte, flags int32, to unsafe.Pointer, tolen int32) (err error) {
+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(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
-		}
+	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 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]
+func ReleaseMutex(mutex Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
-	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
-		}
+	return
+}
+
+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 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 ResetEvent(event Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 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 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 setConsoleCursorPosition(console Handle, position uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetConsoleCursorPosition.Addr(), 2, uintptr(console), uintptr(position), 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 SetConsoleMode(console Handle, mode uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetConsoleMode.Addr(), 2, uintptr(console), uintptr(mode), 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 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 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 SetDefaultDllDirectories(directoryFlags uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetDefaultDllDirectories.Addr(), 1, uintptr(directoryFlags), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 SetDllDirectory(path string) (err error) {
+	var _p0 *uint16
+	_p0, err = syscall.UTF16PtrFromString(path)
+	if err != nil {
+		return
 	}
-	return
+	return _SetDllDirectory(_p0)
 }
 
-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 _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 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 SetEndOfFile(handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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)
+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
-		}
+		err = errnoErr(e1)
 	}
 	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 SetErrorMode(mode uint32) (ret uint32) {
+	r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0)
+	ret = uint32(r0)
 	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 SetEvent(event Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 0, 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 SetFileAttributes(name *uint16, attrs uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetFileAttributesW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(attrs), 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
 	}
 	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 SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetFileCompletionNotificationModes.Addr(), 2, uintptr(handle), uintptr(flags), 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 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 GetHostByName(name string) (h *Hostent, err error) {
-	var _p0 *byte
-	_p0, err = syscall.BytePtrFromString(name)
-	if err != nil {
-		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 {
+		err = errnoErr(e1)
 	}
-	return _GetHostByName(_p0)
+	return
 }
 
-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
-		}
+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 {
+		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
+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 _GetServByName(_p0, _p1)
+	return
 }
 
-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 SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error) {
+	r0, _, e1 := syscall.Syscall6(procSetInformationJobObject.Addr(), 4, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), 0, 0)
+	ret = int(r0)
+	if ret == 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 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 GetProtoByName(name string) (p *Protoent, err error) {
-	var _p0 *byte
-	_p0, err = syscall.BytePtrFromString(name)
-	if err != nil {
-		return
+func SetProcessPriorityBoost(process Handle, disable bool) (err error) {
+	var _p0 uint32
+	if disable {
+		_p0 = 1
 	}
-	return _GetProtoByName(_p0)
-}
-
-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
-		}
+	r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0)
+	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 {
-		return
+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)
 	}
-	return _DnsQuery(_p0, qtype, options, extra, qrs, pr)
+	return
 }
 
-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)))
-	if r0 != 0 {
-		status = syscall.Errno(r0)
+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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func DnsRecordListFree(rl *DNSRecord, freetype uint32) {
-	syscall.Syscall(procDnsRecordListFree.Addr(), 2, uintptr(unsafe.Pointer(rl)), uintptr(freetype), 0)
+func SetStdHandle(stdhandle uint32, handle Handle) (err error) {
+	r1, _, e1 := syscall.Syscall(procSetStdHandle.Addr(), 2, uintptr(stdhandle), uintptr(handle), 0)
+	if r1 == 0 {
+		err = errnoErr(e1)
+	}
 	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
+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 {
+		err = errnoErr(e1)
+	}
 	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 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 FreeAddrInfoW(addrinfo *AddrinfoW) {
-	syscall.Syscall(procFreeAddrInfoW.Addr(), 1, uintptr(unsafe.Pointer(addrinfo)), 0, 0)
+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 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 TerminateJobObject(job Handle, exitCode uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procTerminateJobObject.Addr(), 2, uintptr(job), uintptr(exitCode), 0)
+	if r1 == 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 TerminateProcess(handle Handle, exitcode uint32) (err error) {
+	r1, _, e1 := syscall.Syscall(procTerminateProcess.Addr(), 2, uintptr(handle), uintptr(exitcode), 0)
+	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 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 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 Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) {
+	r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 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 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 {
+		err = errnoErr(e1)
 	}
 	return
 }
 
-func GetACP() (acp uint32) {
-	r0, _, _ := syscall.Syscall(procGetACP.Addr(), 0, 0, 0, 0)
-	acp = 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 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 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 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 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 {
+		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 VirtualLock(addr uintptr, length uintptr) (err error) {
+	r1, _, e1 := syscall.Syscall(procVirtualLock.Addr(), 2, uintptr(addr), uintptr(length), 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 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 {
+		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 VirtualUnlock(addr uintptr, length uintptr) (err error) {
+	r1, _, e1 := syscall.Syscall(procVirtualUnlock.Addr(), 2, uintptr(addr), uintptr(length), 0)
+	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 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 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 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 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 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 ConvertSidToStringSid(sid *SID, stringSid **uint16) (err error) {
-	r1, _, e1 := syscall.Syscall(procConvertSidToStringSidW.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(stringSid)), 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(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 ConvertStringSidToSid(stringSid *uint16, sid **SID) (err error) {
-	r1, _, e1 := syscall.Syscall(procConvertStringSidToSidW.Addr(), 2, uintptr(unsafe.Pointer(stringSid)), uintptr(unsafe.Pointer(sid)), 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 GetLengthSid(sid *SID) (len uint32) {
-	r0, _, _ := syscall.Syscall(procGetLengthSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
-	len = uint32(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 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 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 {
-		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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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)
 	}
 	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)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 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 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)
+	}
 	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 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 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 rtlGetVersion(info *OsVersionInfoEx) (ret error) {
+	r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0)
+	if r0 != 0 {
+		ret = syscall.Errno(r0)
+	}
 	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 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 getSidSubAuthorityCount(sid *SID) (count *uint8) {
-	r0, _, _ := syscall.Syscall(procGetSidSubAuthorityCount.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
-	count = (*uint8)(unsafe.Pointer(r0))
+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 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 CoTaskMemFree(address unsafe.Pointer) {
+	syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0)
 	return
 }
 
-func isValidSid(sid *SID) (isValid bool) {
-	r0, _, _ := syscall.Syscall(procIsValidSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0)
-	isValid = r0 != 0
+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 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 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
-		}
+		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)))
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+func SubscribeServiceChangeNotifications(service Handle, eventType uint32, callback uintptr, callbackCtx uintptr, subscription *uintptr) (ret error) {
+	ret = procSubscribeServiceChangeNotifications.Find()
+	if ret != nil {
+		return
+	}
+	r0, _, _ := syscall.Syscall6(procSubscribeServiceChangeNotifications.Addr(), 5, uintptr(service), uintptr(eventType), uintptr(callback), uintptr(callbackCtx), uintptr(unsafe.Pointer(subscription)), 0)
+	if r0 != 0 {
+		ret = syscall.Errno(r0)
 	}
 	return
 }
 
-func OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) {
-	var _p0 uint32
-	if openAsSelf {
-		_p0 = 1
-	} else {
-		_p0 = 0
-	}
-	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
-		}
+func UnsubscribeServiceChangeNotifications(subscription uintptr) (err error) {
+	err = procUnsubscribeServiceChangeNotifications.Find()
+	if err != nil {
+		return
 	}
+	syscall.Syscall(procUnsubscribeServiceChangeNotifications.Addr(), 1, uintptr(subscription), 0, 0)
 	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 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 RevertToSelf() (err error) {
-	r1, _, e1 := syscall.Syscall(procRevertToSelf.Addr(), 0, 0, 0, 0)
-	if r1 == 0 {
-		if e1 != 0 {
-			err = errnoErr(e1)
-		} else {
-			err = syscall.EINVAL
-		}
+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 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 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)
 	}
 	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 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 AdjustTokenPrivileges(token Token, disableAllPrivileges bool, newstate *Tokenprivileges, buflen uint32, prevstate *Tokenprivileges, returnlen *uint32) (err error) {
-	var _p0 uint32
-	if disableAllPrivileges {
-		_p0 = 1
-	} else {
-		_p0 = 0
+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)
 	}
-	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)))
+	return
+}
+
+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 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)))
-	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 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)
-	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 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)
+func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) {
+	var _p0 uint32
+	if inheritExisting {
+		_p0 = 1
+	}
+	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 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 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
 }
@@ -3618,434 +3038,285 @@ func DuplicateTokenEx(existingToken Token, desiredAccess uint32, tokenAttributes
 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 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 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 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 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 WSACleanup() (err error) {
+	r1, _, e1 := syscall.Syscall(procWSACleanup.Addr(), 0, 0, 0, 0)
+	if r1 == socket_error {
+		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)
-	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 WTSFreeMemory(ptr uintptr) {
-	syscall.Syscall(procWTSFreeMemory.Addr(), 1, uintptr(ptr), 0, 0)
-	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 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 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 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 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 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 _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 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
 }
 
-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 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 _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/encoding/unicode/unicode.go b/vendor/golang.org/x/text/encoding/unicode/unicode.go
index 4850ff3..dd99ad1 100644
--- a/vendor/golang.org/x/text/encoding/unicode/unicode.go
+++ b/vendor/golang.org/x/text/encoding/unicode/unicode.go
@@ -6,6 +6,7 @@
 package unicode // import "golang.org/x/text/encoding/unicode"
 
 import (
+	"bytes"
 	"errors"
 	"unicode/utf16"
 	"unicode/utf8"
@@ -25,15 +26,95 @@ import (
 // the introduction of some kind of error type for conveying the erroneous code
 // point.
 
-// UTF8 is the UTF-8 encoding.
+// UTF8 is the UTF-8 encoding. It neither removes nor adds byte order marks.
 var UTF8 encoding.Encoding = utf8enc
 
+// UTF8BOM is an UTF-8 encoding where the decoder strips a leading byte order
+// mark while the encoder adds one.
+//
+// Some editors add a byte order mark as a signature to UTF-8 files. Although
+// the byte order mark is not useful for detecting byte order in UTF-8, it is
+// sometimes used as a convention to mark UTF-8-encoded files. This relies on
+// the observation that the UTF-8 byte order mark is either an illegal or at
+// least very unlikely sequence in any other character encoding.
+var UTF8BOM encoding.Encoding = utf8bomEncoding{}
+
+type utf8bomEncoding struct{}
+
+func (utf8bomEncoding) String() string {
+	return "UTF-8-BOM"
+}
+
+func (utf8bomEncoding) ID() (identifier.MIB, string) {
+	return identifier.Unofficial, "x-utf8bom"
+}
+
+func (utf8bomEncoding) NewEncoder() *encoding.Encoder {
+	return &encoding.Encoder{
+		Transformer: &utf8bomEncoder{t: runes.ReplaceIllFormed()},
+	}
+}
+
+func (utf8bomEncoding) NewDecoder() *encoding.Decoder {
+	return &encoding.Decoder{Transformer: &utf8bomDecoder{}}
+}
+
 var utf8enc = &internal.Encoding{
 	&internal.SimpleEncoding{utf8Decoder{}, runes.ReplaceIllFormed()},
 	"UTF-8",
 	identifier.UTF8,
 }
 
+type utf8bomDecoder struct {
+	checked bool
+}
+
+func (t *utf8bomDecoder) Reset() {
+	t.checked = false
+}
+
+func (t *utf8bomDecoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err error) {
+	if !t.checked {
+		if !atEOF && len(src) < len(utf8BOM) {
+			if len(src) == 0 {
+				return 0, 0, nil
+			}
+			return 0, 0, transform.ErrShortSrc
+		}
+		if bytes.HasPrefix(src, []byte(utf8BOM)) {
+			nSrc += len(utf8BOM)
+			src = src[len(utf8BOM):]
+		}
+		t.checked = true
+	}
+	nDst, n, err := utf8Decoder.Transform(utf8Decoder{}, dst[nDst:], src, atEOF)
+	nSrc += n
+	return nDst, nSrc, err
+}
+
+type utf8bomEncoder struct {
+	written bool
+	t       transform.Transformer
+}
+
+func (t *utf8bomEncoder) Reset() {
+	t.written = false
+	t.t.Reset()
+}
+
+func (t *utf8bomEncoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err error) {
+	if !t.written {
+		if len(dst) < len(utf8BOM) {
+			return nDst, 0, transform.ErrShortDst
+		}
+		nDst = copy(dst, utf8BOM)
+		t.written = true
+	}
+	n, nSrc, err := utf8Decoder.Transform(utf8Decoder{}, dst[nDst:], src, atEOF)
+	nDst += n
+	return nDst, nSrc, err
+}
+
 type utf8Decoder struct{ transform.NopResetter }
 
 func (utf8Decoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err error) {
@@ -287,16 +368,13 @@ func (u *utf16Decoder) Reset() {
 }
 
 func (u *utf16Decoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err error) {
+	if len(src) < 2 && atEOF && u.current.bomPolicy&requireBOM != 0 {
+		return 0, 0, ErrMissingBOM
+	}
 	if len(src) == 0 {
-		if atEOF && u.current.bomPolicy&requireBOM != 0 {
-			return 0, 0, ErrMissingBOM
-		}
 		return 0, 0, nil
 	}
-	if u.current.bomPolicy&acceptBOM != 0 {
-		if len(src) < 2 {
-			return 0, 0, transform.ErrShortSrc
-		}
+	if len(src) >= 2 && u.current.bomPolicy&acceptBOM != 0 {
 		switch {
 		case src[0] == 0xfe && src[1] == 0xff:
 			u.current.endianness = BigEndian
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/google.golang.org/protobuf/AUTHORS b/vendor/google.golang.org/protobuf/AUTHORS
new file mode 100644
index 0000000..2b00ddb
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/AUTHORS
@@ -0,0 +1,3 @@
+# This source code refers to The Go Authors for copyright purposes.
+# The master list of authors is in the main Go distribution,
+# visible at https://tip.golang.org/AUTHORS.
diff --git a/vendor/google.golang.org/protobuf/CONTRIBUTORS b/vendor/google.golang.org/protobuf/CONTRIBUTORS
new file mode 100644
index 0000000..1fbd3e9
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/CONTRIBUTORS
@@ -0,0 +1,3 @@
+# This source code was written by the Go contributors.
+# The master list of contributors is in the main Go distribution,
+# visible at https://tip.golang.org/CONTRIBUTORS.
diff --git a/vendor/google.golang.org/protobuf/LICENSE b/vendor/google.golang.org/protobuf/LICENSE
new file mode 100644
index 0000000..49ea0f9
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/LICENSE
@@ -0,0 +1,27 @@
+Copyright (c) 2018 The Go Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+   * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+   * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+   * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/google.golang.org/protobuf/PATENTS b/vendor/google.golang.org/protobuf/PATENTS
new file mode 100644
index 0000000..7330990
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/PATENTS
@@ -0,0 +1,22 @@
+Additional IP Rights Grant (Patents)
+
+"This implementation" means the copyrightable works distributed by
+Google as part of the Go project.
+
+Google hereby grants to You a perpetual, worldwide, non-exclusive,
+no-charge, royalty-free, irrevocable (except as stated in this section)
+patent license to make, have made, use, offer to sell, sell, import,
+transfer and otherwise run, modify and propagate the contents of this
+implementation of Go, where such license applies only to those patent
+claims, both currently owned or controlled by Google and acquired in
+the future, licensable by Google that are necessarily infringed by this
+implementation of Go.  This grant does not include claims that would be
+infringed only as a consequence of further modification of this
+implementation.  If you or your agent or exclusive licensee institute or
+order or agree to the institution of patent litigation against any
+entity (including a cross-claim or counterclaim in a lawsuit) alleging
+that this implementation of Go or any code incorporated within this
+implementation of Go constitutes direct or contributory patent
+infringement, or inducement of patent infringement, then any patent
+rights granted to you under this License for this implementation of Go
+shall terminate as of the date such litigation is filed.
diff --git a/vendor/google.golang.org/protobuf/encoding/prototext/decode.go b/vendor/google.golang.org/protobuf/encoding/prototext/decode.go
new file mode 100644
index 0000000..cab95a4
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/encoding/prototext/decode.go
@@ -0,0 +1,791 @@
+// 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.
+
+package prototext
+
+import (
+	"fmt"
+	"strings"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/encoding/text"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/internal/set"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// Unmarshal reads the given []byte into the given proto.Message.
+func Unmarshal(b []byte, m proto.Message) error {
+	return UnmarshalOptions{}.Unmarshal(b, m)
+}
+
+// UnmarshalOptions is a configurable textproto format unmarshaler.
+type UnmarshalOptions struct {
+	pragma.NoUnkeyedLiterals
+
+	// AllowPartial accepts input for messages that will result in missing
+	// required fields. If AllowPartial is false (the default), Unmarshal will
+	// return error if there are any missing required fields.
+	AllowPartial bool
+
+	// DiscardUnknown specifies whether to ignore unknown fields when parsing.
+	// An unknown field is any field whose field name or field number does not
+	// resolve to any known or extension field in the message.
+	// By default, unmarshal rejects unknown fields as an error.
+	DiscardUnknown bool
+
+	// Resolver is used for looking up types when unmarshaling
+	// google.protobuf.Any messages or extension fields.
+	// If nil, this defaults to using protoregistry.GlobalTypes.
+	Resolver interface {
+		protoregistry.MessageTypeResolver
+		protoregistry.ExtensionTypeResolver
+	}
+}
+
+// Unmarshal reads the given []byte and populates the given proto.Message using options in
+// UnmarshalOptions object.
+func (o UnmarshalOptions) Unmarshal(b []byte, m proto.Message) error {
+	return o.unmarshal(b, m)
+}
+
+// unmarshal is a centralized function that all unmarshal operations go through.
+// For profiling purposes, avoid changing the name of this function or
+// introducing other code paths for unmarshal that do not go through this.
+func (o UnmarshalOptions) unmarshal(b []byte, m proto.Message) error {
+	proto.Reset(m)
+
+	if o.Resolver == nil {
+		o.Resolver = protoregistry.GlobalTypes
+	}
+
+	dec := decoder{text.NewDecoder(b), o}
+	if err := dec.unmarshalMessage(m.ProtoReflect(), false); err != nil {
+		return err
+	}
+	if o.AllowPartial {
+		return nil
+	}
+	return proto.CheckInitialized(m)
+}
+
+type decoder struct {
+	*text.Decoder
+	opts UnmarshalOptions
+}
+
+// newError returns an error object with position info.
+func (d decoder) newError(pos int, f string, x ...interface{}) error {
+	line, column := d.Position(pos)
+	head := fmt.Sprintf("(line %d:%d): ", line, column)
+	return errors.New(head+f, x...)
+}
+
+// unexpectedTokenError returns a syntax error for the given unexpected token.
+func (d decoder) unexpectedTokenError(tok text.Token) error {
+	return d.syntaxError(tok.Pos(), "unexpected token: %s", tok.RawString())
+}
+
+// syntaxError returns a syntax error for given position.
+func (d decoder) syntaxError(pos int, f string, x ...interface{}) error {
+	line, column := d.Position(pos)
+	head := fmt.Sprintf("syntax error (line %d:%d): ", line, column)
+	return errors.New(head+f, x...)
+}
+
+// unmarshalMessage unmarshals into the given protoreflect.Message.
+func (d decoder) unmarshalMessage(m pref.Message, checkDelims bool) error {
+	messageDesc := m.Descriptor()
+	if !flags.ProtoLegacy && messageset.IsMessageSet(messageDesc) {
+		return errors.New("no support for proto1 MessageSets")
+	}
+
+	if messageDesc.FullName() == genid.Any_message_fullname {
+		return d.unmarshalAny(m, checkDelims)
+	}
+
+	if checkDelims {
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+
+		if tok.Kind() != text.MessageOpen {
+			return d.unexpectedTokenError(tok)
+		}
+	}
+
+	var seenNums set.Ints
+	var seenOneofs set.Ints
+	fieldDescs := messageDesc.Fields()
+
+	for {
+		// Read field name.
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+		switch typ := tok.Kind(); typ {
+		case text.Name:
+			// Continue below.
+		case text.EOF:
+			if checkDelims {
+				return text.ErrUnexpectedEOF
+			}
+			return nil
+		default:
+			if checkDelims && typ == text.MessageClose {
+				return nil
+			}
+			return d.unexpectedTokenError(tok)
+		}
+
+		// Resolve the field descriptor.
+		var name pref.Name
+		var fd pref.FieldDescriptor
+		var xt pref.ExtensionType
+		var xtErr error
+		var isFieldNumberName bool
+
+		switch tok.NameKind() {
+		case text.IdentName:
+			name = pref.Name(tok.IdentName())
+			fd = fieldDescs.ByName(name)
+			if fd == nil {
+				// The proto name of a group field is in all lowercase,
+				// while the textproto field name is the group message name.
+				gd := fieldDescs.ByName(pref.Name(strings.ToLower(string(name))))
+				if gd != nil && gd.Kind() == pref.GroupKind && gd.Message().Name() == name {
+					fd = gd
+				}
+			} else if fd.Kind() == pref.GroupKind && fd.Message().Name() != name {
+				fd = nil // reset since field name is actually the message name
+			}
+
+		case text.TypeName:
+			// Handle extensions only. This code path is not for Any.
+			xt, xtErr = d.findExtension(pref.FullName(tok.TypeName()))
+
+		case text.FieldNumber:
+			isFieldNumberName = true
+			num := pref.FieldNumber(tok.FieldNumber())
+			if !num.IsValid() {
+				return d.newError(tok.Pos(), "invalid field number: %d", num)
+			}
+			fd = fieldDescs.ByNumber(num)
+			if fd == nil {
+				xt, xtErr = d.opts.Resolver.FindExtensionByNumber(messageDesc.FullName(), num)
+			}
+		}
+
+		if xt != nil {
+			fd = xt.TypeDescriptor()
+			if !messageDesc.ExtensionRanges().Has(fd.Number()) || fd.ContainingMessage().FullName() != messageDesc.FullName() {
+				return d.newError(tok.Pos(), "message %v cannot be extended by %v", messageDesc.FullName(), fd.FullName())
+			}
+		} else if xtErr != nil && xtErr != protoregistry.NotFound {
+			return d.newError(tok.Pos(), "unable to resolve [%s]: %v", tok.RawString(), xtErr)
+		}
+		if flags.ProtoLegacy {
+			if fd != nil && fd.IsWeak() && fd.Message().IsPlaceholder() {
+				fd = nil // reset since the weak reference is not linked in
+			}
+		}
+
+		// Handle unknown fields.
+		if fd == nil {
+			if d.opts.DiscardUnknown || messageDesc.ReservedNames().Has(name) {
+				d.skipValue()
+				continue
+			}
+			return d.newError(tok.Pos(), "unknown field: %v", tok.RawString())
+		}
+
+		// Handle fields identified by field number.
+		if isFieldNumberName {
+			// TODO: Add an option to permit parsing field numbers.
+			//
+			// This requires careful thought as the MarshalOptions.EmitUnknown
+			// option allows formatting unknown fields as the field number and the
+			// best-effort textual representation of the field value.  In that case,
+			// it may not be possible to unmarshal the value from a parser that does
+			// have information about the unknown field.
+			return d.newError(tok.Pos(), "cannot specify field by number: %v", tok.RawString())
+		}
+
+		switch {
+		case fd.IsList():
+			kind := fd.Kind()
+			if kind != pref.MessageKind && kind != pref.GroupKind && !tok.HasSeparator() {
+				return d.syntaxError(tok.Pos(), "missing field separator :")
+			}
+
+			list := m.Mutable(fd).List()
+			if err := d.unmarshalList(fd, list); err != nil {
+				return err
+			}
+
+		case fd.IsMap():
+			mmap := m.Mutable(fd).Map()
+			if err := d.unmarshalMap(fd, mmap); err != nil {
+				return err
+			}
+
+		default:
+			kind := fd.Kind()
+			if kind != pref.MessageKind && kind != pref.GroupKind && !tok.HasSeparator() {
+				return d.syntaxError(tok.Pos(), "missing field separator :")
+			}
+
+			// If field is a oneof, check if it has already been set.
+			if od := fd.ContainingOneof(); od != nil {
+				idx := uint64(od.Index())
+				if seenOneofs.Has(idx) {
+					return d.newError(tok.Pos(), "error parsing %q, oneof %v is already set", tok.RawString(), od.FullName())
+				}
+				seenOneofs.Set(idx)
+			}
+
+			num := uint64(fd.Number())
+			if seenNums.Has(num) {
+				return d.newError(tok.Pos(), "non-repeated field %q is repeated", tok.RawString())
+			}
+
+			if err := d.unmarshalSingular(fd, m); err != nil {
+				return err
+			}
+			seenNums.Set(num)
+		}
+	}
+
+	return nil
+}
+
+// findExtension returns protoreflect.ExtensionType from the Resolver if found.
+func (d decoder) findExtension(xtName pref.FullName) (pref.ExtensionType, error) {
+	xt, err := d.opts.Resolver.FindExtensionByName(xtName)
+	if err == nil {
+		return xt, nil
+	}
+	return messageset.FindMessageSetExtension(d.opts.Resolver, xtName)
+}
+
+// unmarshalSingular unmarshals a non-repeated field value specified by the
+// given FieldDescriptor.
+func (d decoder) unmarshalSingular(fd pref.FieldDescriptor, m pref.Message) error {
+	var val pref.Value
+	var err error
+	switch fd.Kind() {
+	case pref.MessageKind, pref.GroupKind:
+		val = m.NewField(fd)
+		err = d.unmarshalMessage(val.Message(), true)
+	default:
+		val, err = d.unmarshalScalar(fd)
+	}
+	if err == nil {
+		m.Set(fd, val)
+	}
+	return err
+}
+
+// unmarshalScalar unmarshals a scalar/enum protoreflect.Value specified by the
+// given FieldDescriptor.
+func (d decoder) unmarshalScalar(fd pref.FieldDescriptor) (pref.Value, error) {
+	tok, err := d.Read()
+	if err != nil {
+		return pref.Value{}, err
+	}
+
+	if tok.Kind() != text.Scalar {
+		return pref.Value{}, d.unexpectedTokenError(tok)
+	}
+
+	kind := fd.Kind()
+	switch kind {
+	case pref.BoolKind:
+		if b, ok := tok.Bool(); ok {
+			return pref.ValueOfBool(b), nil
+		}
+
+	case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
+		if n, ok := tok.Int32(); ok {
+			return pref.ValueOfInt32(n), nil
+		}
+
+	case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
+		if n, ok := tok.Int64(); ok {
+			return pref.ValueOfInt64(n), nil
+		}
+
+	case pref.Uint32Kind, pref.Fixed32Kind:
+		if n, ok := tok.Uint32(); ok {
+			return pref.ValueOfUint32(n), nil
+		}
+
+	case pref.Uint64Kind, pref.Fixed64Kind:
+		if n, ok := tok.Uint64(); ok {
+			return pref.ValueOfUint64(n), nil
+		}
+
+	case pref.FloatKind:
+		if n, ok := tok.Float32(); ok {
+			return pref.ValueOfFloat32(n), nil
+		}
+
+	case pref.DoubleKind:
+		if n, ok := tok.Float64(); ok {
+			return pref.ValueOfFloat64(n), nil
+		}
+
+	case pref.StringKind:
+		if s, ok := tok.String(); ok {
+			if strs.EnforceUTF8(fd) && !utf8.ValidString(s) {
+				return pref.Value{}, d.newError(tok.Pos(), "contains invalid UTF-8")
+			}
+			return pref.ValueOfString(s), nil
+		}
+
+	case pref.BytesKind:
+		if b, ok := tok.String(); ok {
+			return pref.ValueOfBytes([]byte(b)), nil
+		}
+
+	case pref.EnumKind:
+		if lit, ok := tok.Enum(); ok {
+			// Lookup EnumNumber based on name.
+			if enumVal := fd.Enum().Values().ByName(pref.Name(lit)); enumVal != nil {
+				return pref.ValueOfEnum(enumVal.Number()), nil
+			}
+		}
+		if num, ok := tok.Int32(); ok {
+			return pref.ValueOfEnum(pref.EnumNumber(num)), nil
+		}
+
+	default:
+		panic(fmt.Sprintf("invalid scalar kind %v", kind))
+	}
+
+	return pref.Value{}, d.newError(tok.Pos(), "invalid value for %v type: %v", kind, tok.RawString())
+}
+
+// unmarshalList unmarshals into given protoreflect.List. A list value can
+// either be in [] syntax or simply just a single scalar/message value.
+func (d decoder) unmarshalList(fd pref.FieldDescriptor, list pref.List) error {
+	tok, err := d.Peek()
+	if err != nil {
+		return err
+	}
+
+	switch fd.Kind() {
+	case pref.MessageKind, pref.GroupKind:
+		switch tok.Kind() {
+		case text.ListOpen:
+			d.Read()
+			for {
+				tok, err := d.Peek()
+				if err != nil {
+					return err
+				}
+
+				switch tok.Kind() {
+				case text.ListClose:
+					d.Read()
+					return nil
+				case text.MessageOpen:
+					pval := list.NewElement()
+					if err := d.unmarshalMessage(pval.Message(), true); err != nil {
+						return err
+					}
+					list.Append(pval)
+				default:
+					return d.unexpectedTokenError(tok)
+				}
+			}
+
+		case text.MessageOpen:
+			pval := list.NewElement()
+			if err := d.unmarshalMessage(pval.Message(), true); err != nil {
+				return err
+			}
+			list.Append(pval)
+			return nil
+		}
+
+	default:
+		switch tok.Kind() {
+		case text.ListOpen:
+			d.Read()
+			for {
+				tok, err := d.Peek()
+				if err != nil {
+					return err
+				}
+
+				switch tok.Kind() {
+				case text.ListClose:
+					d.Read()
+					return nil
+				case text.Scalar:
+					pval, err := d.unmarshalScalar(fd)
+					if err != nil {
+						return err
+					}
+					list.Append(pval)
+				default:
+					return d.unexpectedTokenError(tok)
+				}
+			}
+
+		case text.Scalar:
+			pval, err := d.unmarshalScalar(fd)
+			if err != nil {
+				return err
+			}
+			list.Append(pval)
+			return nil
+		}
+	}
+
+	return d.unexpectedTokenError(tok)
+}
+
+// unmarshalMap unmarshals into given protoreflect.Map. A map value is a
+// textproto message containing {key: <kvalue>, value: <mvalue>}.
+func (d decoder) unmarshalMap(fd pref.FieldDescriptor, mmap pref.Map) error {
+	// Determine ahead whether map entry is a scalar type or a message type in
+	// order to call the appropriate unmarshalMapValue func inside
+	// unmarshalMapEntry.
+	var unmarshalMapValue func() (pref.Value, error)
+	switch fd.MapValue().Kind() {
+	case pref.MessageKind, pref.GroupKind:
+		unmarshalMapValue = func() (pref.Value, error) {
+			pval := mmap.NewValue()
+			if err := d.unmarshalMessage(pval.Message(), true); err != nil {
+				return pref.Value{}, err
+			}
+			return pval, nil
+		}
+	default:
+		unmarshalMapValue = func() (pref.Value, error) {
+			return d.unmarshalScalar(fd.MapValue())
+		}
+	}
+
+	tok, err := d.Read()
+	if err != nil {
+		return err
+	}
+	switch tok.Kind() {
+	case text.MessageOpen:
+		return d.unmarshalMapEntry(fd, mmap, unmarshalMapValue)
+
+	case text.ListOpen:
+		for {
+			tok, err := d.Read()
+			if err != nil {
+				return err
+			}
+			switch tok.Kind() {
+			case text.ListClose:
+				return nil
+			case text.MessageOpen:
+				if err := d.unmarshalMapEntry(fd, mmap, unmarshalMapValue); err != nil {
+					return err
+				}
+			default:
+				return d.unexpectedTokenError(tok)
+			}
+		}
+
+	default:
+		return d.unexpectedTokenError(tok)
+	}
+}
+
+// unmarshalMap unmarshals into given protoreflect.Map. A map value is a
+// textproto message containing {key: <kvalue>, value: <mvalue>}.
+func (d decoder) unmarshalMapEntry(fd pref.FieldDescriptor, mmap pref.Map, unmarshalMapValue func() (pref.Value, error)) error {
+	var key pref.MapKey
+	var pval pref.Value
+Loop:
+	for {
+		// Read field name.
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+		switch tok.Kind() {
+		case text.Name:
+			if tok.NameKind() != text.IdentName {
+				if !d.opts.DiscardUnknown {
+					return d.newError(tok.Pos(), "unknown map entry field %q", tok.RawString())
+				}
+				d.skipValue()
+				continue Loop
+			}
+			// Continue below.
+		case text.MessageClose:
+			break Loop
+		default:
+			return d.unexpectedTokenError(tok)
+		}
+
+		switch name := pref.Name(tok.IdentName()); name {
+		case genid.MapEntry_Key_field_name:
+			if !tok.HasSeparator() {
+				return d.syntaxError(tok.Pos(), "missing field separator :")
+			}
+			if key.IsValid() {
+				return d.newError(tok.Pos(), "map entry %q cannot be repeated", name)
+			}
+			val, err := d.unmarshalScalar(fd.MapKey())
+			if err != nil {
+				return err
+			}
+			key = val.MapKey()
+
+		case genid.MapEntry_Value_field_name:
+			if kind := fd.MapValue().Kind(); (kind != pref.MessageKind) && (kind != pref.GroupKind) {
+				if !tok.HasSeparator() {
+					return d.syntaxError(tok.Pos(), "missing field separator :")
+				}
+			}
+			if pval.IsValid() {
+				return d.newError(tok.Pos(), "map entry %q cannot be repeated", name)
+			}
+			pval, err = unmarshalMapValue()
+			if err != nil {
+				return err
+			}
+
+		default:
+			if !d.opts.DiscardUnknown {
+				return d.newError(tok.Pos(), "unknown map entry field %q", name)
+			}
+			d.skipValue()
+		}
+	}
+
+	if !key.IsValid() {
+		key = fd.MapKey().Default().MapKey()
+	}
+	if !pval.IsValid() {
+		switch fd.MapValue().Kind() {
+		case pref.MessageKind, pref.GroupKind:
+			// If value field is not set for message/group types, construct an
+			// empty one as default.
+			pval = mmap.NewValue()
+		default:
+			pval = fd.MapValue().Default()
+		}
+	}
+	mmap.Set(key, pval)
+	return nil
+}
+
+// unmarshalAny unmarshals an Any textproto. It can either be in expanded form
+// or non-expanded form.
+func (d decoder) unmarshalAny(m pref.Message, checkDelims bool) error {
+	var typeURL string
+	var bValue []byte
+	var seenTypeUrl bool
+	var seenValue bool
+	var isExpanded bool
+
+	if checkDelims {
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+
+		if tok.Kind() != text.MessageOpen {
+			return d.unexpectedTokenError(tok)
+		}
+	}
+
+Loop:
+	for {
+		// Read field name. Can only have 3 possible field names, i.e. type_url,
+		// value and type URL name inside [].
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+		if typ := tok.Kind(); typ != text.Name {
+			if checkDelims {
+				if typ == text.MessageClose {
+					break Loop
+				}
+			} else if typ == text.EOF {
+				break Loop
+			}
+			return d.unexpectedTokenError(tok)
+		}
+
+		switch tok.NameKind() {
+		case text.IdentName:
+			// Both type_url and value fields require field separator :.
+			if !tok.HasSeparator() {
+				return d.syntaxError(tok.Pos(), "missing field separator :")
+			}
+
+			switch name := pref.Name(tok.IdentName()); name {
+			case genid.Any_TypeUrl_field_name:
+				if seenTypeUrl {
+					return d.newError(tok.Pos(), "duplicate %v field", genid.Any_TypeUrl_field_fullname)
+				}
+				if isExpanded {
+					return d.newError(tok.Pos(), "conflict with [%s] field", typeURL)
+				}
+				tok, err := d.Read()
+				if err != nil {
+					return err
+				}
+				var ok bool
+				typeURL, ok = tok.String()
+				if !ok {
+					return d.newError(tok.Pos(), "invalid %v field value: %v", genid.Any_TypeUrl_field_fullname, tok.RawString())
+				}
+				seenTypeUrl = true
+
+			case genid.Any_Value_field_name:
+				if seenValue {
+					return d.newError(tok.Pos(), "duplicate %v field", genid.Any_Value_field_fullname)
+				}
+				if isExpanded {
+					return d.newError(tok.Pos(), "conflict with [%s] field", typeURL)
+				}
+				tok, err := d.Read()
+				if err != nil {
+					return err
+				}
+				s, ok := tok.String()
+				if !ok {
+					return d.newError(tok.Pos(), "invalid %v field value: %v", genid.Any_Value_field_fullname, tok.RawString())
+				}
+				bValue = []byte(s)
+				seenValue = true
+
+			default:
+				if !d.opts.DiscardUnknown {
+					return d.newError(tok.Pos(), "invalid field name %q in %v message", tok.RawString(), genid.Any_message_fullname)
+				}
+			}
+
+		case text.TypeName:
+			if isExpanded {
+				return d.newError(tok.Pos(), "cannot have more than one type")
+			}
+			if seenTypeUrl {
+				return d.newError(tok.Pos(), "conflict with type_url field")
+			}
+			typeURL = tok.TypeName()
+			var err error
+			bValue, err = d.unmarshalExpandedAny(typeURL, tok.Pos())
+			if err != nil {
+				return err
+			}
+			isExpanded = true
+
+		default:
+			if !d.opts.DiscardUnknown {
+				return d.newError(tok.Pos(), "invalid field name %q in %v message", tok.RawString(), genid.Any_message_fullname)
+			}
+		}
+	}
+
+	fds := m.Descriptor().Fields()
+	if len(typeURL) > 0 {
+		m.Set(fds.ByNumber(genid.Any_TypeUrl_field_number), pref.ValueOfString(typeURL))
+	}
+	if len(bValue) > 0 {
+		m.Set(fds.ByNumber(genid.Any_Value_field_number), pref.ValueOfBytes(bValue))
+	}
+	return nil
+}
+
+func (d decoder) unmarshalExpandedAny(typeURL string, pos int) ([]byte, error) {
+	mt, err := d.opts.Resolver.FindMessageByURL(typeURL)
+	if err != nil {
+		return nil, d.newError(pos, "unable to resolve message [%v]: %v", typeURL, err)
+	}
+	// Create new message for the embedded message type and unmarshal the value
+	// field into it.
+	m := mt.New()
+	if err := d.unmarshalMessage(m, true); err != nil {
+		return nil, err
+	}
+	// Serialize the embedded message and return the resulting bytes.
+	b, err := proto.MarshalOptions{
+		AllowPartial:  true, // Never check required fields inside an Any.
+		Deterministic: true,
+	}.Marshal(m.Interface())
+	if err != nil {
+		return nil, d.newError(pos, "error in marshaling message into Any.value: %v", err)
+	}
+	return b, nil
+}
+
+// skipValue makes the decoder parse a field value in order to advance the read
+// to the next field. It relies on Read returning an error if the types are not
+// in valid sequence.
+func (d decoder) skipValue() error {
+	tok, err := d.Read()
+	if err != nil {
+		return err
+	}
+	// Only need to continue reading for messages and lists.
+	switch tok.Kind() {
+	case text.MessageOpen:
+		return d.skipMessageValue()
+
+	case text.ListOpen:
+		for {
+			tok, err := d.Read()
+			if err != nil {
+				return err
+			}
+			switch tok.Kind() {
+			case text.ListClose:
+				return nil
+			case text.MessageOpen:
+				return d.skipMessageValue()
+			default:
+				// Skip items. This will not validate whether skipped values are
+				// of the same type or not, same behavior as C++
+				// TextFormat::Parser::AllowUnknownField(true) version 3.8.0.
+				if err := d.skipValue(); err != nil {
+					return err
+				}
+			}
+		}
+	}
+	return nil
+}
+
+// skipMessageValue makes the decoder parse and skip over all fields in a
+// message. It assumes that the previous read type is MessageOpen.
+func (d decoder) skipMessageValue() error {
+	for {
+		tok, err := d.Read()
+		if err != nil {
+			return err
+		}
+		switch tok.Kind() {
+		case text.MessageClose:
+			return nil
+		case text.Name:
+			if err := d.skipValue(); err != nil {
+				return err
+			}
+		}
+	}
+}
diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go b/vendor/google.golang.org/protobuf/encoding/prototext/doc.go
similarity index 52%
rename from vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
rename to vendor/google.golang.org/protobuf/encoding/prototext/doc.go
index 6b223f9..162b4f9 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
+++ b/vendor/google.golang.org/protobuf/encoding/prototext/doc.go
@@ -2,8 +2,6 @@
 // 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
+// Package prototext marshals and unmarshals protocol buffer messages as the
+// textproto format.
+package prototext
diff --git a/vendor/google.golang.org/protobuf/encoding/prototext/encode.go b/vendor/google.golang.org/protobuf/encoding/prototext/encode.go
new file mode 100644
index 0000000..0877d71
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/encoding/prototext/encode.go
@@ -0,0 +1,433 @@
+// 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.
+
+package prototext
+
+import (
+	"fmt"
+	"sort"
+	"strconv"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/encoding/text"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/mapsort"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+const defaultIndent = "  "
+
+// Format formats the message as a multiline string.
+// This function is only intended for human consumption and ignores errors.
+// Do not depend on the output being stable. It may change over time across
+// different versions of the program.
+func Format(m proto.Message) string {
+	return MarshalOptions{Multiline: true}.Format(m)
+}
+
+// Marshal writes the given proto.Message in textproto format using default
+// options. Do not depend on the output being stable. It may change over time
+// across different versions of the program.
+func Marshal(m proto.Message) ([]byte, error) {
+	return MarshalOptions{}.Marshal(m)
+}
+
+// MarshalOptions is a configurable text format marshaler.
+type MarshalOptions struct {
+	pragma.NoUnkeyedLiterals
+
+	// Multiline specifies whether the marshaler should format the output in
+	// indented-form with every textual element on a new line.
+	// If Indent is an empty string, then an arbitrary indent is chosen.
+	Multiline bool
+
+	// Indent specifies the set of indentation characters to use in a multiline
+	// formatted output such that every entry is preceded by Indent and
+	// terminated by a newline. If non-empty, then Multiline is treated as true.
+	// Indent can only be composed of space or tab characters.
+	Indent string
+
+	// EmitASCII specifies whether to format strings and bytes as ASCII only
+	// as opposed to using UTF-8 encoding when possible.
+	EmitASCII bool
+
+	// allowInvalidUTF8 specifies whether to permit the encoding of strings
+	// with invalid UTF-8. This is unexported as it is intended to only
+	// be specified by the Format method.
+	allowInvalidUTF8 bool
+
+	// AllowPartial allows messages that have missing required fields to marshal
+	// without returning an error. If AllowPartial is false (the default),
+	// Marshal will return error if there are any missing required fields.
+	AllowPartial bool
+
+	// EmitUnknown specifies whether to emit unknown fields in the output.
+	// If specified, the unmarshaler may be unable to parse the output.
+	// The default is to exclude unknown fields.
+	EmitUnknown bool
+
+	// Resolver is used for looking up types when expanding google.protobuf.Any
+	// messages. If nil, this defaults to using protoregistry.GlobalTypes.
+	Resolver interface {
+		protoregistry.ExtensionTypeResolver
+		protoregistry.MessageTypeResolver
+	}
+}
+
+// Format formats the message as a string.
+// This method is only intended for human consumption and ignores errors.
+// Do not depend on the output being stable. It may change over time across
+// different versions of the program.
+func (o MarshalOptions) Format(m proto.Message) string {
+	if m == nil || !m.ProtoReflect().IsValid() {
+		return "<nil>" // invalid syntax, but okay since this is for debugging
+	}
+	o.allowInvalidUTF8 = true
+	o.AllowPartial = true
+	o.EmitUnknown = true
+	b, _ := o.Marshal(m)
+	return string(b)
+}
+
+// Marshal writes the given proto.Message in textproto format using options in
+// MarshalOptions object. Do not depend on the output being stable. It may
+// change over time across different versions of the program.
+func (o MarshalOptions) Marshal(m proto.Message) ([]byte, error) {
+	return o.marshal(m)
+}
+
+// marshal is a centralized function that all marshal operations go through.
+// For profiling purposes, avoid changing the name of this function or
+// introducing other code paths for marshal that do not go through this.
+func (o MarshalOptions) marshal(m proto.Message) ([]byte, error) {
+	var delims = [2]byte{'{', '}'}
+
+	if o.Multiline && o.Indent == "" {
+		o.Indent = defaultIndent
+	}
+	if o.Resolver == nil {
+		o.Resolver = protoregistry.GlobalTypes
+	}
+
+	internalEnc, err := text.NewEncoder(o.Indent, delims, o.EmitASCII)
+	if err != nil {
+		return nil, err
+	}
+
+	// Treat nil message interface as an empty message,
+	// in which case there is nothing to output.
+	if m == nil {
+		return []byte{}, nil
+	}
+
+	enc := encoder{internalEnc, o}
+	err = enc.marshalMessage(m.ProtoReflect(), false)
+	if err != nil {
+		return nil, err
+	}
+	out := enc.Bytes()
+	if len(o.Indent) > 0 && len(out) > 0 {
+		out = append(out, '\n')
+	}
+	if o.AllowPartial {
+		return out, nil
+	}
+	return out, proto.CheckInitialized(m)
+}
+
+type encoder struct {
+	*text.Encoder
+	opts MarshalOptions
+}
+
+// marshalMessage marshals the given protoreflect.Message.
+func (e encoder) marshalMessage(m pref.Message, inclDelims bool) error {
+	messageDesc := m.Descriptor()
+	if !flags.ProtoLegacy && messageset.IsMessageSet(messageDesc) {
+		return errors.New("no support for proto1 MessageSets")
+	}
+
+	if inclDelims {
+		e.StartMessage()
+		defer e.EndMessage()
+	}
+
+	// Handle Any expansion.
+	if messageDesc.FullName() == genid.Any_message_fullname {
+		if e.marshalAny(m) {
+			return nil
+		}
+		// If unable to expand, continue on to marshal Any as a regular message.
+	}
+
+	// Marshal known fields.
+	fieldDescs := messageDesc.Fields()
+	size := fieldDescs.Len()
+	for i := 0; i < size; {
+		fd := fieldDescs.Get(i)
+		if od := fd.ContainingOneof(); od != nil {
+			fd = m.WhichOneof(od)
+			i += od.Fields().Len()
+		} else {
+			i++
+		}
+
+		if fd == nil || !m.Has(fd) {
+			continue
+		}
+
+		name := fd.Name()
+		// Use type name for group field name.
+		if fd.Kind() == pref.GroupKind {
+			name = fd.Message().Name()
+		}
+		val := m.Get(fd)
+		if err := e.marshalField(string(name), val, fd); err != nil {
+			return err
+		}
+	}
+
+	// Marshal extensions.
+	if err := e.marshalExtensions(m); err != nil {
+		return err
+	}
+
+	// Marshal unknown fields.
+	if e.opts.EmitUnknown {
+		e.marshalUnknown(m.GetUnknown())
+	}
+
+	return nil
+}
+
+// marshalField marshals the given field with protoreflect.Value.
+func (e encoder) marshalField(name string, val pref.Value, fd pref.FieldDescriptor) error {
+	switch {
+	case fd.IsList():
+		return e.marshalList(name, val.List(), fd)
+	case fd.IsMap():
+		return e.marshalMap(name, val.Map(), fd)
+	default:
+		e.WriteName(name)
+		return e.marshalSingular(val, fd)
+	}
+}
+
+// marshalSingular marshals the given non-repeated field value. This includes
+// all scalar types, enums, messages, and groups.
+func (e encoder) marshalSingular(val pref.Value, fd pref.FieldDescriptor) error {
+	kind := fd.Kind()
+	switch kind {
+	case pref.BoolKind:
+		e.WriteBool(val.Bool())
+
+	case pref.StringKind:
+		s := val.String()
+		if !e.opts.allowInvalidUTF8 && strs.EnforceUTF8(fd) && !utf8.ValidString(s) {
+			return errors.InvalidUTF8(string(fd.FullName()))
+		}
+		e.WriteString(s)
+
+	case pref.Int32Kind, pref.Int64Kind,
+		pref.Sint32Kind, pref.Sint64Kind,
+		pref.Sfixed32Kind, pref.Sfixed64Kind:
+		e.WriteInt(val.Int())
+
+	case pref.Uint32Kind, pref.Uint64Kind,
+		pref.Fixed32Kind, pref.Fixed64Kind:
+		e.WriteUint(val.Uint())
+
+	case pref.FloatKind:
+		// Encoder.WriteFloat handles the special numbers NaN and infinites.
+		e.WriteFloat(val.Float(), 32)
+
+	case pref.DoubleKind:
+		// Encoder.WriteFloat handles the special numbers NaN and infinites.
+		e.WriteFloat(val.Float(), 64)
+
+	case pref.BytesKind:
+		e.WriteString(string(val.Bytes()))
+
+	case pref.EnumKind:
+		num := val.Enum()
+		if desc := fd.Enum().Values().ByNumber(num); desc != nil {
+			e.WriteLiteral(string(desc.Name()))
+		} else {
+			// Use numeric value if there is no enum description.
+			e.WriteInt(int64(num))
+		}
+
+	case pref.MessageKind, pref.GroupKind:
+		return e.marshalMessage(val.Message(), true)
+
+	default:
+		panic(fmt.Sprintf("%v has unknown kind: %v", fd.FullName(), kind))
+	}
+	return nil
+}
+
+// marshalList marshals the given protoreflect.List as multiple name-value fields.
+func (e encoder) marshalList(name string, list pref.List, fd pref.FieldDescriptor) error {
+	size := list.Len()
+	for i := 0; i < size; i++ {
+		e.WriteName(name)
+		if err := e.marshalSingular(list.Get(i), fd); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+// marshalMap marshals the given protoreflect.Map as multiple name-value fields.
+func (e encoder) marshalMap(name string, mmap pref.Map, fd pref.FieldDescriptor) error {
+	var err error
+	mapsort.Range(mmap, fd.MapKey().Kind(), func(key pref.MapKey, val pref.Value) bool {
+		e.WriteName(name)
+		e.StartMessage()
+		defer e.EndMessage()
+
+		e.WriteName(string(genid.MapEntry_Key_field_name))
+		err = e.marshalSingular(key.Value(), fd.MapKey())
+		if err != nil {
+			return false
+		}
+
+		e.WriteName(string(genid.MapEntry_Value_field_name))
+		err = e.marshalSingular(val, fd.MapValue())
+		if err != nil {
+			return false
+		}
+		return true
+	})
+	return err
+}
+
+// marshalExtensions marshals extension fields.
+func (e encoder) marshalExtensions(m pref.Message) error {
+	type entry struct {
+		key   string
+		value pref.Value
+		desc  pref.FieldDescriptor
+	}
+
+	// Get a sorted list based on field key first.
+	var entries []entry
+	m.Range(func(fd pref.FieldDescriptor, v pref.Value) bool {
+		if !fd.IsExtension() {
+			return true
+		}
+		// For MessageSet extensions, the name used is the parent message.
+		name := fd.FullName()
+		if messageset.IsMessageSetExtension(fd) {
+			name = name.Parent()
+		}
+		entries = append(entries, entry{
+			key:   string(name),
+			value: v,
+			desc:  fd,
+		})
+		return true
+	})
+	// Sort extensions lexicographically.
+	sort.Slice(entries, func(i, j int) bool {
+		return entries[i].key < entries[j].key
+	})
+
+	// Write out sorted list.
+	for _, entry := range entries {
+		// Extension field name is the proto field name enclosed in [].
+		name := "[" + entry.key + "]"
+		if err := e.marshalField(name, entry.value, entry.desc); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+// marshalUnknown parses the given []byte and marshals fields out.
+// This function assumes proper encoding in the given []byte.
+func (e encoder) marshalUnknown(b []byte) {
+	const dec = 10
+	const hex = 16
+	for len(b) > 0 {
+		num, wtype, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		e.WriteName(strconv.FormatInt(int64(num), dec))
+
+		switch wtype {
+		case protowire.VarintType:
+			var v uint64
+			v, n = protowire.ConsumeVarint(b)
+			e.WriteUint(v)
+		case protowire.Fixed32Type:
+			var v uint32
+			v, n = protowire.ConsumeFixed32(b)
+			e.WriteLiteral("0x" + strconv.FormatUint(uint64(v), hex))
+		case protowire.Fixed64Type:
+			var v uint64
+			v, n = protowire.ConsumeFixed64(b)
+			e.WriteLiteral("0x" + strconv.FormatUint(v, hex))
+		case protowire.BytesType:
+			var v []byte
+			v, n = protowire.ConsumeBytes(b)
+			e.WriteString(string(v))
+		case protowire.StartGroupType:
+			e.StartMessage()
+			var v []byte
+			v, n = protowire.ConsumeGroup(num, b)
+			e.marshalUnknown(v)
+			e.EndMessage()
+		default:
+			panic(fmt.Sprintf("prototext: error parsing unknown field wire type: %v", wtype))
+		}
+
+		b = b[n:]
+	}
+}
+
+// marshalAny marshals the given google.protobuf.Any message in expanded form.
+// It returns true if it was able to marshal, else false.
+func (e encoder) marshalAny(any pref.Message) bool {
+	// Construct the embedded message.
+	fds := any.Descriptor().Fields()
+	fdType := fds.ByNumber(genid.Any_TypeUrl_field_number)
+	typeURL := any.Get(fdType).String()
+	mt, err := e.opts.Resolver.FindMessageByURL(typeURL)
+	if err != nil {
+		return false
+	}
+	m := mt.New().Interface()
+
+	// Unmarshal bytes into embedded message.
+	fdValue := fds.ByNumber(genid.Any_Value_field_number)
+	value := any.Get(fdValue)
+	err = proto.UnmarshalOptions{
+		AllowPartial: true,
+		Resolver:     e.opts.Resolver,
+	}.Unmarshal(value.Bytes(), m)
+	if err != nil {
+		return false
+	}
+
+	// Get current encoder position. If marshaling fails, reset encoder output
+	// back to this position.
+	pos := e.Snapshot()
+
+	// Field name is the proto field name enclosed in [].
+	e.WriteName("[" + typeURL + "]")
+	err = e.marshalMessage(m.ProtoReflect(), true)
+	if err != nil {
+		e.Reset(pos)
+		return false
+	}
+	return true
+}
diff --git a/vendor/google.golang.org/protobuf/encoding/protowire/wire.go b/vendor/google.golang.org/protobuf/encoding/protowire/wire.go
new file mode 100644
index 0000000..a427f8b
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/encoding/protowire/wire.go
@@ -0,0 +1,538 @@
+// 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.
+
+// Package protowire parses and formats the raw wire encoding.
+// See https://developers.google.com/protocol-buffers/docs/encoding.
+//
+// For marshaling and unmarshaling entire protobuf messages,
+// use the "google.golang.org/protobuf/proto" package instead.
+package protowire
+
+import (
+	"io"
+	"math"
+	"math/bits"
+
+	"google.golang.org/protobuf/internal/errors"
+)
+
+// Number represents the field number.
+type Number int32
+
+const (
+	MinValidNumber      Number = 1
+	FirstReservedNumber Number = 19000
+	LastReservedNumber  Number = 19999
+	MaxValidNumber      Number = 1<<29 - 1
+)
+
+// IsValid reports whether the field number is semantically valid.
+//
+// Note that while numbers within the reserved range are semantically invalid,
+// they are syntactically valid in the wire format.
+// Implementations may treat records with reserved field numbers as unknown.
+func (n Number) IsValid() bool {
+	return MinValidNumber <= n && n < FirstReservedNumber || LastReservedNumber < n && n <= MaxValidNumber
+}
+
+// Type represents the wire type.
+type Type int8
+
+const (
+	VarintType     Type = 0
+	Fixed32Type    Type = 5
+	Fixed64Type    Type = 1
+	BytesType      Type = 2
+	StartGroupType Type = 3
+	EndGroupType   Type = 4
+)
+
+const (
+	_ = -iota
+	errCodeTruncated
+	errCodeFieldNumber
+	errCodeOverflow
+	errCodeReserved
+	errCodeEndGroup
+)
+
+var (
+	errFieldNumber = errors.New("invalid field number")
+	errOverflow    = errors.New("variable length integer overflow")
+	errReserved    = errors.New("cannot parse reserved wire type")
+	errEndGroup    = errors.New("mismatching end group marker")
+	errParse       = errors.New("parse error")
+)
+
+// ParseError converts an error code into an error value.
+// This returns nil if n is a non-negative number.
+func ParseError(n int) error {
+	if n >= 0 {
+		return nil
+	}
+	switch n {
+	case errCodeTruncated:
+		return io.ErrUnexpectedEOF
+	case errCodeFieldNumber:
+		return errFieldNumber
+	case errCodeOverflow:
+		return errOverflow
+	case errCodeReserved:
+		return errReserved
+	case errCodeEndGroup:
+		return errEndGroup
+	default:
+		return errParse
+	}
+}
+
+// ConsumeField parses an entire field record (both tag and value) and returns
+// the field number, the wire type, and the total length.
+// This returns a negative length upon an error (see ParseError).
+//
+// The total length includes the tag header and the end group marker (if the
+// field is a group).
+func ConsumeField(b []byte) (Number, Type, int) {
+	num, typ, n := ConsumeTag(b)
+	if n < 0 {
+		return 0, 0, n // forward error code
+	}
+	m := ConsumeFieldValue(num, typ, b[n:])
+	if m < 0 {
+		return 0, 0, m // forward error code
+	}
+	return num, typ, n + m
+}
+
+// ConsumeFieldValue parses a field value and returns its length.
+// This assumes that the field Number and wire Type have already been parsed.
+// This returns a negative length upon an error (see ParseError).
+//
+// When parsing a group, the length includes the end group marker and
+// the end group is verified to match the starting field number.
+func ConsumeFieldValue(num Number, typ Type, b []byte) (n int) {
+	switch typ {
+	case VarintType:
+		_, n = ConsumeVarint(b)
+		return n
+	case Fixed32Type:
+		_, n = ConsumeFixed32(b)
+		return n
+	case Fixed64Type:
+		_, n = ConsumeFixed64(b)
+		return n
+	case BytesType:
+		_, n = ConsumeBytes(b)
+		return n
+	case StartGroupType:
+		n0 := len(b)
+		for {
+			num2, typ2, n := ConsumeTag(b)
+			if n < 0 {
+				return n // forward error code
+			}
+			b = b[n:]
+			if typ2 == EndGroupType {
+				if num != num2 {
+					return errCodeEndGroup
+				}
+				return n0 - len(b)
+			}
+
+			n = ConsumeFieldValue(num2, typ2, b)
+			if n < 0 {
+				return n // forward error code
+			}
+			b = b[n:]
+		}
+	case EndGroupType:
+		return errCodeEndGroup
+	default:
+		return errCodeReserved
+	}
+}
+
+// AppendTag encodes num and typ as a varint-encoded tag and appends it to b.
+func AppendTag(b []byte, num Number, typ Type) []byte {
+	return AppendVarint(b, EncodeTag(num, typ))
+}
+
+// ConsumeTag parses b as a varint-encoded tag, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeTag(b []byte) (Number, Type, int) {
+	v, n := ConsumeVarint(b)
+	if n < 0 {
+		return 0, 0, n // forward error code
+	}
+	num, typ := DecodeTag(v)
+	if num < MinValidNumber {
+		return 0, 0, errCodeFieldNumber
+	}
+	return num, typ, n
+}
+
+func SizeTag(num Number) int {
+	return SizeVarint(EncodeTag(num, 0)) // wire type has no effect on size
+}
+
+// AppendVarint appends v to b as a varint-encoded uint64.
+func AppendVarint(b []byte, v uint64) []byte {
+	switch {
+	case v < 1<<7:
+		b = append(b, byte(v))
+	case v < 1<<14:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte(v>>7))
+	case v < 1<<21:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte(v>>14))
+	case v < 1<<28:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte(v>>21))
+	case v < 1<<35:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte(v>>28))
+	case v < 1<<42:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte((v>>28)&0x7f|0x80),
+			byte(v>>35))
+	case v < 1<<49:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte((v>>28)&0x7f|0x80),
+			byte((v>>35)&0x7f|0x80),
+			byte(v>>42))
+	case v < 1<<56:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte((v>>28)&0x7f|0x80),
+			byte((v>>35)&0x7f|0x80),
+			byte((v>>42)&0x7f|0x80),
+			byte(v>>49))
+	case v < 1<<63:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte((v>>28)&0x7f|0x80),
+			byte((v>>35)&0x7f|0x80),
+			byte((v>>42)&0x7f|0x80),
+			byte((v>>49)&0x7f|0x80),
+			byte(v>>56))
+	default:
+		b = append(b,
+			byte((v>>0)&0x7f|0x80),
+			byte((v>>7)&0x7f|0x80),
+			byte((v>>14)&0x7f|0x80),
+			byte((v>>21)&0x7f|0x80),
+			byte((v>>28)&0x7f|0x80),
+			byte((v>>35)&0x7f|0x80),
+			byte((v>>42)&0x7f|0x80),
+			byte((v>>49)&0x7f|0x80),
+			byte((v>>56)&0x7f|0x80),
+			1)
+	}
+	return b
+}
+
+// ConsumeVarint parses b as a varint-encoded uint64, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeVarint(b []byte) (v uint64, n int) {
+	var y uint64
+	if len(b) <= 0 {
+		return 0, errCodeTruncated
+	}
+	v = uint64(b[0])
+	if v < 0x80 {
+		return v, 1
+	}
+	v -= 0x80
+
+	if len(b) <= 1 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[1])
+	v += y << 7
+	if y < 0x80 {
+		return v, 2
+	}
+	v -= 0x80 << 7
+
+	if len(b) <= 2 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[2])
+	v += y << 14
+	if y < 0x80 {
+		return v, 3
+	}
+	v -= 0x80 << 14
+
+	if len(b) <= 3 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[3])
+	v += y << 21
+	if y < 0x80 {
+		return v, 4
+	}
+	v -= 0x80 << 21
+
+	if len(b) <= 4 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[4])
+	v += y << 28
+	if y < 0x80 {
+		return v, 5
+	}
+	v -= 0x80 << 28
+
+	if len(b) <= 5 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[5])
+	v += y << 35
+	if y < 0x80 {
+		return v, 6
+	}
+	v -= 0x80 << 35
+
+	if len(b) <= 6 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[6])
+	v += y << 42
+	if y < 0x80 {
+		return v, 7
+	}
+	v -= 0x80 << 42
+
+	if len(b) <= 7 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[7])
+	v += y << 49
+	if y < 0x80 {
+		return v, 8
+	}
+	v -= 0x80 << 49
+
+	if len(b) <= 8 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[8])
+	v += y << 56
+	if y < 0x80 {
+		return v, 9
+	}
+	v -= 0x80 << 56
+
+	if len(b) <= 9 {
+		return 0, errCodeTruncated
+	}
+	y = uint64(b[9])
+	v += y << 63
+	if y < 2 {
+		return v, 10
+	}
+	return 0, errCodeOverflow
+}
+
+// SizeVarint returns the encoded size of a varint.
+// The size is guaranteed to be within 1 and 10, inclusive.
+func SizeVarint(v uint64) int {
+	// This computes 1 + (bits.Len64(v)-1)/7.
+	// 9/64 is a good enough approximation of 1/7
+	return int(9*uint32(bits.Len64(v))+64) / 64
+}
+
+// AppendFixed32 appends v to b as a little-endian uint32.
+func AppendFixed32(b []byte, v uint32) []byte {
+	return append(b,
+		byte(v>>0),
+		byte(v>>8),
+		byte(v>>16),
+		byte(v>>24))
+}
+
+// ConsumeFixed32 parses b as a little-endian uint32, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeFixed32(b []byte) (v uint32, n int) {
+	if len(b) < 4 {
+		return 0, errCodeTruncated
+	}
+	v = uint32(b[0])<<0 | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24
+	return v, 4
+}
+
+// SizeFixed32 returns the encoded size of a fixed32; which is always 4.
+func SizeFixed32() int {
+	return 4
+}
+
+// AppendFixed64 appends v to b as a little-endian uint64.
+func AppendFixed64(b []byte, v uint64) []byte {
+	return append(b,
+		byte(v>>0),
+		byte(v>>8),
+		byte(v>>16),
+		byte(v>>24),
+		byte(v>>32),
+		byte(v>>40),
+		byte(v>>48),
+		byte(v>>56))
+}
+
+// ConsumeFixed64 parses b as a little-endian uint64, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeFixed64(b []byte) (v uint64, n int) {
+	if len(b) < 8 {
+		return 0, errCodeTruncated
+	}
+	v = uint64(b[0])<<0 | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
+	return v, 8
+}
+
+// SizeFixed64 returns the encoded size of a fixed64; which is always 8.
+func SizeFixed64() int {
+	return 8
+}
+
+// AppendBytes appends v to b as a length-prefixed bytes value.
+func AppendBytes(b []byte, v []byte) []byte {
+	return append(AppendVarint(b, uint64(len(v))), v...)
+}
+
+// ConsumeBytes parses b as a length-prefixed bytes value, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeBytes(b []byte) (v []byte, n int) {
+	m, n := ConsumeVarint(b)
+	if n < 0 {
+		return nil, n // forward error code
+	}
+	if m > uint64(len(b[n:])) {
+		return nil, errCodeTruncated
+	}
+	return b[n:][:m], n + int(m)
+}
+
+// SizeBytes returns the encoded size of a length-prefixed bytes value,
+// given only the length.
+func SizeBytes(n int) int {
+	return SizeVarint(uint64(n)) + n
+}
+
+// AppendString appends v to b as a length-prefixed bytes value.
+func AppendString(b []byte, v string) []byte {
+	return append(AppendVarint(b, uint64(len(v))), v...)
+}
+
+// ConsumeString parses b as a length-prefixed bytes value, reporting its length.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeString(b []byte) (v string, n int) {
+	bb, n := ConsumeBytes(b)
+	return string(bb), n
+}
+
+// AppendGroup appends v to b as group value, with a trailing end group marker.
+// The value v must not contain the end marker.
+func AppendGroup(b []byte, num Number, v []byte) []byte {
+	return AppendVarint(append(b, v...), EncodeTag(num, EndGroupType))
+}
+
+// ConsumeGroup parses b as a group value until the trailing end group marker,
+// and verifies that the end marker matches the provided num. The value v
+// does not contain the end marker, while the length does contain the end marker.
+// This returns a negative length upon an error (see ParseError).
+func ConsumeGroup(num Number, b []byte) (v []byte, n int) {
+	n = ConsumeFieldValue(num, StartGroupType, b)
+	if n < 0 {
+		return nil, n // forward error code
+	}
+	b = b[:n]
+
+	// Truncate off end group marker, but need to handle denormalized varints.
+	// Assuming end marker is never 0 (which is always the case since
+	// EndGroupType is non-zero), we can truncate all trailing bytes where the
+	// lower 7 bits are all zero (implying that the varint is denormalized).
+	for len(b) > 0 && b[len(b)-1]&0x7f == 0 {
+		b = b[:len(b)-1]
+	}
+	b = b[:len(b)-SizeTag(num)]
+	return b, n
+}
+
+// SizeGroup returns the encoded size of a group, given only the length.
+func SizeGroup(num Number, n int) int {
+	return n + SizeTag(num)
+}
+
+// DecodeTag decodes the field Number and wire Type from its unified form.
+// The Number is -1 if the decoded field number overflows int32.
+// Other than overflow, this does not check for field number validity.
+func DecodeTag(x uint64) (Number, Type) {
+	// NOTE: MessageSet allows for larger field numbers than normal.
+	if x>>3 > uint64(math.MaxInt32) {
+		return -1, 0
+	}
+	return Number(x >> 3), Type(x & 7)
+}
+
+// EncodeTag encodes the field Number and wire Type into its unified form.
+func EncodeTag(num Number, typ Type) uint64 {
+	return uint64(num)<<3 | uint64(typ&7)
+}
+
+// DecodeZigZag decodes a zig-zag-encoded uint64 as an int64.
+//	Input:  {…,  5,  3,  1,  0,  2,  4,  6, …}
+//	Output: {…, -3, -2, -1,  0, +1, +2, +3, …}
+func DecodeZigZag(x uint64) int64 {
+	return int64(x>>1) ^ int64(x)<<63>>63
+}
+
+// EncodeZigZag encodes an int64 as a zig-zag-encoded uint64.
+//	Input:  {…, -3, -2, -1,  0, +1, +2, +3, …}
+//	Output: {…,  5,  3,  1,  0,  2,  4,  6, …}
+func EncodeZigZag(x int64) uint64 {
+	return uint64(x<<1) ^ uint64(x>>63)
+}
+
+// DecodeBool decodes a uint64 as a bool.
+//	Input:  {    0,    1,    2, …}
+//	Output: {false, true, true, …}
+func DecodeBool(x uint64) bool {
+	return x != 0
+}
+
+// EncodeBool encodes a bool as a uint64.
+//	Input:  {false, true}
+//	Output: {    0,    1}
+func EncodeBool(x bool) uint64 {
+	if x {
+		return 1
+	}
+	return 0
+}
diff --git a/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go b/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go
new file mode 100644
index 0000000..e7af0fe
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go
@@ -0,0 +1,316 @@
+// 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.
+
+// Package descfmt provides functionality to format descriptors.
+package descfmt
+
+import (
+	"fmt"
+	"io"
+	"reflect"
+	"strconv"
+	"strings"
+
+	"google.golang.org/protobuf/internal/detrand"
+	"google.golang.org/protobuf/internal/pragma"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type list interface {
+	Len() int
+	pragma.DoNotImplement
+}
+
+func FormatList(s fmt.State, r rune, vs list) {
+	io.WriteString(s, formatListOpt(vs, true, r == 'v' && (s.Flag('+') || s.Flag('#'))))
+}
+func formatListOpt(vs list, isRoot, allowMulti bool) string {
+	start, end := "[", "]"
+	if isRoot {
+		var name string
+		switch vs.(type) {
+		case pref.Names:
+			name = "Names"
+		case pref.FieldNumbers:
+			name = "FieldNumbers"
+		case pref.FieldRanges:
+			name = "FieldRanges"
+		case pref.EnumRanges:
+			name = "EnumRanges"
+		case pref.FileImports:
+			name = "FileImports"
+		case pref.Descriptor:
+			name = reflect.ValueOf(vs).MethodByName("Get").Type().Out(0).Name() + "s"
+		}
+		start, end = name+"{", "}"
+	}
+
+	var ss []string
+	switch vs := vs.(type) {
+	case pref.Names:
+		for i := 0; i < vs.Len(); i++ {
+			ss = append(ss, fmt.Sprint(vs.Get(i)))
+		}
+		return start + joinStrings(ss, false) + end
+	case pref.FieldNumbers:
+		for i := 0; i < vs.Len(); i++ {
+			ss = append(ss, fmt.Sprint(vs.Get(i)))
+		}
+		return start + joinStrings(ss, false) + end
+	case pref.FieldRanges:
+		for i := 0; i < vs.Len(); i++ {
+			r := vs.Get(i)
+			if r[0]+1 == r[1] {
+				ss = append(ss, fmt.Sprintf("%d", r[0]))
+			} else {
+				ss = append(ss, fmt.Sprintf("%d:%d", r[0], r[1])) // enum ranges are end exclusive
+			}
+		}
+		return start + joinStrings(ss, false) + end
+	case pref.EnumRanges:
+		for i := 0; i < vs.Len(); i++ {
+			r := vs.Get(i)
+			if r[0] == r[1] {
+				ss = append(ss, fmt.Sprintf("%d", r[0]))
+			} else {
+				ss = append(ss, fmt.Sprintf("%d:%d", r[0], int64(r[1])+1)) // enum ranges are end inclusive
+			}
+		}
+		return start + joinStrings(ss, false) + end
+	case pref.FileImports:
+		for i := 0; i < vs.Len(); i++ {
+			var rs records
+			rs.Append(reflect.ValueOf(vs.Get(i)), "Path", "Package", "IsPublic", "IsWeak")
+			ss = append(ss, "{"+rs.Join()+"}")
+		}
+		return start + joinStrings(ss, allowMulti) + end
+	default:
+		_, isEnumValue := vs.(pref.EnumValueDescriptors)
+		for i := 0; i < vs.Len(); i++ {
+			m := reflect.ValueOf(vs).MethodByName("Get")
+			v := m.Call([]reflect.Value{reflect.ValueOf(i)})[0].Interface()
+			ss = append(ss, formatDescOpt(v.(pref.Descriptor), false, allowMulti && !isEnumValue))
+		}
+		return start + joinStrings(ss, allowMulti && isEnumValue) + end
+	}
+}
+
+// descriptorAccessors is a list of accessors to print for each descriptor.
+//
+// Do not print all accessors since some contain redundant information,
+// while others are pointers that we do not want to follow since the descriptor
+// is actually a cyclic graph.
+//
+// Using a list allows us to print the accessors in a sensible order.
+var descriptorAccessors = map[reflect.Type][]string{
+	reflect.TypeOf((*pref.FileDescriptor)(nil)).Elem():      {"Path", "Package", "Imports", "Messages", "Enums", "Extensions", "Services"},
+	reflect.TypeOf((*pref.MessageDescriptor)(nil)).Elem():   {"IsMapEntry", "Fields", "Oneofs", "ReservedNames", "ReservedRanges", "RequiredNumbers", "ExtensionRanges", "Messages", "Enums", "Extensions"},
+	reflect.TypeOf((*pref.FieldDescriptor)(nil)).Elem():     {"Number", "Cardinality", "Kind", "HasJSONName", "JSONName", "HasPresence", "IsExtension", "IsPacked", "IsWeak", "IsList", "IsMap", "MapKey", "MapValue", "HasDefault", "Default", "ContainingOneof", "ContainingMessage", "Message", "Enum"},
+	reflect.TypeOf((*pref.OneofDescriptor)(nil)).Elem():     {"Fields"}, // not directly used; must keep in sync with formatDescOpt
+	reflect.TypeOf((*pref.EnumDescriptor)(nil)).Elem():      {"Values", "ReservedNames", "ReservedRanges"},
+	reflect.TypeOf((*pref.EnumValueDescriptor)(nil)).Elem(): {"Number"},
+	reflect.TypeOf((*pref.ServiceDescriptor)(nil)).Elem():   {"Methods"},
+	reflect.TypeOf((*pref.MethodDescriptor)(nil)).Elem():    {"Input", "Output", "IsStreamingClient", "IsStreamingServer"},
+}
+
+func FormatDesc(s fmt.State, r rune, t pref.Descriptor) {
+	io.WriteString(s, formatDescOpt(t, true, r == 'v' && (s.Flag('+') || s.Flag('#'))))
+}
+func formatDescOpt(t pref.Descriptor, isRoot, allowMulti bool) string {
+	rv := reflect.ValueOf(t)
+	rt := rv.MethodByName("ProtoType").Type().In(0)
+
+	start, end := "{", "}"
+	if isRoot {
+		start = rt.Name() + "{"
+	}
+
+	_, isFile := t.(pref.FileDescriptor)
+	rs := records{allowMulti: allowMulti}
+	if t.IsPlaceholder() {
+		if isFile {
+			rs.Append(rv, "Path", "Package", "IsPlaceholder")
+		} else {
+			rs.Append(rv, "FullName", "IsPlaceholder")
+		}
+	} else {
+		switch {
+		case isFile:
+			rs.Append(rv, "Syntax")
+		case isRoot:
+			rs.Append(rv, "Syntax", "FullName")
+		default:
+			rs.Append(rv, "Name")
+		}
+		switch t := t.(type) {
+		case pref.FieldDescriptor:
+			for _, s := range descriptorAccessors[rt] {
+				switch s {
+				case "MapKey":
+					if k := t.MapKey(); k != nil {
+						rs.recs = append(rs.recs, [2]string{"MapKey", k.Kind().String()})
+					}
+				case "MapValue":
+					if v := t.MapValue(); v != nil {
+						switch v.Kind() {
+						case pref.EnumKind:
+							rs.recs = append(rs.recs, [2]string{"MapValue", string(v.Enum().FullName())})
+						case pref.MessageKind, pref.GroupKind:
+							rs.recs = append(rs.recs, [2]string{"MapValue", string(v.Message().FullName())})
+						default:
+							rs.recs = append(rs.recs, [2]string{"MapValue", v.Kind().String()})
+						}
+					}
+				case "ContainingOneof":
+					if od := t.ContainingOneof(); od != nil {
+						rs.recs = append(rs.recs, [2]string{"Oneof", string(od.Name())})
+					}
+				case "ContainingMessage":
+					if t.IsExtension() {
+						rs.recs = append(rs.recs, [2]string{"Extendee", string(t.ContainingMessage().FullName())})
+					}
+				case "Message":
+					if !t.IsMap() {
+						rs.Append(rv, s)
+					}
+				default:
+					rs.Append(rv, s)
+				}
+			}
+		case pref.OneofDescriptor:
+			var ss []string
+			fs := t.Fields()
+			for i := 0; i < fs.Len(); i++ {
+				ss = append(ss, string(fs.Get(i).Name()))
+			}
+			if len(ss) > 0 {
+				rs.recs = append(rs.recs, [2]string{"Fields", "[" + joinStrings(ss, false) + "]"})
+			}
+		default:
+			rs.Append(rv, descriptorAccessors[rt]...)
+		}
+		if rv.MethodByName("GoType").IsValid() {
+			rs.Append(rv, "GoType")
+		}
+	}
+	return start + rs.Join() + end
+}
+
+type records struct {
+	recs       [][2]string
+	allowMulti bool
+}
+
+func (rs *records) Append(v reflect.Value, accessors ...string) {
+	for _, a := range accessors {
+		var rv reflect.Value
+		if m := v.MethodByName(a); m.IsValid() {
+			rv = m.Call(nil)[0]
+		}
+		if v.Kind() == reflect.Struct && !rv.IsValid() {
+			rv = v.FieldByName(a)
+		}
+		if !rv.IsValid() {
+			panic(fmt.Sprintf("unknown accessor: %v.%s", v.Type(), a))
+		}
+		if _, ok := rv.Interface().(pref.Value); ok {
+			rv = rv.MethodByName("Interface").Call(nil)[0]
+			if !rv.IsNil() {
+				rv = rv.Elem()
+			}
+		}
+
+		// Ignore zero values.
+		var isZero bool
+		switch rv.Kind() {
+		case reflect.Interface, reflect.Slice:
+			isZero = rv.IsNil()
+		case reflect.Bool:
+			isZero = rv.Bool() == false
+		case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
+			isZero = rv.Int() == 0
+		case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
+			isZero = rv.Uint() == 0
+		case reflect.String:
+			isZero = rv.String() == ""
+		}
+		if n, ok := rv.Interface().(list); ok {
+			isZero = n.Len() == 0
+		}
+		if isZero {
+			continue
+		}
+
+		// Format the value.
+		var s string
+		v := rv.Interface()
+		switch v := v.(type) {
+		case list:
+			s = formatListOpt(v, false, rs.allowMulti)
+		case pref.FieldDescriptor, pref.OneofDescriptor, pref.EnumValueDescriptor, pref.MethodDescriptor:
+			s = string(v.(pref.Descriptor).Name())
+		case pref.Descriptor:
+			s = string(v.FullName())
+		case string:
+			s = strconv.Quote(v)
+		case []byte:
+			s = fmt.Sprintf("%q", v)
+		default:
+			s = fmt.Sprint(v)
+		}
+		rs.recs = append(rs.recs, [2]string{a, s})
+	}
+}
+
+func (rs *records) Join() string {
+	var ss []string
+
+	// In single line mode, simply join all records with commas.
+	if !rs.allowMulti {
+		for _, r := range rs.recs {
+			ss = append(ss, r[0]+formatColon(0)+r[1])
+		}
+		return joinStrings(ss, false)
+	}
+
+	// In allowMulti line mode, align single line records for more readable output.
+	var maxLen int
+	flush := func(i int) {
+		for _, r := range rs.recs[len(ss):i] {
+			ss = append(ss, r[0]+formatColon(maxLen-len(r[0]))+r[1])
+		}
+		maxLen = 0
+	}
+	for i, r := range rs.recs {
+		if isMulti := strings.Contains(r[1], "\n"); isMulti {
+			flush(i)
+			ss = append(ss, r[0]+formatColon(0)+strings.Join(strings.Split(r[1], "\n"), "\n\t"))
+		} else if maxLen < len(r[0]) {
+			maxLen = len(r[0])
+		}
+	}
+	flush(len(rs.recs))
+	return joinStrings(ss, true)
+}
+
+func formatColon(padding int) string {
+	// Deliberately introduce instability into the debug output to
+	// discourage users from performing string comparisons.
+	// This provides us flexibility to change the output in the future.
+	if detrand.Bool() {
+		return ":" + strings.Repeat(" ", 1+padding) // use non-breaking spaces (U+00a0)
+	} else {
+		return ":" + strings.Repeat(" ", 1+padding) // use regular spaces (U+0020)
+	}
+}
+
+func joinStrings(ss []string, isMulti bool) string {
+	if len(ss) == 0 {
+		return ""
+	}
+	if isMulti {
+		return "\n\t" + strings.Join(ss, "\n\t") + "\n"
+	}
+	return strings.Join(ss, ", ")
+}
diff --git a/vendor/google.golang.org/protobuf/internal/descopts/options.go b/vendor/google.golang.org/protobuf/internal/descopts/options.go
new file mode 100644
index 0000000..8401be8
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/descopts/options.go
@@ -0,0 +1,29 @@
+// 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 descopts contains the nil pointers to concrete descriptor options.
+//
+// This package exists as a form of reverse dependency injection so that certain
+// packages (e.g., internal/filedesc and internal/filetype can avoid a direct
+// dependency on the descriptor proto package).
+package descopts
+
+import pref "google.golang.org/protobuf/reflect/protoreflect"
+
+// These variables are set by the init function in descriptor.pb.go via logic
+// in internal/filetype. In other words, so long as the descriptor proto package
+// is linked in, these variables will be populated.
+//
+// Each variable is populated with a nil pointer to the options struct.
+var (
+	File           pref.ProtoMessage
+	Enum           pref.ProtoMessage
+	EnumValue      pref.ProtoMessage
+	Message        pref.ProtoMessage
+	Field          pref.ProtoMessage
+	Oneof          pref.ProtoMessage
+	ExtensionRange pref.ProtoMessage
+	Service        pref.ProtoMessage
+	Method         pref.ProtoMessage
+)
diff --git a/vendor/google.golang.org/protobuf/internal/detrand/rand.go b/vendor/google.golang.org/protobuf/internal/detrand/rand.go
new file mode 100644
index 0000000..a904dd1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/detrand/rand.go
@@ -0,0 +1,61 @@
+// 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.
+
+// Package detrand provides deterministically random functionality.
+//
+// The pseudo-randomness of these functions is seeded by the program binary
+// itself and guarantees that the output does not change within a program,
+// while ensuring that the output is unstable across different builds.
+package detrand
+
+import (
+	"encoding/binary"
+	"hash/fnv"
+	"os"
+)
+
+// Disable disables detrand such that all functions returns the zero value.
+// This function is not concurrent-safe and must be called during program init.
+func Disable() {
+	randSeed = 0
+}
+
+// Bool returns a deterministically random boolean.
+func Bool() bool {
+	return randSeed%2 == 1
+}
+
+// randSeed is a best-effort at an approximate hash of the Go binary.
+var randSeed = binaryHash()
+
+func binaryHash() uint64 {
+	// Open the Go binary.
+	s, err := os.Executable()
+	if err != nil {
+		return 0
+	}
+	f, err := os.Open(s)
+	if err != nil {
+		return 0
+	}
+	defer f.Close()
+
+	// Hash the size and several samples of the Go binary.
+	const numSamples = 8
+	var buf [64]byte
+	h := fnv.New64()
+	fi, err := f.Stat()
+	if err != nil {
+		return 0
+	}
+	binary.LittleEndian.PutUint64(buf[:8], uint64(fi.Size()))
+	h.Write(buf[:8])
+	for i := int64(0); i < numSamples; i++ {
+		if _, err := f.ReadAt(buf[:], i*fi.Size()/numSamples); err != nil {
+			return 0
+		}
+		h.Write(buf[:])
+	}
+	return h.Sum64()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go b/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go
new file mode 100644
index 0000000..fdd9b13
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go
@@ -0,0 +1,213 @@
+// 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.
+
+// Package defval marshals and unmarshals textual forms of default values.
+//
+// This package handles both the form historically used in Go struct field tags
+// and also the form used by google.protobuf.FieldDescriptorProto.default_value
+// since they differ in superficial ways.
+package defval
+
+import (
+	"fmt"
+	"math"
+	"strconv"
+
+	ptext "google.golang.org/protobuf/internal/encoding/text"
+	errors "google.golang.org/protobuf/internal/errors"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Format is the serialization format used to represent the default value.
+type Format int
+
+const (
+	_ Format = iota
+
+	// Descriptor uses the serialization format that protoc uses with the
+	// google.protobuf.FieldDescriptorProto.default_value field.
+	Descriptor
+
+	// GoTag uses the historical serialization format in Go struct field tags.
+	GoTag
+)
+
+// Unmarshal deserializes the default string s according to the given kind k.
+// When k is an enum, a list of enum value descriptors must be provided.
+func Unmarshal(s string, k pref.Kind, evs pref.EnumValueDescriptors, f Format) (pref.Value, pref.EnumValueDescriptor, error) {
+	switch k {
+	case pref.BoolKind:
+		if f == GoTag {
+			switch s {
+			case "1":
+				return pref.ValueOfBool(true), nil, nil
+			case "0":
+				return pref.ValueOfBool(false), nil, nil
+			}
+		} else {
+			switch s {
+			case "true":
+				return pref.ValueOfBool(true), nil, nil
+			case "false":
+				return pref.ValueOfBool(false), nil, nil
+			}
+		}
+	case pref.EnumKind:
+		if f == GoTag {
+			// Go tags use the numeric form of the enum value.
+			if n, err := strconv.ParseInt(s, 10, 32); err == nil {
+				if ev := evs.ByNumber(pref.EnumNumber(n)); ev != nil {
+					return pref.ValueOfEnum(ev.Number()), ev, nil
+				}
+			}
+		} else {
+			// Descriptor default_value use the enum identifier.
+			ev := evs.ByName(pref.Name(s))
+			if ev != nil {
+				return pref.ValueOfEnum(ev.Number()), ev, nil
+			}
+		}
+	case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
+		if v, err := strconv.ParseInt(s, 10, 32); err == nil {
+			return pref.ValueOfInt32(int32(v)), nil, nil
+		}
+	case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
+		if v, err := strconv.ParseInt(s, 10, 64); err == nil {
+			return pref.ValueOfInt64(int64(v)), nil, nil
+		}
+	case pref.Uint32Kind, pref.Fixed32Kind:
+		if v, err := strconv.ParseUint(s, 10, 32); err == nil {
+			return pref.ValueOfUint32(uint32(v)), nil, nil
+		}
+	case pref.Uint64Kind, pref.Fixed64Kind:
+		if v, err := strconv.ParseUint(s, 10, 64); err == nil {
+			return pref.ValueOfUint64(uint64(v)), nil, nil
+		}
+	case pref.FloatKind, pref.DoubleKind:
+		var v float64
+		var err error
+		switch s {
+		case "-inf":
+			v = math.Inf(-1)
+		case "inf":
+			v = math.Inf(+1)
+		case "nan":
+			v = math.NaN()
+		default:
+			v, err = strconv.ParseFloat(s, 64)
+		}
+		if err == nil {
+			if k == pref.FloatKind {
+				return pref.ValueOfFloat32(float32(v)), nil, nil
+			} else {
+				return pref.ValueOfFloat64(float64(v)), nil, nil
+			}
+		}
+	case pref.StringKind:
+		// String values are already unescaped and can be used as is.
+		return pref.ValueOfString(s), nil, nil
+	case pref.BytesKind:
+		if b, ok := unmarshalBytes(s); ok {
+			return pref.ValueOfBytes(b), nil, nil
+		}
+	}
+	return pref.Value{}, nil, errors.New("could not parse value for %v: %q", k, s)
+}
+
+// Marshal serializes v as the default string according to the given kind k.
+// When specifying the Descriptor format for an enum kind, the associated
+// enum value descriptor must be provided.
+func Marshal(v pref.Value, ev pref.EnumValueDescriptor, k pref.Kind, f Format) (string, error) {
+	switch k {
+	case pref.BoolKind:
+		if f == GoTag {
+			if v.Bool() {
+				return "1", nil
+			} else {
+				return "0", nil
+			}
+		} else {
+			if v.Bool() {
+				return "true", nil
+			} else {
+				return "false", nil
+			}
+		}
+	case pref.EnumKind:
+		if f == GoTag {
+			return strconv.FormatInt(int64(v.Enum()), 10), nil
+		} else {
+			return string(ev.Name()), nil
+		}
+	case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind, pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
+		return strconv.FormatInt(v.Int(), 10), nil
+	case pref.Uint32Kind, pref.Fixed32Kind, pref.Uint64Kind, pref.Fixed64Kind:
+		return strconv.FormatUint(v.Uint(), 10), nil
+	case pref.FloatKind, pref.DoubleKind:
+		f := v.Float()
+		switch {
+		case math.IsInf(f, -1):
+			return "-inf", nil
+		case math.IsInf(f, +1):
+			return "inf", nil
+		case math.IsNaN(f):
+			return "nan", nil
+		default:
+			if k == pref.FloatKind {
+				return strconv.FormatFloat(f, 'g', -1, 32), nil
+			} else {
+				return strconv.FormatFloat(f, 'g', -1, 64), nil
+			}
+		}
+	case pref.StringKind:
+		// String values are serialized as is without any escaping.
+		return v.String(), nil
+	case pref.BytesKind:
+		if s, ok := marshalBytes(v.Bytes()); ok {
+			return s, nil
+		}
+	}
+	return "", errors.New("could not format value for %v: %v", k, v)
+}
+
+// unmarshalBytes deserializes bytes by applying C unescaping.
+func unmarshalBytes(s string) ([]byte, bool) {
+	// Bytes values use the same escaping as the text format,
+	// however they lack the surrounding double quotes.
+	v, err := ptext.UnmarshalString(`"` + s + `"`)
+	if err != nil {
+		return nil, false
+	}
+	return []byte(v), true
+}
+
+// marshalBytes serializes bytes by using C escaping.
+// To match the exact output of protoc, this is identical to the
+// CEscape function in strutil.cc of the protoc source code.
+func marshalBytes(b []byte) (string, bool) {
+	var s []byte
+	for _, c := range b {
+		switch c {
+		case '\n':
+			s = append(s, `\n`...)
+		case '\r':
+			s = append(s, `\r`...)
+		case '\t':
+			s = append(s, `\t`...)
+		case '"':
+			s = append(s, `\"`...)
+		case '\'':
+			s = append(s, `\'`...)
+		case '\\':
+			s = append(s, `\\`...)
+		default:
+			if printableASCII := c >= 0x20 && c <= 0x7e; printableASCII {
+				s = append(s, c)
+			} else {
+				s = append(s, fmt.Sprintf(`\%03o`, c)...)
+			}
+		}
+	}
+	return string(s), true
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go b/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go
new file mode 100644
index 0000000..b1eeea5
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go
@@ -0,0 +1,258 @@
+// 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 messageset encodes and decodes the obsolete MessageSet wire format.
+package messageset
+
+import (
+	"math"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/errors"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// The MessageSet wire format is equivalent to a message defiend as follows,
+// where each Item defines an extension field with a field number of 'type_id'
+// and content of 'message'. MessageSet extensions must be non-repeated message
+// fields.
+//
+//	message MessageSet {
+//		repeated group Item = 1 {
+//			required int32 type_id = 2;
+//			required string message = 3;
+//		}
+//	}
+const (
+	FieldItem    = protowire.Number(1)
+	FieldTypeID  = protowire.Number(2)
+	FieldMessage = protowire.Number(3)
+)
+
+// ExtensionName is the field name for extensions of MessageSet.
+//
+// A valid MessageSet extension must be of the form:
+//	message MyMessage {
+//		extend proto2.bridge.MessageSet {
+//			optional MyMessage message_set_extension = 1234;
+//		}
+//		...
+//	}
+const ExtensionName = "message_set_extension"
+
+// IsMessageSet returns whether the message uses the MessageSet wire format.
+func IsMessageSet(md pref.MessageDescriptor) bool {
+	xmd, ok := md.(interface{ IsMessageSet() bool })
+	return ok && xmd.IsMessageSet()
+}
+
+// IsMessageSetExtension reports this field extends a MessageSet.
+func IsMessageSetExtension(fd pref.FieldDescriptor) bool {
+	if fd.Name() != ExtensionName {
+		return false
+	}
+	if fd.FullName().Parent() != fd.Message().FullName() {
+		return false
+	}
+	return IsMessageSet(fd.ContainingMessage())
+}
+
+// FindMessageSetExtension locates a MessageSet extension field by name.
+// In text and JSON formats, the extension name used is the message itself.
+// The extension field name is derived by appending ExtensionName.
+func FindMessageSetExtension(r preg.ExtensionTypeResolver, s pref.FullName) (pref.ExtensionType, error) {
+	name := s.Append(ExtensionName)
+	xt, err := r.FindExtensionByName(name)
+	if err != nil {
+		if err == preg.NotFound {
+			return nil, err
+		}
+		return nil, errors.Wrap(err, "%q", name)
+	}
+	if !IsMessageSetExtension(xt.TypeDescriptor()) {
+		return nil, preg.NotFound
+	}
+	return xt, nil
+}
+
+// SizeField returns the size of a MessageSet item field containing an extension
+// with the given field number, not counting the contents of the message subfield.
+func SizeField(num protowire.Number) int {
+	return 2*protowire.SizeTag(FieldItem) + protowire.SizeTag(FieldTypeID) + protowire.SizeVarint(uint64(num))
+}
+
+// Unmarshal parses a MessageSet.
+//
+// It calls fn with the type ID and value of each item in the MessageSet.
+// Unknown fields are discarded.
+//
+// If wantLen is true, the item values include the varint length prefix.
+// This is ugly, but simplifies the fast-path decoder in internal/impl.
+func Unmarshal(b []byte, wantLen bool, fn func(typeID protowire.Number, value []byte) error) error {
+	for len(b) > 0 {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return protowire.ParseError(n)
+		}
+		b = b[n:]
+		if num != FieldItem || wtyp != protowire.StartGroupType {
+			n := protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return protowire.ParseError(n)
+			}
+			b = b[n:]
+			continue
+		}
+		typeID, value, n, err := ConsumeFieldValue(b, wantLen)
+		if err != nil {
+			return err
+		}
+		b = b[n:]
+		if typeID == 0 {
+			continue
+		}
+		if err := fn(typeID, value); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+// ConsumeFieldValue parses b as a MessageSet item field value until and including
+// the trailing end group marker. It assumes the start group tag has already been parsed.
+// It returns the contents of the type_id and message subfields and the total
+// item length.
+//
+// If wantLen is true, the returned message value includes the length prefix.
+func ConsumeFieldValue(b []byte, wantLen bool) (typeid protowire.Number, message []byte, n int, err error) {
+	ilen := len(b)
+	for {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return 0, nil, 0, protowire.ParseError(n)
+		}
+		b = b[n:]
+		switch {
+		case num == FieldItem && wtyp == protowire.EndGroupType:
+			if wantLen && len(message) == 0 {
+				// The message field was missing, which should never happen.
+				// Be prepared for this case anyway.
+				message = protowire.AppendVarint(message, 0)
+			}
+			return typeid, message, ilen - len(b), nil
+		case num == FieldTypeID && wtyp == protowire.VarintType:
+			v, n := protowire.ConsumeVarint(b)
+			if n < 0 {
+				return 0, nil, 0, protowire.ParseError(n)
+			}
+			b = b[n:]
+			if v < 1 || v > math.MaxInt32 {
+				return 0, nil, 0, errors.New("invalid type_id in message set")
+			}
+			typeid = protowire.Number(v)
+		case num == FieldMessage && wtyp == protowire.BytesType:
+			m, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, nil, 0, protowire.ParseError(n)
+			}
+			if message == nil {
+				if wantLen {
+					message = b[:n:n]
+				} else {
+					message = m[:len(m):len(m)]
+				}
+			} else {
+				// This case should never happen in practice, but handle it for
+				// correctness: The MessageSet item contains multiple message
+				// fields, which need to be merged.
+				//
+				// In the case where we're returning the length, this becomes
+				// quite inefficient since we need to strip the length off
+				// the existing data and reconstruct it with the combined length.
+				if wantLen {
+					_, nn := protowire.ConsumeVarint(message)
+					m0 := message[nn:]
+					message = nil
+					message = protowire.AppendVarint(message, uint64(len(m0)+len(m)))
+					message = append(message, m0...)
+					message = append(message, m...)
+				} else {
+					message = append(message, m...)
+				}
+			}
+			b = b[n:]
+		default:
+			// We have no place to put it, so we just ignore unknown fields.
+			n := protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return 0, nil, 0, protowire.ParseError(n)
+			}
+			b = b[n:]
+		}
+	}
+}
+
+// AppendFieldStart appends the start of a MessageSet item field containing
+// an extension with the given number. The caller must add the message
+// subfield (including the tag).
+func AppendFieldStart(b []byte, num protowire.Number) []byte {
+	b = protowire.AppendTag(b, FieldItem, protowire.StartGroupType)
+	b = protowire.AppendTag(b, FieldTypeID, protowire.VarintType)
+	b = protowire.AppendVarint(b, uint64(num))
+	return b
+}
+
+// AppendFieldEnd appends the trailing end group marker for a MessageSet item field.
+func AppendFieldEnd(b []byte) []byte {
+	return protowire.AppendTag(b, FieldItem, protowire.EndGroupType)
+}
+
+// SizeUnknown returns the size of an unknown fields section in MessageSet format.
+//
+// See AppendUnknown.
+func SizeUnknown(unknown []byte) (size int) {
+	for len(unknown) > 0 {
+		num, typ, n := protowire.ConsumeTag(unknown)
+		if n < 0 || typ != protowire.BytesType {
+			return 0
+		}
+		unknown = unknown[n:]
+		_, n = protowire.ConsumeBytes(unknown)
+		if n < 0 {
+			return 0
+		}
+		unknown = unknown[n:]
+		size += SizeField(num) + protowire.SizeTag(FieldMessage) + n
+	}
+	return size
+}
+
+// AppendUnknown appends unknown fields to b in MessageSet format.
+//
+// For historic reasons, unresolved items in a MessageSet are stored in a
+// message's unknown fields section in non-MessageSet format. That is, an
+// unknown item with typeID T and value V appears in the unknown fields as
+// a field with number T and value V.
+//
+// This function converts the unknown fields back into MessageSet form.
+func AppendUnknown(b, unknown []byte) ([]byte, error) {
+	for len(unknown) > 0 {
+		num, typ, n := protowire.ConsumeTag(unknown)
+		if n < 0 || typ != protowire.BytesType {
+			return nil, errors.New("invalid data in message set unknown fields")
+		}
+		unknown = unknown[n:]
+		_, n = protowire.ConsumeBytes(unknown)
+		if n < 0 {
+			return nil, errors.New("invalid data in message set unknown fields")
+		}
+		b = AppendFieldStart(b, num)
+		b = protowire.AppendTag(b, FieldMessage, protowire.BytesType)
+		b = append(b, unknown[:n]...)
+		b = AppendFieldEnd(b)
+		unknown = unknown[n:]
+	}
+	return b, nil
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go b/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go
new file mode 100644
index 0000000..16c02d7
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go
@@ -0,0 +1,207 @@
+// 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.
+
+// Package tag marshals and unmarshals the legacy struct tags as generated
+// by historical versions of protoc-gen-go.
+package tag
+
+import (
+	"reflect"
+	"strconv"
+	"strings"
+
+	defval "google.golang.org/protobuf/internal/encoding/defval"
+	fdesc "google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/internal/strs"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+var byteType = reflect.TypeOf(byte(0))
+
+// Unmarshal decodes the tag into a prototype.Field.
+//
+// The goType is needed to determine the original protoreflect.Kind since the
+// tag does not record sufficient information to determine that.
+// The type is the underlying field type (e.g., a repeated field may be
+// represented by []T, but the Go type passed in is just T).
+// A list of enum value descriptors must be provided for enum fields.
+// This does not populate the Enum or Message (except for weak message).
+//
+// This function is a best effort attempt; parsing errors are ignored.
+func Unmarshal(tag string, goType reflect.Type, evs pref.EnumValueDescriptors) pref.FieldDescriptor {
+	f := new(fdesc.Field)
+	f.L0.ParentFile = fdesc.SurrogateProto2
+	for len(tag) > 0 {
+		i := strings.IndexByte(tag, ',')
+		if i < 0 {
+			i = len(tag)
+		}
+		switch s := tag[:i]; {
+		case strings.HasPrefix(s, "name="):
+			f.L0.FullName = pref.FullName(s[len("name="):])
+		case strings.Trim(s, "0123456789") == "":
+			n, _ := strconv.ParseUint(s, 10, 32)
+			f.L1.Number = pref.FieldNumber(n)
+		case s == "opt":
+			f.L1.Cardinality = pref.Optional
+		case s == "req":
+			f.L1.Cardinality = pref.Required
+		case s == "rep":
+			f.L1.Cardinality = pref.Repeated
+		case s == "varint":
+			switch goType.Kind() {
+			case reflect.Bool:
+				f.L1.Kind = pref.BoolKind
+			case reflect.Int32:
+				f.L1.Kind = pref.Int32Kind
+			case reflect.Int64:
+				f.L1.Kind = pref.Int64Kind
+			case reflect.Uint32:
+				f.L1.Kind = pref.Uint32Kind
+			case reflect.Uint64:
+				f.L1.Kind = pref.Uint64Kind
+			}
+		case s == "zigzag32":
+			if goType.Kind() == reflect.Int32 {
+				f.L1.Kind = pref.Sint32Kind
+			}
+		case s == "zigzag64":
+			if goType.Kind() == reflect.Int64 {
+				f.L1.Kind = pref.Sint64Kind
+			}
+		case s == "fixed32":
+			switch goType.Kind() {
+			case reflect.Int32:
+				f.L1.Kind = pref.Sfixed32Kind
+			case reflect.Uint32:
+				f.L1.Kind = pref.Fixed32Kind
+			case reflect.Float32:
+				f.L1.Kind = pref.FloatKind
+			}
+		case s == "fixed64":
+			switch goType.Kind() {
+			case reflect.Int64:
+				f.L1.Kind = pref.Sfixed64Kind
+			case reflect.Uint64:
+				f.L1.Kind = pref.Fixed64Kind
+			case reflect.Float64:
+				f.L1.Kind = pref.DoubleKind
+			}
+		case s == "bytes":
+			switch {
+			case goType.Kind() == reflect.String:
+				f.L1.Kind = pref.StringKind
+			case goType.Kind() == reflect.Slice && goType.Elem() == byteType:
+				f.L1.Kind = pref.BytesKind
+			default:
+				f.L1.Kind = pref.MessageKind
+			}
+		case s == "group":
+			f.L1.Kind = pref.GroupKind
+		case strings.HasPrefix(s, "enum="):
+			f.L1.Kind = pref.EnumKind
+		case strings.HasPrefix(s, "json="):
+			jsonName := s[len("json="):]
+			if jsonName != strs.JSONCamelCase(string(f.L0.FullName.Name())) {
+				f.L1.JSONName.Init(jsonName)
+			}
+		case s == "packed":
+			f.L1.HasPacked = true
+			f.L1.IsPacked = true
+		case strings.HasPrefix(s, "weak="):
+			f.L1.IsWeak = true
+			f.L1.Message = fdesc.PlaceholderMessage(pref.FullName(s[len("weak="):]))
+		case strings.HasPrefix(s, "def="):
+			// The default tag is special in that everything afterwards is the
+			// default regardless of the presence of commas.
+			s, i = tag[len("def="):], len(tag)
+			v, ev, _ := defval.Unmarshal(s, f.L1.Kind, evs, defval.GoTag)
+			f.L1.Default = fdesc.DefaultValue(v, ev)
+		case s == "proto3":
+			f.L0.ParentFile = fdesc.SurrogateProto3
+		}
+		tag = strings.TrimPrefix(tag[i:], ",")
+	}
+
+	// The generator uses the group message name instead of the field name.
+	// We obtain the real field name by lowercasing the group name.
+	if f.L1.Kind == pref.GroupKind {
+		f.L0.FullName = pref.FullName(strings.ToLower(string(f.L0.FullName)))
+	}
+	return f
+}
+
+// Marshal encodes the protoreflect.FieldDescriptor as a tag.
+//
+// The enumName must be provided if the kind is an enum.
+// Historically, the formulation of the enum "name" was the proto package
+// dot-concatenated with the generated Go identifier for the enum type.
+// Depending on the context on how Marshal is called, there are different ways
+// through which that information is determined. As such it is the caller's
+// responsibility to provide a function to obtain that information.
+func Marshal(fd pref.FieldDescriptor, enumName string) string {
+	var tag []string
+	switch fd.Kind() {
+	case pref.BoolKind, pref.EnumKind, pref.Int32Kind, pref.Uint32Kind, pref.Int64Kind, pref.Uint64Kind:
+		tag = append(tag, "varint")
+	case pref.Sint32Kind:
+		tag = append(tag, "zigzag32")
+	case pref.Sint64Kind:
+		tag = append(tag, "zigzag64")
+	case pref.Sfixed32Kind, pref.Fixed32Kind, pref.FloatKind:
+		tag = append(tag, "fixed32")
+	case pref.Sfixed64Kind, pref.Fixed64Kind, pref.DoubleKind:
+		tag = append(tag, "fixed64")
+	case pref.StringKind, pref.BytesKind, pref.MessageKind:
+		tag = append(tag, "bytes")
+	case pref.GroupKind:
+		tag = append(tag, "group")
+	}
+	tag = append(tag, strconv.Itoa(int(fd.Number())))
+	switch fd.Cardinality() {
+	case pref.Optional:
+		tag = append(tag, "opt")
+	case pref.Required:
+		tag = append(tag, "req")
+	case pref.Repeated:
+		tag = append(tag, "rep")
+	}
+	if fd.IsPacked() {
+		tag = append(tag, "packed")
+	}
+	name := string(fd.Name())
+	if fd.Kind() == pref.GroupKind {
+		// The name of the FieldDescriptor for a group field is
+		// lowercased. To find the original capitalization, we
+		// look in the field's MessageType.
+		name = string(fd.Message().Name())
+	}
+	tag = append(tag, "name="+name)
+	if jsonName := fd.JSONName(); jsonName != "" && jsonName != name && !fd.IsExtension() {
+		// NOTE: The jsonName != name condition is suspect, but it preserve
+		// the exact same semantics from the previous generator.
+		tag = append(tag, "json="+jsonName)
+	}
+	if fd.IsWeak() {
+		tag = append(tag, "weak="+string(fd.Message().FullName()))
+	}
+	// The previous implementation does not tag extension fields as proto3,
+	// even when the field is defined in a proto3 file. Match that behavior
+	// for consistency.
+	if fd.Syntax() == pref.Proto3 && !fd.IsExtension() {
+		tag = append(tag, "proto3")
+	}
+	if fd.Kind() == pref.EnumKind && enumName != "" {
+		tag = append(tag, "enum="+enumName)
+	}
+	if fd.ContainingOneof() != nil {
+		tag = append(tag, "oneof")
+	}
+	// This must appear last in the tag, since commas in strings aren't escaped.
+	if fd.HasDefault() {
+		def, _ := defval.Marshal(fd.Default(), fd.DefaultEnumValue(), fd.Kind(), defval.GoTag)
+		tag = append(tag, "def="+def)
+	}
+	return strings.Join(tag, ",")
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go b/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go
new file mode 100644
index 0000000..eb10ea1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go
@@ -0,0 +1,665 @@
+// 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.
+
+package text
+
+import (
+	"bytes"
+	"fmt"
+	"io"
+	"regexp"
+	"strconv"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/internal/errors"
+)
+
+// Decoder is a token-based textproto decoder.
+type Decoder struct {
+	// lastCall is last method called, either readCall or peekCall.
+	// Initial value is readCall.
+	lastCall call
+
+	// lastToken contains the last read token.
+	lastToken Token
+
+	// lastErr contains the last read error.
+	lastErr error
+
+	// openStack is a stack containing the byte characters for MessageOpen and
+	// ListOpen kinds. The top of stack represents the message or the list that
+	// the current token is nested in. An empty stack means the current token is
+	// at the top level message. The characters '{' and '<' both represent the
+	// MessageOpen kind.
+	openStack []byte
+
+	// orig is used in reporting line and column.
+	orig []byte
+	// in contains the unconsumed input.
+	in []byte
+}
+
+// NewDecoder returns a Decoder to read the given []byte.
+func NewDecoder(b []byte) *Decoder {
+	return &Decoder{orig: b, in: b}
+}
+
+// ErrUnexpectedEOF means that EOF was encountered in the middle of the input.
+var ErrUnexpectedEOF = errors.New("%v", io.ErrUnexpectedEOF)
+
+// call specifies which Decoder method was invoked.
+type call uint8
+
+const (
+	readCall call = iota
+	peekCall
+)
+
+// Peek looks ahead and returns the next token and error without advancing a read.
+func (d *Decoder) Peek() (Token, error) {
+	defer func() { d.lastCall = peekCall }()
+	if d.lastCall == readCall {
+		d.lastToken, d.lastErr = d.Read()
+	}
+	return d.lastToken, d.lastErr
+}
+
+// Read returns the next token.
+// It will return an error if there is no valid token.
+func (d *Decoder) Read() (Token, error) {
+	defer func() { d.lastCall = readCall }()
+	if d.lastCall == peekCall {
+		return d.lastToken, d.lastErr
+	}
+
+	tok, err := d.parseNext(d.lastToken.kind)
+	if err != nil {
+		return Token{}, err
+	}
+
+	switch tok.kind {
+	case comma, semicolon:
+		tok, err = d.parseNext(tok.kind)
+		if err != nil {
+			return Token{}, err
+		}
+	}
+	d.lastToken = tok
+	return tok, nil
+}
+
+const (
+	mismatchedFmt = "mismatched close character %q"
+	unexpectedFmt = "unexpected character %q"
+)
+
+// parseNext parses the next Token based on given last kind.
+func (d *Decoder) parseNext(lastKind Kind) (Token, error) {
+	// Trim leading spaces.
+	d.consume(0)
+	isEOF := false
+	if len(d.in) == 0 {
+		isEOF = true
+	}
+
+	switch lastKind {
+	case EOF:
+		return d.consumeToken(EOF, 0, 0), nil
+
+	case bof:
+		// Start of top level message. Next token can be EOF or Name.
+		if isEOF {
+			return d.consumeToken(EOF, 0, 0), nil
+		}
+		return d.parseFieldName()
+
+	case Name:
+		// Next token can be MessageOpen, ListOpen or Scalar.
+		if isEOF {
+			return Token{}, ErrUnexpectedEOF
+		}
+		switch ch := d.in[0]; ch {
+		case '{', '<':
+			d.pushOpenStack(ch)
+			return d.consumeToken(MessageOpen, 1, 0), nil
+		case '[':
+			d.pushOpenStack(ch)
+			return d.consumeToken(ListOpen, 1, 0), nil
+		default:
+			return d.parseScalar()
+		}
+
+	case Scalar:
+		openKind, closeCh := d.currentOpenKind()
+		switch openKind {
+		case bof:
+			// Top level message.
+			// 	Next token can be EOF, comma, semicolon or Name.
+			if isEOF {
+				return d.consumeToken(EOF, 0, 0), nil
+			}
+			switch d.in[0] {
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		case MessageOpen:
+			// Next token can be MessageClose, comma, semicolon or Name.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case closeCh:
+				d.popOpenStack()
+				return d.consumeToken(MessageClose, 1, 0), nil
+			case otherCloseChar[closeCh]:
+				return Token{}, d.newSyntaxError(mismatchedFmt, ch)
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		case ListOpen:
+			// Next token can be ListClose or comma.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case ']':
+				d.popOpenStack()
+				return d.consumeToken(ListClose, 1, 0), nil
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			default:
+				return Token{}, d.newSyntaxError(unexpectedFmt, ch)
+			}
+		}
+
+	case MessageOpen:
+		// Next token can be MessageClose or Name.
+		if isEOF {
+			return Token{}, ErrUnexpectedEOF
+		}
+		_, closeCh := d.currentOpenKind()
+		switch ch := d.in[0]; ch {
+		case closeCh:
+			d.popOpenStack()
+			return d.consumeToken(MessageClose, 1, 0), nil
+		case otherCloseChar[closeCh]:
+			return Token{}, d.newSyntaxError(mismatchedFmt, ch)
+		default:
+			return d.parseFieldName()
+		}
+
+	case MessageClose:
+		openKind, closeCh := d.currentOpenKind()
+		switch openKind {
+		case bof:
+			// Top level message.
+			// Next token can be EOF, comma, semicolon or Name.
+			if isEOF {
+				return d.consumeToken(EOF, 0, 0), nil
+			}
+			switch ch := d.in[0]; ch {
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		case MessageOpen:
+			// Next token can be MessageClose, comma, semicolon or Name.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case closeCh:
+				d.popOpenStack()
+				return d.consumeToken(MessageClose, 1, 0), nil
+			case otherCloseChar[closeCh]:
+				return Token{}, d.newSyntaxError(mismatchedFmt, ch)
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		case ListOpen:
+			// Next token can be ListClose or comma
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case closeCh:
+				d.popOpenStack()
+				return d.consumeToken(ListClose, 1, 0), nil
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			default:
+				return Token{}, d.newSyntaxError(unexpectedFmt, ch)
+			}
+		}
+
+	case ListOpen:
+		// Next token can be ListClose, MessageStart or Scalar.
+		if isEOF {
+			return Token{}, ErrUnexpectedEOF
+		}
+		switch ch := d.in[0]; ch {
+		case ']':
+			d.popOpenStack()
+			return d.consumeToken(ListClose, 1, 0), nil
+		case '{', '<':
+			d.pushOpenStack(ch)
+			return d.consumeToken(MessageOpen, 1, 0), nil
+		default:
+			return d.parseScalar()
+		}
+
+	case ListClose:
+		openKind, closeCh := d.currentOpenKind()
+		switch openKind {
+		case bof:
+			// Top level message.
+			// Next token can be EOF, comma, semicolon or Name.
+			if isEOF {
+				return d.consumeToken(EOF, 0, 0), nil
+			}
+			switch ch := d.in[0]; ch {
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		case MessageOpen:
+			// Next token can be MessageClose, comma, semicolon or Name.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case closeCh:
+				d.popOpenStack()
+				return d.consumeToken(MessageClose, 1, 0), nil
+			case otherCloseChar[closeCh]:
+				return Token{}, d.newSyntaxError(mismatchedFmt, ch)
+			case ',':
+				return d.consumeToken(comma, 1, 0), nil
+			case ';':
+				return d.consumeToken(semicolon, 1, 0), nil
+			default:
+				return d.parseFieldName()
+			}
+
+		default:
+			// It is not possible to have this case. Let it panic below.
+		}
+
+	case comma, semicolon:
+		openKind, closeCh := d.currentOpenKind()
+		switch openKind {
+		case bof:
+			// Top level message. Next token can be EOF or Name.
+			if isEOF {
+				return d.consumeToken(EOF, 0, 0), nil
+			}
+			return d.parseFieldName()
+
+		case MessageOpen:
+			// Next token can be MessageClose or Name.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case closeCh:
+				d.popOpenStack()
+				return d.consumeToken(MessageClose, 1, 0), nil
+			case otherCloseChar[closeCh]:
+				return Token{}, d.newSyntaxError(mismatchedFmt, ch)
+			default:
+				return d.parseFieldName()
+			}
+
+		case ListOpen:
+			if lastKind == semicolon {
+				// It is not be possible to have this case as logic here
+				// should not have produced a semicolon Token when inside a
+				// list. Let it panic below.
+				break
+			}
+			// Next token can be MessageOpen or Scalar.
+			if isEOF {
+				return Token{}, ErrUnexpectedEOF
+			}
+			switch ch := d.in[0]; ch {
+			case '{', '<':
+				d.pushOpenStack(ch)
+				return d.consumeToken(MessageOpen, 1, 0), nil
+			default:
+				return d.parseScalar()
+			}
+		}
+	}
+
+	line, column := d.Position(len(d.orig) - len(d.in))
+	panic(fmt.Sprintf("Decoder.parseNext: bug at handling line %d:%d with lastKind=%v", line, column, lastKind))
+}
+
+var otherCloseChar = map[byte]byte{
+	'}': '>',
+	'>': '}',
+}
+
+// currentOpenKind indicates whether current position is inside a message, list
+// or top-level message by returning MessageOpen, ListOpen or bof respectively.
+// If the returned kind is either a MessageOpen or ListOpen, it also returns the
+// corresponding closing character.
+func (d *Decoder) currentOpenKind() (Kind, byte) {
+	if len(d.openStack) == 0 {
+		return bof, 0
+	}
+	openCh := d.openStack[len(d.openStack)-1]
+	switch openCh {
+	case '{':
+		return MessageOpen, '}'
+	case '<':
+		return MessageOpen, '>'
+	case '[':
+		return ListOpen, ']'
+	}
+	panic(fmt.Sprintf("Decoder: openStack contains invalid byte %s", string(openCh)))
+}
+
+func (d *Decoder) pushOpenStack(ch byte) {
+	d.openStack = append(d.openStack, ch)
+}
+
+func (d *Decoder) popOpenStack() {
+	d.openStack = d.openStack[:len(d.openStack)-1]
+}
+
+// parseFieldName parses field name and separator.
+func (d *Decoder) parseFieldName() (tok Token, err error) {
+	defer func() {
+		if err == nil && d.tryConsumeChar(':') {
+			tok.attrs |= hasSeparator
+		}
+	}()
+
+	// Extension or Any type URL.
+	if d.in[0] == '[' {
+		return d.parseTypeName()
+	}
+
+	// Identifier.
+	if size := parseIdent(d.in, false); size > 0 {
+		return d.consumeToken(Name, size, uint8(IdentName)), nil
+	}
+
+	// Field number. Identify if input is a valid number that is not negative
+	// and is decimal integer within 32-bit range.
+	if num := parseNumber(d.in); num.size > 0 {
+		if !num.neg && num.kind == numDec {
+			if _, err := strconv.ParseInt(string(d.in[:num.size]), 10, 32); err == nil {
+				return d.consumeToken(Name, num.size, uint8(FieldNumber)), nil
+			}
+		}
+		return Token{}, d.newSyntaxError("invalid field number: %s", d.in[:num.size])
+	}
+
+	return Token{}, d.newSyntaxError("invalid field name: %s", errRegexp.Find(d.in))
+}
+
+// parseTypeName parses Any type URL or extension field name. The name is
+// enclosed in [ and ] characters. The C++ parser does not handle many legal URL
+// strings. This implementation is more liberal and allows for the pattern
+// ^[-_a-zA-Z0-9]+([./][-_a-zA-Z0-9]+)*`). Whitespaces and comments are allowed
+// in between [ ], '.', '/' and the sub names.
+func (d *Decoder) parseTypeName() (Token, error) {
+	startPos := len(d.orig) - len(d.in)
+	// Use alias s to advance first in order to use d.in for error handling.
+	// Caller already checks for [ as first character.
+	s := consume(d.in[1:], 0)
+	if len(s) == 0 {
+		return Token{}, ErrUnexpectedEOF
+	}
+
+	var name []byte
+	for len(s) > 0 && isTypeNameChar(s[0]) {
+		name = append(name, s[0])
+		s = s[1:]
+	}
+	s = consume(s, 0)
+
+	var closed bool
+	for len(s) > 0 && !closed {
+		switch {
+		case s[0] == ']':
+			s = s[1:]
+			closed = true
+
+		case s[0] == '/', s[0] == '.':
+			if len(name) > 0 && (name[len(name)-1] == '/' || name[len(name)-1] == '.') {
+				return Token{}, d.newSyntaxError("invalid type URL/extension field name: %s",
+					d.orig[startPos:len(d.orig)-len(s)+1])
+			}
+			name = append(name, s[0])
+			s = s[1:]
+			s = consume(s, 0)
+			for len(s) > 0 && isTypeNameChar(s[0]) {
+				name = append(name, s[0])
+				s = s[1:]
+			}
+			s = consume(s, 0)
+
+		default:
+			return Token{}, d.newSyntaxError(
+				"invalid type URL/extension field name: %s", d.orig[startPos:len(d.orig)-len(s)+1])
+		}
+	}
+
+	if !closed {
+		return Token{}, ErrUnexpectedEOF
+	}
+
+	// First character cannot be '.'. Last character cannot be '.' or '/'.
+	size := len(name)
+	if size == 0 || name[0] == '.' || name[size-1] == '.' || name[size-1] == '/' {
+		return Token{}, d.newSyntaxError("invalid type URL/extension field name: %s",
+			d.orig[startPos:len(d.orig)-len(s)])
+	}
+
+	d.in = s
+	endPos := len(d.orig) - len(d.in)
+	d.consume(0)
+
+	return Token{
+		kind:  Name,
+		attrs: uint8(TypeName),
+		pos:   startPos,
+		raw:   d.orig[startPos:endPos],
+		str:   string(name),
+	}, nil
+}
+
+func isTypeNameChar(b byte) bool {
+	return (b == '-' || b == '_' ||
+		('0' <= b && b <= '9') ||
+		('a' <= b && b <= 'z') ||
+		('A' <= b && b <= 'Z'))
+}
+
+func isWhiteSpace(b byte) bool {
+	switch b {
+	case ' ', '\n', '\r', '\t':
+		return true
+	default:
+		return false
+	}
+}
+
+// parseIdent parses an unquoted proto identifier and returns size.
+// If allowNeg is true, it allows '-' to be the first character in the
+// identifier. This is used when parsing literal values like -infinity, etc.
+// Regular expression matches an identifier: `^[_a-zA-Z][_a-zA-Z0-9]*`
+func parseIdent(input []byte, allowNeg bool) int {
+	var size int
+
+	s := input
+	if len(s) == 0 {
+		return 0
+	}
+
+	if allowNeg && s[0] == '-' {
+		s = s[1:]
+		size++
+		if len(s) == 0 {
+			return 0
+		}
+	}
+
+	switch {
+	case s[0] == '_',
+		'a' <= s[0] && s[0] <= 'z',
+		'A' <= s[0] && s[0] <= 'Z':
+		s = s[1:]
+		size++
+	default:
+		return 0
+	}
+
+	for len(s) > 0 && (s[0] == '_' ||
+		'a' <= s[0] && s[0] <= 'z' ||
+		'A' <= s[0] && s[0] <= 'Z' ||
+		'0' <= s[0] && s[0] <= '9') {
+		s = s[1:]
+		size++
+	}
+
+	if len(s) > 0 && !isDelim(s[0]) {
+		return 0
+	}
+
+	return size
+}
+
+// parseScalar parses for a string, literal or number value.
+func (d *Decoder) parseScalar() (Token, error) {
+	if d.in[0] == '"' || d.in[0] == '\'' {
+		return d.parseStringValue()
+	}
+
+	if tok, ok := d.parseLiteralValue(); ok {
+		return tok, nil
+	}
+
+	if tok, ok := d.parseNumberValue(); ok {
+		return tok, nil
+	}
+
+	return Token{}, d.newSyntaxError("invalid scalar value: %s", errRegexp.Find(d.in))
+}
+
+// parseLiteralValue parses a literal value. A literal value is used for
+// bools, special floats and enums. This function simply identifies that the
+// field value is a literal.
+func (d *Decoder) parseLiteralValue() (Token, bool) {
+	size := parseIdent(d.in, true)
+	if size == 0 {
+		return Token{}, false
+	}
+	return d.consumeToken(Scalar, size, literalValue), true
+}
+
+// consumeToken constructs a Token for given Kind from d.in and consumes given
+// size-length from it.
+func (d *Decoder) consumeToken(kind Kind, size int, attrs uint8) Token {
+	// Important to compute raw and pos before consuming.
+	tok := Token{
+		kind:  kind,
+		attrs: attrs,
+		pos:   len(d.orig) - len(d.in),
+		raw:   d.in[:size],
+	}
+	d.consume(size)
+	return tok
+}
+
+// newSyntaxError returns a syntax error with line and column information for
+// current position.
+func (d *Decoder) newSyntaxError(f string, x ...interface{}) error {
+	e := errors.New(f, x...)
+	line, column := d.Position(len(d.orig) - len(d.in))
+	return errors.New("syntax error (line %d:%d): %v", line, column, e)
+}
+
+// Position returns line and column number of given index of the original input.
+// It will panic if index is out of range.
+func (d *Decoder) Position(idx int) (line int, column int) {
+	b := d.orig[:idx]
+	line = bytes.Count(b, []byte("\n")) + 1
+	if i := bytes.LastIndexByte(b, '\n'); i >= 0 {
+		b = b[i+1:]
+	}
+	column = utf8.RuneCount(b) + 1 // ignore multi-rune characters
+	return line, column
+}
+
+func (d *Decoder) tryConsumeChar(c byte) bool {
+	if len(d.in) > 0 && d.in[0] == c {
+		d.consume(1)
+		return true
+	}
+	return false
+}
+
+// consume consumes n bytes of input and any subsequent whitespace or comments.
+func (d *Decoder) consume(n int) {
+	d.in = consume(d.in, n)
+	return
+}
+
+// consume consumes n bytes of input and any subsequent whitespace or comments.
+func consume(b []byte, n int) []byte {
+	b = b[n:]
+	for len(b) > 0 {
+		switch b[0] {
+		case ' ', '\n', '\r', '\t':
+			b = b[1:]
+		case '#':
+			if i := bytes.IndexByte(b, '\n'); i >= 0 {
+				b = b[i+len("\n"):]
+			} else {
+				b = nil
+			}
+		default:
+			return b
+		}
+	}
+	return b
+}
+
+// Any sequence that looks like a non-delimiter (for error reporting).
+var errRegexp = regexp.MustCompile(`^([-+._a-zA-Z0-9\/]+|.)`)
+
+// isDelim returns true if given byte is a delimiter character.
+func isDelim(c byte) bool {
+	return !(c == '-' || c == '+' || c == '.' || c == '_' ||
+		('a' <= c && c <= 'z') ||
+		('A' <= c && c <= 'Z') ||
+		('0' <= c && c <= '9'))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go
new file mode 100644
index 0000000..f2d90b7
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go
@@ -0,0 +1,190 @@
+// 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.
+
+package text
+
+// parseNumberValue parses a number from the input and returns a Token object.
+func (d *Decoder) parseNumberValue() (Token, bool) {
+	in := d.in
+	num := parseNumber(in)
+	if num.size == 0 {
+		return Token{}, false
+	}
+	numAttrs := num.kind
+	if num.neg {
+		numAttrs |= isNegative
+	}
+	strSize := num.size
+	last := num.size - 1
+	if num.kind == numFloat && (d.in[last] == 'f' || d.in[last] == 'F') {
+		strSize = last
+	}
+	tok := Token{
+		kind:     Scalar,
+		attrs:    numberValue,
+		pos:      len(d.orig) - len(d.in),
+		raw:      d.in[:num.size],
+		str:      string(d.in[:strSize]),
+		numAttrs: numAttrs,
+	}
+	d.consume(num.size)
+	return tok, true
+}
+
+const (
+	numDec uint8 = (1 << iota) / 2
+	numHex
+	numOct
+	numFloat
+)
+
+// number is the result of parsing out a valid number from parseNumber. It
+// contains data for doing float or integer conversion via the strconv package
+// in conjunction with the input bytes.
+type number struct {
+	kind uint8
+	neg  bool
+	size int
+}
+
+// parseNumber constructs a number object from given input. It allows for the
+// following patterns:
+//   integer: ^-?([1-9][0-9]*|0[xX][0-9a-fA-F]+|0[0-7]*)
+//   float: ^-?((0|[1-9][0-9]*)?([.][0-9]*)?([eE][+-]?[0-9]+)?[fF]?)
+// It also returns the number of parsed bytes for the given number, 0 if it is
+// not a number.
+func parseNumber(input []byte) number {
+	kind := numDec
+	var size int
+	var neg bool
+
+	s := input
+	if len(s) == 0 {
+		return number{}
+	}
+
+	// Optional -
+	if s[0] == '-' {
+		neg = true
+		s = s[1:]
+		size++
+		if len(s) == 0 {
+			return number{}
+		}
+	}
+
+	// C++ allows for whitespace and comments in between the negative sign and
+	// the rest of the number. This logic currently does not but is consistent
+	// with v1.
+
+	switch {
+	case s[0] == '0':
+		if len(s) > 1 {
+			switch {
+			case s[1] == 'x' || s[1] == 'X':
+				// Parse as hex number.
+				kind = numHex
+				n := 2
+				s = s[2:]
+				for len(s) > 0 && (('0' <= s[0] && s[0] <= '9') ||
+					('a' <= s[0] && s[0] <= 'f') ||
+					('A' <= s[0] && s[0] <= 'F')) {
+					s = s[1:]
+					n++
+				}
+				if n == 2 {
+					return number{}
+				}
+				size += n
+
+			case '0' <= s[1] && s[1] <= '7':
+				// Parse as octal number.
+				kind = numOct
+				n := 2
+				s = s[2:]
+				for len(s) > 0 && '0' <= s[0] && s[0] <= '7' {
+					s = s[1:]
+					n++
+				}
+				size += n
+			}
+
+			if kind&(numHex|numOct) > 0 {
+				if len(s) > 0 && !isDelim(s[0]) {
+					return number{}
+				}
+				return number{kind: kind, neg: neg, size: size}
+			}
+		}
+		s = s[1:]
+		size++
+
+	case '1' <= s[0] && s[0] <= '9':
+		n := 1
+		s = s[1:]
+		for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
+			s = s[1:]
+			n++
+		}
+		size += n
+
+	case s[0] == '.':
+		// Set kind to numFloat to signify the intent to parse as float. And
+		// that it needs to have other digits after '.'.
+		kind = numFloat
+
+	default:
+		return number{}
+	}
+
+	// . followed by 0 or more digits.
+	if len(s) > 0 && s[0] == '.' {
+		n := 1
+		s = s[1:]
+		// If decimal point was before any digits, it should be followed by
+		// other digits.
+		if len(s) == 0 && kind == numFloat {
+			return number{}
+		}
+		for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
+			s = s[1:]
+			n++
+		}
+		size += n
+		kind = numFloat
+	}
+
+	// e or E followed by an optional - or + and 1 or more digits.
+	if len(s) >= 2 && (s[0] == 'e' || s[0] == 'E') {
+		kind = numFloat
+		s = s[1:]
+		n := 1
+		if s[0] == '+' || s[0] == '-' {
+			s = s[1:]
+			n++
+			if len(s) == 0 {
+				return number{}
+			}
+		}
+		for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
+			s = s[1:]
+			n++
+		}
+		size += n
+	}
+
+	// Optional suffix f or F for floats.
+	if len(s) > 0 && (s[0] == 'f' || s[0] == 'F') {
+		kind = numFloat
+		s = s[1:]
+		size++
+	}
+
+	// Check that next byte is a delimiter or it is at the end.
+	if len(s) > 0 && !isDelim(s[0]) {
+		return number{}
+	}
+
+	return number{kind: kind, neg: neg, size: size}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go
new file mode 100644
index 0000000..d4d3490
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go
@@ -0,0 +1,161 @@
+// 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.
+
+package text
+
+import (
+	"bytes"
+	"strconv"
+	"strings"
+	"unicode"
+	"unicode/utf16"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/internal/strs"
+)
+
+// parseStringValue parses string field token.
+// This differs from parseString since the text format allows
+// multiple back-to-back string literals where they are semantically treated
+// as a single large string with all values concatenated.
+//
+// E.g., `"foo" "bar" "baz"` => "foobarbaz"
+func (d *Decoder) parseStringValue() (Token, error) {
+	// Note that the ending quote is sufficient to unambiguously mark the end
+	// of a string. Thus, the text grammar does not require intervening
+	// whitespace or control characters in-between strings.
+	// Thus, the following is valid:
+	//	`"foo"'bar'"baz"` => "foobarbaz"
+	in0 := d.in
+	var ss []string
+	for len(d.in) > 0 && (d.in[0] == '"' || d.in[0] == '\'') {
+		s, err := d.parseString()
+		if err != nil {
+			return Token{}, err
+		}
+		ss = append(ss, s)
+	}
+	// d.in already points to the end of the value at this point.
+	return Token{
+		kind:  Scalar,
+		attrs: stringValue,
+		pos:   len(d.orig) - len(in0),
+		raw:   in0[:len(in0)-len(d.in)],
+		str:   strings.Join(ss, ""),
+	}, nil
+}
+
+// parseString parses a string value enclosed in " or '.
+func (d *Decoder) parseString() (string, error) {
+	in := d.in
+	if len(in) == 0 {
+		return "", ErrUnexpectedEOF
+	}
+	quote := in[0]
+	in = in[1:]
+	i := indexNeedEscapeInBytes(in)
+	in, out := in[i:], in[:i:i] // set cap to prevent mutations
+	for len(in) > 0 {
+		switch r, n := utf8.DecodeRune(in); {
+		case r == utf8.RuneError && n == 1:
+			return "", d.newSyntaxError("invalid UTF-8 detected")
+		case r == 0 || r == '\n':
+			return "", d.newSyntaxError("invalid character %q in string", r)
+		case r == rune(quote):
+			in = in[1:]
+			d.consume(len(d.in) - len(in))
+			return string(out), nil
+		case r == '\\':
+			if len(in) < 2 {
+				return "", ErrUnexpectedEOF
+			}
+			switch r := in[1]; r {
+			case '"', '\'', '\\', '?':
+				in, out = in[2:], append(out, r)
+			case 'a':
+				in, out = in[2:], append(out, '\a')
+			case 'b':
+				in, out = in[2:], append(out, '\b')
+			case 'n':
+				in, out = in[2:], append(out, '\n')
+			case 'r':
+				in, out = in[2:], append(out, '\r')
+			case 't':
+				in, out = in[2:], append(out, '\t')
+			case 'v':
+				in, out = in[2:], append(out, '\v')
+			case 'f':
+				in, out = in[2:], append(out, '\f')
+			case '0', '1', '2', '3', '4', '5', '6', '7':
+				// One, two, or three octal characters.
+				n := len(in[1:]) - len(bytes.TrimLeft(in[1:], "01234567"))
+				if n > 3 {
+					n = 3
+				}
+				v, err := strconv.ParseUint(string(in[1:1+n]), 8, 8)
+				if err != nil {
+					return "", d.newSyntaxError("invalid octal escape code %q in string", in[:1+n])
+				}
+				in, out = in[1+n:], append(out, byte(v))
+			case 'x':
+				// One or two hexadecimal characters.
+				n := len(in[2:]) - len(bytes.TrimLeft(in[2:], "0123456789abcdefABCDEF"))
+				if n > 2 {
+					n = 2
+				}
+				v, err := strconv.ParseUint(string(in[2:2+n]), 16, 8)
+				if err != nil {
+					return "", d.newSyntaxError("invalid hex escape code %q in string", in[:2+n])
+				}
+				in, out = in[2+n:], append(out, byte(v))
+			case 'u', 'U':
+				// Four or eight hexadecimal characters
+				n := 6
+				if r == 'U' {
+					n = 10
+				}
+				if len(in) < n {
+					return "", ErrUnexpectedEOF
+				}
+				v, err := strconv.ParseUint(string(in[2:n]), 16, 32)
+				if utf8.MaxRune < v || err != nil {
+					return "", d.newSyntaxError("invalid Unicode escape code %q in string", in[:n])
+				}
+				in = in[n:]
+
+				r := rune(v)
+				if utf16.IsSurrogate(r) {
+					if len(in) < 6 {
+						return "", ErrUnexpectedEOF
+					}
+					v, err := strconv.ParseUint(string(in[2:6]), 16, 16)
+					r = utf16.DecodeRune(r, rune(v))
+					if in[0] != '\\' || in[1] != 'u' || r == unicode.ReplacementChar || err != nil {
+						return "", d.newSyntaxError("invalid Unicode escape code %q in string", in[:6])
+					}
+					in = in[6:]
+				}
+				out = append(out, string(r)...)
+			default:
+				return "", d.newSyntaxError("invalid escape code %q in string", in[:2])
+			}
+		default:
+			i := indexNeedEscapeInBytes(in[n:])
+			in, out = in[n+i:], append(out, in[:n+i]...)
+		}
+	}
+	return "", ErrUnexpectedEOF
+}
+
+// indexNeedEscapeInString returns the index of the character that needs
+// escaping. If no characters need escaping, this returns the input length.
+func indexNeedEscapeInBytes(b []byte) int { return indexNeedEscapeInString(strs.UnsafeString(b)) }
+
+// UnmarshalString returns an unescaped string given a textproto string value.
+// String value needs to contain single or double quotes. This is only used by
+// internal/encoding/defval package for unmarshaling bytes.
+func UnmarshalString(s string) (string, error) {
+	d := NewDecoder([]byte(s))
+	return d.parseString()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go
new file mode 100644
index 0000000..83d2b0d
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go
@@ -0,0 +1,373 @@
+// 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.
+
+package text
+
+import (
+	"bytes"
+	"fmt"
+	"math"
+	"strconv"
+	"strings"
+
+	"google.golang.org/protobuf/internal/flags"
+)
+
+// Kind represents a token kind expressible in the textproto format.
+type Kind uint8
+
+// Kind values.
+const (
+	Invalid Kind = iota
+	EOF
+	Name   // Name indicates the field name.
+	Scalar // Scalar are scalar values, e.g. "string", 47, ENUM_LITERAL, true.
+	MessageOpen
+	MessageClose
+	ListOpen
+	ListClose
+
+	// comma and semi-colon are only for parsing in between values and should not be exposed.
+	comma
+	semicolon
+
+	// bof indicates beginning of file, which is the default token
+	// kind at the beginning of parsing.
+	bof = Invalid
+)
+
+func (t Kind) String() string {
+	switch t {
+	case Invalid:
+		return "<invalid>"
+	case EOF:
+		return "eof"
+	case Scalar:
+		return "scalar"
+	case Name:
+		return "name"
+	case MessageOpen:
+		return "{"
+	case MessageClose:
+		return "}"
+	case ListOpen:
+		return "["
+	case ListClose:
+		return "]"
+	case comma:
+		return ","
+	case semicolon:
+		return ";"
+	default:
+		return fmt.Sprintf("<invalid:%v>", uint8(t))
+	}
+}
+
+// NameKind represents different types of field names.
+type NameKind uint8
+
+// NameKind values.
+const (
+	IdentName NameKind = iota + 1
+	TypeName
+	FieldNumber
+)
+
+func (t NameKind) String() string {
+	switch t {
+	case IdentName:
+		return "IdentName"
+	case TypeName:
+		return "TypeName"
+	case FieldNumber:
+		return "FieldNumber"
+	default:
+		return fmt.Sprintf("<invalid:%v>", uint8(t))
+	}
+}
+
+// Bit mask in Token.attrs to indicate if a Name token is followed by the
+// separator char ':'. The field name separator char is optional for message
+// field or repeated message field, but required for all other types. Decoder
+// simply indicates whether a Name token is followed by separator or not.  It is
+// up to the prototext package to validate.
+const hasSeparator = 1 << 7
+
+// Scalar value types.
+const (
+	numberValue = iota + 1
+	stringValue
+	literalValue
+)
+
+// Bit mask in Token.numAttrs to indicate that the number is a negative.
+const isNegative = 1 << 7
+
+// Token provides a parsed token kind and value. Values are provided by the
+// different accessor methods.
+type Token struct {
+	// Kind of the Token object.
+	kind Kind
+	// attrs contains metadata for the following Kinds:
+	// Name: hasSeparator bit and one of NameKind.
+	// Scalar: one of numberValue, stringValue, literalValue.
+	attrs uint8
+	// numAttrs contains metadata for numberValue:
+	// - highest bit is whether negative or positive.
+	// - lower bits indicate one of numDec, numHex, numOct, numFloat.
+	numAttrs uint8
+	// pos provides the position of the token in the original input.
+	pos int
+	// raw bytes of the serialized token.
+	// This is a subslice into the original input.
+	raw []byte
+	// str contains parsed string for the following:
+	// - stringValue of Scalar kind
+	// - numberValue of Scalar kind
+	// - TypeName of Name kind
+	str string
+}
+
+// Kind returns the token kind.
+func (t Token) Kind() Kind {
+	return t.kind
+}
+
+// RawString returns the read value in string.
+func (t Token) RawString() string {
+	return string(t.raw)
+}
+
+// Pos returns the token position from the input.
+func (t Token) Pos() int {
+	return t.pos
+}
+
+// NameKind returns IdentName, TypeName or FieldNumber.
+// It panics if type is not Name.
+func (t Token) NameKind() NameKind {
+	if t.kind == Name {
+		return NameKind(t.attrs &^ hasSeparator)
+	}
+	panic(fmt.Sprintf("Token is not a Name type: %s", t.kind))
+}
+
+// HasSeparator returns true if the field name is followed by the separator char
+// ':', else false. It panics if type is not Name.
+func (t Token) HasSeparator() bool {
+	if t.kind == Name {
+		return t.attrs&hasSeparator != 0
+	}
+	panic(fmt.Sprintf("Token is not a Name type: %s", t.kind))
+}
+
+// IdentName returns the value for IdentName type.
+func (t Token) IdentName() string {
+	if t.kind == Name && t.attrs&uint8(IdentName) != 0 {
+		return string(t.raw)
+	}
+	panic(fmt.Sprintf("Token is not an IdentName: %s:%s", t.kind, NameKind(t.attrs&^hasSeparator)))
+}
+
+// TypeName returns the value for TypeName type.
+func (t Token) TypeName() string {
+	if t.kind == Name && t.attrs&uint8(TypeName) != 0 {
+		return t.str
+	}
+	panic(fmt.Sprintf("Token is not a TypeName: %s:%s", t.kind, NameKind(t.attrs&^hasSeparator)))
+}
+
+// FieldNumber returns the value for FieldNumber type. It returns a
+// non-negative int32 value. Caller will still need to validate for the correct
+// field number range.
+func (t Token) FieldNumber() int32 {
+	if t.kind != Name || t.attrs&uint8(FieldNumber) == 0 {
+		panic(fmt.Sprintf("Token is not a FieldNumber: %s:%s", t.kind, NameKind(t.attrs&^hasSeparator)))
+	}
+	// Following should not return an error as it had already been called right
+	// before this Token was constructed.
+	num, _ := strconv.ParseInt(string(t.raw), 10, 32)
+	return int32(num)
+}
+
+// String returns the string value for a Scalar type.
+func (t Token) String() (string, bool) {
+	if t.kind != Scalar || t.attrs != stringValue {
+		return "", false
+	}
+	return t.str, true
+}
+
+// Enum returns the literal value for a Scalar type for use as enum literals.
+func (t Token) Enum() (string, bool) {
+	if t.kind != Scalar || t.attrs != literalValue || (len(t.raw) > 0 && t.raw[0] == '-') {
+		return "", false
+	}
+	return string(t.raw), true
+}
+
+// Bool returns the bool value for a Scalar type.
+func (t Token) Bool() (bool, bool) {
+	if t.kind != Scalar {
+		return false, false
+	}
+	switch t.attrs {
+	case literalValue:
+		if b, ok := boolLits[string(t.raw)]; ok {
+			return b, true
+		}
+	case numberValue:
+		// Unsigned integer representation of 0 or 1 is permitted: 00, 0x0, 01,
+		// 0x1, etc.
+		n, err := strconv.ParseUint(t.str, 0, 64)
+		if err == nil {
+			switch n {
+			case 0:
+				return false, true
+			case 1:
+				return true, true
+			}
+		}
+	}
+	return false, false
+}
+
+// These exact boolean literals are the ones supported in C++.
+var boolLits = map[string]bool{
+	"t":     true,
+	"true":  true,
+	"True":  true,
+	"f":     false,
+	"false": false,
+	"False": false,
+}
+
+// Uint64 returns the uint64 value for a Scalar type.
+func (t Token) Uint64() (uint64, bool) {
+	if t.kind != Scalar || t.attrs != numberValue ||
+		t.numAttrs&isNegative > 0 || t.numAttrs&numFloat > 0 {
+		return 0, false
+	}
+	n, err := strconv.ParseUint(t.str, 0, 64)
+	if err != nil {
+		return 0, false
+	}
+	return n, true
+}
+
+// Uint32 returns the uint32 value for a Scalar type.
+func (t Token) Uint32() (uint32, bool) {
+	if t.kind != Scalar || t.attrs != numberValue ||
+		t.numAttrs&isNegative > 0 || t.numAttrs&numFloat > 0 {
+		return 0, false
+	}
+	n, err := strconv.ParseUint(t.str, 0, 32)
+	if err != nil {
+		return 0, false
+	}
+	return uint32(n), true
+}
+
+// Int64 returns the int64 value for a Scalar type.
+func (t Token) Int64() (int64, bool) {
+	if t.kind != Scalar || t.attrs != numberValue || t.numAttrs&numFloat > 0 {
+		return 0, false
+	}
+	if n, err := strconv.ParseInt(t.str, 0, 64); err == nil {
+		return n, true
+	}
+	// C++ accepts large positive hex numbers as negative values.
+	// This feature is here for proto1 backwards compatibility purposes.
+	if flags.ProtoLegacy && (t.numAttrs == numHex) {
+		if n, err := strconv.ParseUint(t.str, 0, 64); err == nil {
+			return int64(n), true
+		}
+	}
+	return 0, false
+}
+
+// Int32 returns the int32 value for a Scalar type.
+func (t Token) Int32() (int32, bool) {
+	if t.kind != Scalar || t.attrs != numberValue || t.numAttrs&numFloat > 0 {
+		return 0, false
+	}
+	if n, err := strconv.ParseInt(t.str, 0, 32); err == nil {
+		return int32(n), true
+	}
+	// C++ accepts large positive hex numbers as negative values.
+	// This feature is here for proto1 backwards compatibility purposes.
+	if flags.ProtoLegacy && (t.numAttrs == numHex) {
+		if n, err := strconv.ParseUint(t.str, 0, 32); err == nil {
+			return int32(n), true
+		}
+	}
+	return 0, false
+}
+
+// Float64 returns the float64 value for a Scalar type.
+func (t Token) Float64() (float64, bool) {
+	if t.kind != Scalar {
+		return 0, false
+	}
+	switch t.attrs {
+	case literalValue:
+		if f, ok := floatLits[strings.ToLower(string(t.raw))]; ok {
+			return f, true
+		}
+	case numberValue:
+		n, err := strconv.ParseFloat(t.str, 64)
+		if err == nil {
+			return n, true
+		}
+		nerr := err.(*strconv.NumError)
+		if nerr.Err == strconv.ErrRange {
+			return n, true
+		}
+	}
+	return 0, false
+}
+
+// Float32 returns the float32 value for a Scalar type.
+func (t Token) Float32() (float32, bool) {
+	if t.kind != Scalar {
+		return 0, false
+	}
+	switch t.attrs {
+	case literalValue:
+		if f, ok := floatLits[strings.ToLower(string(t.raw))]; ok {
+			return float32(f), true
+		}
+	case numberValue:
+		n, err := strconv.ParseFloat(t.str, 64)
+		if err == nil {
+			// Overflows are treated as (-)infinity.
+			return float32(n), true
+		}
+		nerr := err.(*strconv.NumError)
+		if nerr.Err == strconv.ErrRange {
+			return float32(n), true
+		}
+	}
+	return 0, false
+}
+
+// These are the supported float literals which C++ permits case-insensitive
+// variants of these.
+var floatLits = map[string]float64{
+	"nan":       math.NaN(),
+	"inf":       math.Inf(1),
+	"infinity":  math.Inf(1),
+	"-inf":      math.Inf(-1),
+	"-infinity": math.Inf(-1),
+}
+
+// TokenEquals returns true if given Tokens are equal, else false.
+func TokenEquals(x, y Token) bool {
+	return x.kind == y.kind &&
+		x.attrs == y.attrs &&
+		x.numAttrs == y.numAttrs &&
+		x.pos == y.pos &&
+		bytes.Equal(x.raw, y.raw) &&
+		x.str == y.str
+}
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go b/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go
new file mode 100644
index 0000000..0ce8d6f
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go
@@ -0,0 +1,29 @@
+// 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.
+
+// Package text implements the text format for protocol buffers.
+// This package has no semantic understanding for protocol buffers and is only
+// a parser and composer for the format.
+//
+// There is no formal specification for the protobuf text format, as such the
+// C++ implementation (see google::protobuf::TextFormat) is the reference
+// implementation of the text format.
+//
+// This package is neither a superset nor a subset of the C++ implementation.
+// This implementation permits a more liberal grammar in some cases to be
+// backwards compatible with the historical Go implementation.
+// Future parsings unique to Go should not be added.
+// Some grammars allowed by the C++ implementation are deliberately
+// not implemented here because they are considered a bug by the protobuf team
+// and should not be replicated.
+//
+// The Go implementation should implement a sufficient amount of the C++
+// grammar such that the default text serialization by C++ can be parsed by Go.
+// However, just because the C++ parser accepts some input does not mean that
+// the Go implementation should as well.
+//
+// The text format is almost a superset of JSON except:
+//	* message keys are not quoted strings, but identifiers
+//	* the top-level value must be a message without the delimiters
+package text
diff --git a/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go b/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go
new file mode 100644
index 0000000..c4ba1c5
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go
@@ -0,0 +1,267 @@
+// 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.
+
+package text
+
+import (
+	"math"
+	"math/bits"
+	"strconv"
+	"strings"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/internal/detrand"
+	"google.golang.org/protobuf/internal/errors"
+)
+
+// encType represents an encoding type.
+type encType uint8
+
+const (
+	_ encType = (1 << iota) / 2
+	name
+	scalar
+	messageOpen
+	messageClose
+)
+
+// Encoder provides methods to write out textproto constructs and values. The user is
+// responsible for producing valid sequences of constructs and values.
+type Encoder struct {
+	encoderState
+
+	indent      string
+	newline     string // set to "\n" if len(indent) > 0
+	delims      [2]byte
+	outputASCII bool
+}
+
+type encoderState struct {
+	lastType encType
+	indents  []byte
+	out      []byte
+}
+
+// NewEncoder returns an Encoder.
+//
+// If indent is a non-empty string, it causes every entry in a List or Message
+// to be preceded by the indent and trailed by a newline.
+//
+// If delims is not the zero value, it controls the delimiter characters used
+// for messages (e.g., "{}" vs "<>").
+//
+// If outputASCII is true, strings will be serialized in such a way that
+// multi-byte UTF-8 sequences are escaped. This property ensures that the
+// overall output is ASCII (as opposed to UTF-8).
+func NewEncoder(indent string, delims [2]byte, outputASCII bool) (*Encoder, error) {
+	e := &Encoder{}
+	if len(indent) > 0 {
+		if strings.Trim(indent, " \t") != "" {
+			return nil, errors.New("indent may only be composed of space and tab characters")
+		}
+		e.indent = indent
+		e.newline = "\n"
+	}
+	switch delims {
+	case [2]byte{0, 0}:
+		e.delims = [2]byte{'{', '}'}
+	case [2]byte{'{', '}'}, [2]byte{'<', '>'}:
+		e.delims = delims
+	default:
+		return nil, errors.New("delimiters may only be \"{}\" or \"<>\"")
+	}
+	e.outputASCII = outputASCII
+
+	return e, nil
+}
+
+// Bytes returns the content of the written bytes.
+func (e *Encoder) Bytes() []byte {
+	return e.out
+}
+
+// StartMessage writes out the '{' or '<' symbol.
+func (e *Encoder) StartMessage() {
+	e.prepareNext(messageOpen)
+	e.out = append(e.out, e.delims[0])
+}
+
+// EndMessage writes out the '}' or '>' symbol.
+func (e *Encoder) EndMessage() {
+	e.prepareNext(messageClose)
+	e.out = append(e.out, e.delims[1])
+}
+
+// WriteName writes out the field name and the separator ':'.
+func (e *Encoder) WriteName(s string) {
+	e.prepareNext(name)
+	e.out = append(e.out, s...)
+	e.out = append(e.out, ':')
+}
+
+// WriteBool writes out the given boolean value.
+func (e *Encoder) WriteBool(b bool) {
+	if b {
+		e.WriteLiteral("true")
+	} else {
+		e.WriteLiteral("false")
+	}
+}
+
+// WriteString writes out the given string value.
+func (e *Encoder) WriteString(s string) {
+	e.prepareNext(scalar)
+	e.out = appendString(e.out, s, e.outputASCII)
+}
+
+func appendString(out []byte, in string, outputASCII bool) []byte {
+	out = append(out, '"')
+	i := indexNeedEscapeInString(in)
+	in, out = in[i:], append(out, in[:i]...)
+	for len(in) > 0 {
+		switch r, n := utf8.DecodeRuneInString(in); {
+		case r == utf8.RuneError && n == 1:
+			// We do not report invalid UTF-8 because strings in the text format
+			// are used to represent both the proto string and bytes type.
+			r = rune(in[0])
+			fallthrough
+		case r < ' ' || r == '"' || r == '\\':
+			out = append(out, '\\')
+			switch r {
+			case '"', '\\':
+				out = append(out, byte(r))
+			case '\n':
+				out = append(out, 'n')
+			case '\r':
+				out = append(out, 'r')
+			case '\t':
+				out = append(out, 't')
+			default:
+				out = append(out, 'x')
+				out = append(out, "00"[1+(bits.Len32(uint32(r))-1)/4:]...)
+				out = strconv.AppendUint(out, uint64(r), 16)
+			}
+			in = in[n:]
+		case outputASCII && r >= utf8.RuneSelf:
+			out = append(out, '\\')
+			if r <= math.MaxUint16 {
+				out = append(out, 'u')
+				out = append(out, "0000"[1+(bits.Len32(uint32(r))-1)/4:]...)
+				out = strconv.AppendUint(out, uint64(r), 16)
+			} else {
+				out = append(out, 'U')
+				out = append(out, "00000000"[1+(bits.Len32(uint32(r))-1)/4:]...)
+				out = strconv.AppendUint(out, uint64(r), 16)
+			}
+			in = in[n:]
+		default:
+			i := indexNeedEscapeInString(in[n:])
+			in, out = in[n+i:], append(out, in[:n+i]...)
+		}
+	}
+	out = append(out, '"')
+	return out
+}
+
+// indexNeedEscapeInString returns the index of the character that needs
+// escaping. If no characters need escaping, this returns the input length.
+func indexNeedEscapeInString(s string) int {
+	for i := 0; i < len(s); i++ {
+		if c := s[i]; c < ' ' || c == '"' || c == '\'' || c == '\\' || c >= utf8.RuneSelf {
+			return i
+		}
+	}
+	return len(s)
+}
+
+// WriteFloat writes out the given float value for given bitSize.
+func (e *Encoder) WriteFloat(n float64, bitSize int) {
+	e.prepareNext(scalar)
+	e.out = appendFloat(e.out, n, bitSize)
+}
+
+func appendFloat(out []byte, n float64, bitSize int) []byte {
+	switch {
+	case math.IsNaN(n):
+		return append(out, "nan"...)
+	case math.IsInf(n, +1):
+		return append(out, "inf"...)
+	case math.IsInf(n, -1):
+		return append(out, "-inf"...)
+	default:
+		return strconv.AppendFloat(out, n, 'g', -1, bitSize)
+	}
+}
+
+// WriteInt writes out the given signed integer value.
+func (e *Encoder) WriteInt(n int64) {
+	e.prepareNext(scalar)
+	e.out = append(e.out, strconv.FormatInt(n, 10)...)
+}
+
+// WriteUint writes out the given unsigned integer value.
+func (e *Encoder) WriteUint(n uint64) {
+	e.prepareNext(scalar)
+	e.out = append(e.out, strconv.FormatUint(n, 10)...)
+}
+
+// WriteLiteral writes out the given string as a literal value without quotes.
+// This is used for writing enum literal strings.
+func (e *Encoder) WriteLiteral(s string) {
+	e.prepareNext(scalar)
+	e.out = append(e.out, s...)
+}
+
+// prepareNext adds possible space and indentation for the next value based
+// on last encType and indent option. It also updates e.lastType to next.
+func (e *Encoder) prepareNext(next encType) {
+	defer func() {
+		e.lastType = next
+	}()
+
+	// Single line.
+	if len(e.indent) == 0 {
+		// Add space after each field before the next one.
+		if e.lastType&(scalar|messageClose) != 0 && next == name {
+			e.out = append(e.out, ' ')
+			// Add a random extra space to make output unstable.
+			if detrand.Bool() {
+				e.out = append(e.out, ' ')
+			}
+		}
+		return
+	}
+
+	// Multi-line.
+	switch {
+	case e.lastType == name:
+		e.out = append(e.out, ' ')
+		// Add a random extra space after name: to make output unstable.
+		if detrand.Bool() {
+			e.out = append(e.out, ' ')
+		}
+
+	case e.lastType == messageOpen && next != messageClose:
+		e.indents = append(e.indents, e.indent...)
+		e.out = append(e.out, '\n')
+		e.out = append(e.out, e.indents...)
+
+	case e.lastType&(scalar|messageClose) != 0:
+		if next == messageClose {
+			e.indents = e.indents[:len(e.indents)-len(e.indent)]
+		}
+		e.out = append(e.out, '\n')
+		e.out = append(e.out, e.indents...)
+	}
+}
+
+// Snapshot returns the current snapshot for use in Reset.
+func (e *Encoder) Snapshot() encoderState {
+	return e.encoderState
+}
+
+// Reset resets the Encoder to the given encoderState from a Snapshot.
+func (e *Encoder) Reset(es encoderState) {
+	e.encoderState = es
+}
diff --git a/vendor/google.golang.org/protobuf/internal/errors/errors.go b/vendor/google.golang.org/protobuf/internal/errors/errors.go
new file mode 100644
index 0000000..20c17b3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/errors/errors.go
@@ -0,0 +1,89 @@
+// 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.
+
+// Package errors implements functions to manipulate errors.
+package errors
+
+import (
+	"errors"
+	"fmt"
+
+	"google.golang.org/protobuf/internal/detrand"
+)
+
+// Error is a sentinel matching all errors produced by this package.
+var Error = errors.New("protobuf error")
+
+// New formats a string according to the format specifier and arguments and
+// returns an error that has a "proto" prefix.
+func New(f string, x ...interface{}) error {
+	return &prefixError{s: format(f, x...)}
+}
+
+type prefixError struct{ s string }
+
+var prefix = func() string {
+	// Deliberately introduce instability into the error message string to
+	// discourage users from performing error string comparisons.
+	if detrand.Bool() {
+		return "proto: " // use non-breaking spaces (U+00a0)
+	} else {
+		return "proto: " // use regular spaces (U+0020)
+	}
+}()
+
+func (e *prefixError) Error() string {
+	return prefix + e.s
+}
+
+func (e *prefixError) Unwrap() error {
+	return Error
+}
+
+// Wrap returns an error that has a "proto" prefix, the formatted string described
+// by the format specifier and arguments, and a suffix of err. The error wraps err.
+func Wrap(err error, f string, x ...interface{}) error {
+	return &wrapError{
+		s:   format(f, x...),
+		err: err,
+	}
+}
+
+type wrapError struct {
+	s   string
+	err error
+}
+
+func (e *wrapError) Error() string {
+	return format("%v%v: %v", prefix, e.s, e.err)
+}
+
+func (e *wrapError) Unwrap() error {
+	return e.err
+}
+
+func (e *wrapError) Is(target error) bool {
+	return target == Error
+}
+
+func format(f string, x ...interface{}) string {
+	// avoid "proto: " prefix when chaining
+	for i := 0; i < len(x); i++ {
+		switch e := x[i].(type) {
+		case *prefixError:
+			x[i] = e.s
+		case *wrapError:
+			x[i] = format("%v: %v", e.s, e.err)
+		}
+	}
+	return fmt.Sprintf(f, x...)
+}
+
+func InvalidUTF8(name string) error {
+	return New("field %v contains invalid UTF-8", name)
+}
+
+func RequiredNotSet(name string) error {
+	return New("required field %v not set", name)
+}
diff --git a/vendor/google.golang.org/protobuf/internal/errors/is_go112.go b/vendor/google.golang.org/protobuf/internal/errors/is_go112.go
new file mode 100644
index 0000000..f90e909
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/errors/is_go112.go
@@ -0,0 +1,39 @@
+// 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.
+
+// +build !go1.13
+
+package errors
+
+import "reflect"
+
+// Is is a copy of Go 1.13's errors.Is for use with older Go versions.
+func Is(err, target error) bool {
+	if target == nil {
+		return err == target
+	}
+
+	isComparable := reflect.TypeOf(target).Comparable()
+	for {
+		if isComparable && err == target {
+			return true
+		}
+		if x, ok := err.(interface{ Is(error) bool }); ok && x.Is(target) {
+			return true
+		}
+		if err = unwrap(err); err == nil {
+			return false
+		}
+	}
+}
+
+func unwrap(err error) error {
+	u, ok := err.(interface {
+		Unwrap() error
+	})
+	if !ok {
+		return nil
+	}
+	return u.Unwrap()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/errors/is_go113.go b/vendor/google.golang.org/protobuf/internal/errors/is_go113.go
new file mode 100644
index 0000000..dc05f41
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/errors/is_go113.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.
+
+// +build go1.13
+
+package errors
+
+import "errors"
+
+// Is is errors.Is.
+func Is(err, target error) bool { return errors.Is(err, target) }
diff --git a/vendor/google.golang.org/protobuf/internal/fieldsort/fieldsort.go b/vendor/google.golang.org/protobuf/internal/fieldsort/fieldsort.go
new file mode 100644
index 0000000..517c4e2
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/fieldsort/fieldsort.go
@@ -0,0 +1,40 @@
+// 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 fieldsort defines an ordering of fields.
+//
+// The ordering defined by this package matches the historic behavior of the proto
+// package, placing extensions first and oneofs last.
+//
+// There is no guarantee about stability of the wire encoding, and users should not
+// depend on the order defined in this package as it is subject to change without
+// notice.
+package fieldsort
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Less returns true if field a comes before field j in ordered wire marshal output.
+func Less(a, b protoreflect.FieldDescriptor) bool {
+	ea := a.IsExtension()
+	eb := b.IsExtension()
+	oa := a.ContainingOneof()
+	ob := b.ContainingOneof()
+	switch {
+	case ea != eb:
+		return ea
+	case oa != nil && ob != nil:
+		if oa == ob {
+			return a.Number() < b.Number()
+		}
+		return oa.Index() < ob.Index()
+	case oa != nil && !oa.IsSynthetic():
+		return false
+	case ob != nil && !ob.IsSynthetic():
+		return true
+	default:
+		return a.Number() < b.Number()
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/build.go b/vendor/google.golang.org/protobuf/internal/filedesc/build.go
new file mode 100644
index 0000000..d02d770
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/build.go
@@ -0,0 +1,155 @@
+// 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 filedesc provides functionality for constructing descriptors.
+package filedesc
+
+import (
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// Builder construct a protoreflect.FileDescriptor from the raw descriptor.
+type Builder struct {
+	// GoPackagePath is the Go package path that is invoking this builder.
+	GoPackagePath string
+
+	// RawDescriptor is the wire-encoded bytes of FileDescriptorProto
+	// and must be populated.
+	RawDescriptor []byte
+
+	// NumEnums is the total number of enums declared in the file.
+	NumEnums int32
+	// NumMessages is the total number of messages declared in the file.
+	// It includes the implicit message declarations for map entries.
+	NumMessages int32
+	// NumExtensions is the total number of extensions declared in the file.
+	NumExtensions int32
+	// NumServices is the total number of services declared in the file.
+	NumServices int32
+
+	// TypeResolver resolves extension field types for descriptor options.
+	// If nil, it uses protoregistry.GlobalTypes.
+	TypeResolver interface {
+		preg.ExtensionTypeResolver
+	}
+
+	// FileRegistry is use to lookup file, enum, and message dependencies.
+	// Once constructed, the file descriptor is registered here.
+	// If nil, it uses protoregistry.GlobalFiles.
+	FileRegistry interface {
+		FindFileByPath(string) (protoreflect.FileDescriptor, error)
+		FindDescriptorByName(pref.FullName) (pref.Descriptor, error)
+		RegisterFile(pref.FileDescriptor) error
+	}
+}
+
+// resolverByIndex is an interface Builder.FileRegistry may implement.
+// If so, it permits looking up an enum or message dependency based on the
+// sub-list and element index into filetype.Builder.DependencyIndexes.
+type resolverByIndex interface {
+	FindEnumByIndex(int32, int32, []Enum, []Message) pref.EnumDescriptor
+	FindMessageByIndex(int32, int32, []Enum, []Message) pref.MessageDescriptor
+}
+
+// Indexes of each sub-list in filetype.Builder.DependencyIndexes.
+const (
+	listFieldDeps int32 = iota
+	listExtTargets
+	listExtDeps
+	listMethInDeps
+	listMethOutDeps
+)
+
+// Out is the output of the Builder.
+type Out struct {
+	File pref.FileDescriptor
+
+	// Enums is all enum descriptors in "flattened ordering".
+	Enums []Enum
+	// Messages is all message descriptors in "flattened ordering".
+	// It includes the implicit message declarations for map entries.
+	Messages []Message
+	// Extensions is all extension descriptors in "flattened ordering".
+	Extensions []Extension
+	// Service is all service descriptors in "flattened ordering".
+	Services []Service
+}
+
+// Build constructs a FileDescriptor given the parameters set in Builder.
+// It assumes that the inputs are well-formed and panics if any inconsistencies
+// are encountered.
+//
+// If NumEnums+NumMessages+NumExtensions+NumServices is zero,
+// then Build automatically derives them from the raw descriptor.
+func (db Builder) Build() (out Out) {
+	// Populate the counts if uninitialized.
+	if db.NumEnums+db.NumMessages+db.NumExtensions+db.NumServices == 0 {
+		db.unmarshalCounts(db.RawDescriptor, true)
+	}
+
+	// Initialize resolvers and registries if unpopulated.
+	if db.TypeResolver == nil {
+		db.TypeResolver = preg.GlobalTypes
+	}
+	if db.FileRegistry == nil {
+		db.FileRegistry = preg.GlobalFiles
+	}
+
+	fd := newRawFile(db)
+	out.File = fd
+	out.Enums = fd.allEnums
+	out.Messages = fd.allMessages
+	out.Extensions = fd.allExtensions
+	out.Services = fd.allServices
+
+	if err := db.FileRegistry.RegisterFile(fd); err != nil {
+		panic(err)
+	}
+	return out
+}
+
+// unmarshalCounts counts the number of enum, message, extension, and service
+// declarations in the raw message, which is either a FileDescriptorProto
+// or a MessageDescriptorProto depending on whether isFile is set.
+func (db *Builder) unmarshalCounts(b []byte, isFile bool) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			if isFile {
+				switch num {
+				case genid.FileDescriptorProto_EnumType_field_number:
+					db.NumEnums++
+				case genid.FileDescriptorProto_MessageType_field_number:
+					db.unmarshalCounts(v, false)
+					db.NumMessages++
+				case genid.FileDescriptorProto_Extension_field_number:
+					db.NumExtensions++
+				case genid.FileDescriptorProto_Service_field_number:
+					db.NumServices++
+				}
+			} else {
+				switch num {
+				case genid.DescriptorProto_EnumType_field_number:
+					db.NumEnums++
+				case genid.DescriptorProto_NestedType_field_number:
+					db.unmarshalCounts(v, false)
+					db.NumMessages++
+				case genid.DescriptorProto_Extension_field_number:
+					db.NumExtensions++
+				}
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/desc.go b/vendor/google.golang.org/protobuf/internal/filedesc/desc.go
new file mode 100644
index 0000000..9385126
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/desc.go
@@ -0,0 +1,614 @@
+// 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 filedesc
+
+import (
+	"bytes"
+	"fmt"
+	"sync"
+	"sync/atomic"
+
+	"google.golang.org/protobuf/internal/descfmt"
+	"google.golang.org/protobuf/internal/descopts"
+	"google.golang.org/protobuf/internal/encoding/defval"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/internal/strs"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// The types in this file may have a suffix:
+//	• L0: Contains fields common to all descriptors (except File) and
+//	must be initialized up front.
+//	• L1: Contains fields specific to a descriptor and
+//	must be initialized up front.
+//	• L2: Contains fields that are lazily initialized when constructing
+//	from the raw file descriptor. When constructing as a literal, the L2
+//	fields must be initialized up front.
+//
+// The types are exported so that packages like reflect/protodesc can
+// directly construct descriptors.
+
+type (
+	File struct {
+		fileRaw
+		L1 FileL1
+
+		once uint32     // atomically set if L2 is valid
+		mu   sync.Mutex // protects L2
+		L2   *FileL2
+	}
+	FileL1 struct {
+		Syntax  pref.Syntax
+		Path    string
+		Package pref.FullName
+
+		Enums      Enums
+		Messages   Messages
+		Extensions Extensions
+		Services   Services
+	}
+	FileL2 struct {
+		Options   func() pref.ProtoMessage
+		Imports   FileImports
+		Locations SourceLocations
+	}
+)
+
+func (fd *File) ParentFile() pref.FileDescriptor { return fd }
+func (fd *File) Parent() pref.Descriptor         { return nil }
+func (fd *File) Index() int                      { return 0 }
+func (fd *File) Syntax() pref.Syntax             { return fd.L1.Syntax }
+func (fd *File) Name() pref.Name                 { return fd.L1.Package.Name() }
+func (fd *File) FullName() pref.FullName         { return fd.L1.Package }
+func (fd *File) IsPlaceholder() bool             { return false }
+func (fd *File) Options() pref.ProtoMessage {
+	if f := fd.lazyInit().Options; f != nil {
+		return f()
+	}
+	return descopts.File
+}
+func (fd *File) Path() string                          { return fd.L1.Path }
+func (fd *File) Package() pref.FullName                { return fd.L1.Package }
+func (fd *File) Imports() pref.FileImports             { return &fd.lazyInit().Imports }
+func (fd *File) Enums() pref.EnumDescriptors           { return &fd.L1.Enums }
+func (fd *File) Messages() pref.MessageDescriptors     { return &fd.L1.Messages }
+func (fd *File) Extensions() pref.ExtensionDescriptors { return &fd.L1.Extensions }
+func (fd *File) Services() pref.ServiceDescriptors     { return &fd.L1.Services }
+func (fd *File) SourceLocations() pref.SourceLocations { return &fd.lazyInit().Locations }
+func (fd *File) Format(s fmt.State, r rune)            { descfmt.FormatDesc(s, r, fd) }
+func (fd *File) ProtoType(pref.FileDescriptor)         {}
+func (fd *File) ProtoInternal(pragma.DoNotImplement)   {}
+
+func (fd *File) lazyInit() *FileL2 {
+	if atomic.LoadUint32(&fd.once) == 0 {
+		fd.lazyInitOnce()
+	}
+	return fd.L2
+}
+
+func (fd *File) lazyInitOnce() {
+	fd.mu.Lock()
+	if fd.L2 == nil {
+		fd.lazyRawInit() // recursively initializes all L2 structures
+	}
+	atomic.StoreUint32(&fd.once, 1)
+	fd.mu.Unlock()
+}
+
+// ProtoLegacyRawDesc is a pseudo-internal API for allowing the v1 code
+// to be able to retrieve the raw descriptor.
+//
+// WARNING: This method is exempt from the compatibility promise and may be
+// removed in the future without warning.
+func (fd *File) ProtoLegacyRawDesc() []byte {
+	return fd.builder.RawDescriptor
+}
+
+// GoPackagePath is a pseudo-internal API for determining the Go package path
+// that this file descriptor is declared in.
+//
+// WARNING: This method is exempt from the compatibility promise and may be
+// removed in the future without warning.
+func (fd *File) GoPackagePath() string {
+	return fd.builder.GoPackagePath
+}
+
+type (
+	Enum struct {
+		Base
+		L1 EnumL1
+		L2 *EnumL2 // protected by fileDesc.once
+	}
+	EnumL1 struct {
+		eagerValues bool // controls whether EnumL2.Values is already populated
+	}
+	EnumL2 struct {
+		Options        func() pref.ProtoMessage
+		Values         EnumValues
+		ReservedNames  Names
+		ReservedRanges EnumRanges
+	}
+
+	EnumValue struct {
+		Base
+		L1 EnumValueL1
+	}
+	EnumValueL1 struct {
+		Options func() pref.ProtoMessage
+		Number  pref.EnumNumber
+	}
+)
+
+func (ed *Enum) Options() pref.ProtoMessage {
+	if f := ed.lazyInit().Options; f != nil {
+		return f()
+	}
+	return descopts.Enum
+}
+func (ed *Enum) Values() pref.EnumValueDescriptors {
+	if ed.L1.eagerValues {
+		return &ed.L2.Values
+	}
+	return &ed.lazyInit().Values
+}
+func (ed *Enum) ReservedNames() pref.Names       { return &ed.lazyInit().ReservedNames }
+func (ed *Enum) ReservedRanges() pref.EnumRanges { return &ed.lazyInit().ReservedRanges }
+func (ed *Enum) Format(s fmt.State, r rune)      { descfmt.FormatDesc(s, r, ed) }
+func (ed *Enum) ProtoType(pref.EnumDescriptor)   {}
+func (ed *Enum) lazyInit() *EnumL2 {
+	ed.L0.ParentFile.lazyInit() // implicitly initializes L2
+	return ed.L2
+}
+
+func (ed *EnumValue) Options() pref.ProtoMessage {
+	if f := ed.L1.Options; f != nil {
+		return f()
+	}
+	return descopts.EnumValue
+}
+func (ed *EnumValue) Number() pref.EnumNumber            { return ed.L1.Number }
+func (ed *EnumValue) Format(s fmt.State, r rune)         { descfmt.FormatDesc(s, r, ed) }
+func (ed *EnumValue) ProtoType(pref.EnumValueDescriptor) {}
+
+type (
+	Message struct {
+		Base
+		L1 MessageL1
+		L2 *MessageL2 // protected by fileDesc.once
+	}
+	MessageL1 struct {
+		Enums        Enums
+		Messages     Messages
+		Extensions   Extensions
+		IsMapEntry   bool // promoted from google.protobuf.MessageOptions
+		IsMessageSet bool // promoted from google.protobuf.MessageOptions
+	}
+	MessageL2 struct {
+		Options               func() pref.ProtoMessage
+		Fields                Fields
+		Oneofs                Oneofs
+		ReservedNames         Names
+		ReservedRanges        FieldRanges
+		RequiredNumbers       FieldNumbers // must be consistent with Fields.Cardinality
+		ExtensionRanges       FieldRanges
+		ExtensionRangeOptions []func() pref.ProtoMessage // must be same length as ExtensionRanges
+	}
+
+	Field struct {
+		Base
+		L1 FieldL1
+	}
+	FieldL1 struct {
+		Options          func() pref.ProtoMessage
+		Number           pref.FieldNumber
+		Cardinality      pref.Cardinality // must be consistent with Message.RequiredNumbers
+		Kind             pref.Kind
+		JSONName         jsonName
+		IsProto3Optional bool // promoted from google.protobuf.FieldDescriptorProto
+		IsWeak           bool // promoted from google.protobuf.FieldOptions
+		HasPacked        bool // promoted from google.protobuf.FieldOptions
+		IsPacked         bool // promoted from google.protobuf.FieldOptions
+		HasEnforceUTF8   bool // promoted from google.protobuf.FieldOptions
+		EnforceUTF8      bool // promoted from google.protobuf.FieldOptions
+		Default          defaultValue
+		ContainingOneof  pref.OneofDescriptor // must be consistent with Message.Oneofs.Fields
+		Enum             pref.EnumDescriptor
+		Message          pref.MessageDescriptor
+	}
+
+	Oneof struct {
+		Base
+		L1 OneofL1
+	}
+	OneofL1 struct {
+		Options func() pref.ProtoMessage
+		Fields  OneofFields // must be consistent with Message.Fields.ContainingOneof
+	}
+)
+
+func (md *Message) Options() pref.ProtoMessage {
+	if f := md.lazyInit().Options; f != nil {
+		return f()
+	}
+	return descopts.Message
+}
+func (md *Message) IsMapEntry() bool                   { return md.L1.IsMapEntry }
+func (md *Message) Fields() pref.FieldDescriptors      { return &md.lazyInit().Fields }
+func (md *Message) Oneofs() pref.OneofDescriptors      { return &md.lazyInit().Oneofs }
+func (md *Message) ReservedNames() pref.Names          { return &md.lazyInit().ReservedNames }
+func (md *Message) ReservedRanges() pref.FieldRanges   { return &md.lazyInit().ReservedRanges }
+func (md *Message) RequiredNumbers() pref.FieldNumbers { return &md.lazyInit().RequiredNumbers }
+func (md *Message) ExtensionRanges() pref.FieldRanges  { return &md.lazyInit().ExtensionRanges }
+func (md *Message) ExtensionRangeOptions(i int) pref.ProtoMessage {
+	if f := md.lazyInit().ExtensionRangeOptions[i]; f != nil {
+		return f()
+	}
+	return descopts.ExtensionRange
+}
+func (md *Message) Enums() pref.EnumDescriptors           { return &md.L1.Enums }
+func (md *Message) Messages() pref.MessageDescriptors     { return &md.L1.Messages }
+func (md *Message) Extensions() pref.ExtensionDescriptors { return &md.L1.Extensions }
+func (md *Message) ProtoType(pref.MessageDescriptor)      {}
+func (md *Message) Format(s fmt.State, r rune)            { descfmt.FormatDesc(s, r, md) }
+func (md *Message) lazyInit() *MessageL2 {
+	md.L0.ParentFile.lazyInit() // implicitly initializes L2
+	return md.L2
+}
+
+// IsMessageSet is a pseudo-internal API for checking whether a message
+// should serialize in the proto1 message format.
+//
+// WARNING: This method is exempt from the compatibility promise and may be
+// removed in the future without warning.
+func (md *Message) IsMessageSet() bool {
+	return md.L1.IsMessageSet
+}
+
+func (fd *Field) Options() pref.ProtoMessage {
+	if f := fd.L1.Options; f != nil {
+		return f()
+	}
+	return descopts.Field
+}
+func (fd *Field) Number() pref.FieldNumber      { return fd.L1.Number }
+func (fd *Field) Cardinality() pref.Cardinality { return fd.L1.Cardinality }
+func (fd *Field) Kind() pref.Kind               { return fd.L1.Kind }
+func (fd *Field) HasJSONName() bool             { return fd.L1.JSONName.has }
+func (fd *Field) JSONName() string              { return fd.L1.JSONName.get(fd) }
+func (fd *Field) HasPresence() bool {
+	return fd.L1.Cardinality != pref.Repeated && (fd.L0.ParentFile.L1.Syntax == pref.Proto2 || fd.L1.Message != nil || fd.L1.ContainingOneof != nil)
+}
+func (fd *Field) HasOptionalKeyword() bool {
+	return (fd.L0.ParentFile.L1.Syntax == pref.Proto2 && fd.L1.Cardinality == pref.Optional && fd.L1.ContainingOneof == nil) || fd.L1.IsProto3Optional
+}
+func (fd *Field) IsPacked() bool {
+	if !fd.L1.HasPacked && fd.L0.ParentFile.L1.Syntax != pref.Proto2 && fd.L1.Cardinality == pref.Repeated {
+		switch fd.L1.Kind {
+		case pref.StringKind, pref.BytesKind, pref.MessageKind, pref.GroupKind:
+		default:
+			return true
+		}
+	}
+	return fd.L1.IsPacked
+}
+func (fd *Field) IsExtension() bool { return false }
+func (fd *Field) IsWeak() bool      { return fd.L1.IsWeak }
+func (fd *Field) IsList() bool      { return fd.Cardinality() == pref.Repeated && !fd.IsMap() }
+func (fd *Field) IsMap() bool       { return fd.Message() != nil && fd.Message().IsMapEntry() }
+func (fd *Field) MapKey() pref.FieldDescriptor {
+	if !fd.IsMap() {
+		return nil
+	}
+	return fd.Message().Fields().ByNumber(genid.MapEntry_Key_field_number)
+}
+func (fd *Field) MapValue() pref.FieldDescriptor {
+	if !fd.IsMap() {
+		return nil
+	}
+	return fd.Message().Fields().ByNumber(genid.MapEntry_Value_field_number)
+}
+func (fd *Field) HasDefault() bool                           { return fd.L1.Default.has }
+func (fd *Field) Default() pref.Value                        { return fd.L1.Default.get(fd) }
+func (fd *Field) DefaultEnumValue() pref.EnumValueDescriptor { return fd.L1.Default.enum }
+func (fd *Field) ContainingOneof() pref.OneofDescriptor      { return fd.L1.ContainingOneof }
+func (fd *Field) ContainingMessage() pref.MessageDescriptor {
+	return fd.L0.Parent.(pref.MessageDescriptor)
+}
+func (fd *Field) Enum() pref.EnumDescriptor {
+	return fd.L1.Enum
+}
+func (fd *Field) Message() pref.MessageDescriptor {
+	if fd.L1.IsWeak {
+		if d, _ := protoregistry.GlobalFiles.FindDescriptorByName(fd.L1.Message.FullName()); d != nil {
+			return d.(pref.MessageDescriptor)
+		}
+	}
+	return fd.L1.Message
+}
+func (fd *Field) Format(s fmt.State, r rune)     { descfmt.FormatDesc(s, r, fd) }
+func (fd *Field) ProtoType(pref.FieldDescriptor) {}
+
+// EnforceUTF8 is a pseudo-internal API to determine whether to enforce UTF-8
+// validation for the string field. This exists for Google-internal use only
+// since proto3 did not enforce UTF-8 validity prior to the open-source release.
+// If this method does not exist, the default is to enforce valid UTF-8.
+//
+// WARNING: This method is exempt from the compatibility promise and may be
+// removed in the future without warning.
+func (fd *Field) EnforceUTF8() bool {
+	if fd.L1.HasEnforceUTF8 {
+		return fd.L1.EnforceUTF8
+	}
+	return fd.L0.ParentFile.L1.Syntax == pref.Proto3
+}
+
+func (od *Oneof) IsSynthetic() bool {
+	return od.L0.ParentFile.L1.Syntax == pref.Proto3 && len(od.L1.Fields.List) == 1 && od.L1.Fields.List[0].HasOptionalKeyword()
+}
+func (od *Oneof) Options() pref.ProtoMessage {
+	if f := od.L1.Options; f != nil {
+		return f()
+	}
+	return descopts.Oneof
+}
+func (od *Oneof) Fields() pref.FieldDescriptors  { return &od.L1.Fields }
+func (od *Oneof) Format(s fmt.State, r rune)     { descfmt.FormatDesc(s, r, od) }
+func (od *Oneof) ProtoType(pref.OneofDescriptor) {}
+
+type (
+	Extension struct {
+		Base
+		L1 ExtensionL1
+		L2 *ExtensionL2 // protected by fileDesc.once
+	}
+	ExtensionL1 struct {
+		Number      pref.FieldNumber
+		Extendee    pref.MessageDescriptor
+		Cardinality pref.Cardinality
+		Kind        pref.Kind
+	}
+	ExtensionL2 struct {
+		Options          func() pref.ProtoMessage
+		JSONName         jsonName
+		IsProto3Optional bool // promoted from google.protobuf.FieldDescriptorProto
+		IsPacked         bool // promoted from google.protobuf.FieldOptions
+		Default          defaultValue
+		Enum             pref.EnumDescriptor
+		Message          pref.MessageDescriptor
+	}
+)
+
+func (xd *Extension) Options() pref.ProtoMessage {
+	if f := xd.lazyInit().Options; f != nil {
+		return f()
+	}
+	return descopts.Field
+}
+func (xd *Extension) Number() pref.FieldNumber      { return xd.L1.Number }
+func (xd *Extension) Cardinality() pref.Cardinality { return xd.L1.Cardinality }
+func (xd *Extension) Kind() pref.Kind               { return xd.L1.Kind }
+func (xd *Extension) HasJSONName() bool             { return xd.lazyInit().JSONName.has }
+func (xd *Extension) JSONName() string              { return xd.lazyInit().JSONName.get(xd) }
+func (xd *Extension) HasPresence() bool             { return xd.L1.Cardinality != pref.Repeated }
+func (xd *Extension) HasOptionalKeyword() bool {
+	return (xd.L0.ParentFile.L1.Syntax == pref.Proto2 && xd.L1.Cardinality == pref.Optional) || xd.lazyInit().IsProto3Optional
+}
+func (xd *Extension) IsPacked() bool                             { return xd.lazyInit().IsPacked }
+func (xd *Extension) IsExtension() bool                          { return true }
+func (xd *Extension) IsWeak() bool                               { return false }
+func (xd *Extension) IsList() bool                               { return xd.Cardinality() == pref.Repeated }
+func (xd *Extension) IsMap() bool                                { return false }
+func (xd *Extension) MapKey() pref.FieldDescriptor               { return nil }
+func (xd *Extension) MapValue() pref.FieldDescriptor             { return nil }
+func (xd *Extension) HasDefault() bool                           { return xd.lazyInit().Default.has }
+func (xd *Extension) Default() pref.Value                        { return xd.lazyInit().Default.get(xd) }
+func (xd *Extension) DefaultEnumValue() pref.EnumValueDescriptor { return xd.lazyInit().Default.enum }
+func (xd *Extension) ContainingOneof() pref.OneofDescriptor      { return nil }
+func (xd *Extension) ContainingMessage() pref.MessageDescriptor  { return xd.L1.Extendee }
+func (xd *Extension) Enum() pref.EnumDescriptor                  { return xd.lazyInit().Enum }
+func (xd *Extension) Message() pref.MessageDescriptor            { return xd.lazyInit().Message }
+func (xd *Extension) Format(s fmt.State, r rune)                 { descfmt.FormatDesc(s, r, xd) }
+func (xd *Extension) ProtoType(pref.FieldDescriptor)             {}
+func (xd *Extension) ProtoInternal(pragma.DoNotImplement)        {}
+func (xd *Extension) lazyInit() *ExtensionL2 {
+	xd.L0.ParentFile.lazyInit() // implicitly initializes L2
+	return xd.L2
+}
+
+type (
+	Service struct {
+		Base
+		L1 ServiceL1
+		L2 *ServiceL2 // protected by fileDesc.once
+	}
+	ServiceL1 struct{}
+	ServiceL2 struct {
+		Options func() pref.ProtoMessage
+		Methods Methods
+	}
+
+	Method struct {
+		Base
+		L1 MethodL1
+	}
+	MethodL1 struct {
+		Options           func() pref.ProtoMessage
+		Input             pref.MessageDescriptor
+		Output            pref.MessageDescriptor
+		IsStreamingClient bool
+		IsStreamingServer bool
+	}
+)
+
+func (sd *Service) Options() pref.ProtoMessage {
+	if f := sd.lazyInit().Options; f != nil {
+		return f()
+	}
+	return descopts.Service
+}
+func (sd *Service) Methods() pref.MethodDescriptors     { return &sd.lazyInit().Methods }
+func (sd *Service) Format(s fmt.State, r rune)          { descfmt.FormatDesc(s, r, sd) }
+func (sd *Service) ProtoType(pref.ServiceDescriptor)    {}
+func (sd *Service) ProtoInternal(pragma.DoNotImplement) {}
+func (sd *Service) lazyInit() *ServiceL2 {
+	sd.L0.ParentFile.lazyInit() // implicitly initializes L2
+	return sd.L2
+}
+
+func (md *Method) Options() pref.ProtoMessage {
+	if f := md.L1.Options; f != nil {
+		return f()
+	}
+	return descopts.Method
+}
+func (md *Method) Input() pref.MessageDescriptor       { return md.L1.Input }
+func (md *Method) Output() pref.MessageDescriptor      { return md.L1.Output }
+func (md *Method) IsStreamingClient() bool             { return md.L1.IsStreamingClient }
+func (md *Method) IsStreamingServer() bool             { return md.L1.IsStreamingServer }
+func (md *Method) Format(s fmt.State, r rune)          { descfmt.FormatDesc(s, r, md) }
+func (md *Method) ProtoType(pref.MethodDescriptor)     {}
+func (md *Method) ProtoInternal(pragma.DoNotImplement) {}
+
+// Surrogate files are can be used to create standalone descriptors
+// where the syntax is only information derived from the parent file.
+var (
+	SurrogateProto2 = &File{L1: FileL1{Syntax: pref.Proto2}, L2: &FileL2{}}
+	SurrogateProto3 = &File{L1: FileL1{Syntax: pref.Proto3}, L2: &FileL2{}}
+)
+
+type (
+	Base struct {
+		L0 BaseL0
+	}
+	BaseL0 struct {
+		FullName   pref.FullName // must be populated
+		ParentFile *File         // must be populated
+		Parent     pref.Descriptor
+		Index      int
+	}
+)
+
+func (d *Base) Name() pref.Name         { return d.L0.FullName.Name() }
+func (d *Base) FullName() pref.FullName { return d.L0.FullName }
+func (d *Base) ParentFile() pref.FileDescriptor {
+	if d.L0.ParentFile == SurrogateProto2 || d.L0.ParentFile == SurrogateProto3 {
+		return nil // surrogate files are not real parents
+	}
+	return d.L0.ParentFile
+}
+func (d *Base) Parent() pref.Descriptor             { return d.L0.Parent }
+func (d *Base) Index() int                          { return d.L0.Index }
+func (d *Base) Syntax() pref.Syntax                 { return d.L0.ParentFile.Syntax() }
+func (d *Base) IsPlaceholder() bool                 { return false }
+func (d *Base) ProtoInternal(pragma.DoNotImplement) {}
+
+type jsonName struct {
+	has  bool
+	once sync.Once
+	name string
+}
+
+// Init initializes the name. It is exported for use by other internal packages.
+func (js *jsonName) Init(s string) {
+	js.has = true
+	js.name = s
+}
+
+func (js *jsonName) get(fd pref.FieldDescriptor) string {
+	if !js.has {
+		js.once.Do(func() {
+			js.name = strs.JSONCamelCase(string(fd.Name()))
+		})
+	}
+	return js.name
+}
+
+func DefaultValue(v pref.Value, ev pref.EnumValueDescriptor) defaultValue {
+	dv := defaultValue{has: v.IsValid(), val: v, enum: ev}
+	if b, ok := v.Interface().([]byte); ok {
+		// Store a copy of the default bytes, so that we can detect
+		// accidental mutations of the original value.
+		dv.bytes = append([]byte(nil), b...)
+	}
+	return dv
+}
+
+func unmarshalDefault(b []byte, k pref.Kind, pf *File, ed pref.EnumDescriptor) defaultValue {
+	var evs pref.EnumValueDescriptors
+	if k == pref.EnumKind {
+		// If the enum is declared within the same file, be careful not to
+		// blindly call the Values method, lest we bind ourselves in a deadlock.
+		if e, ok := ed.(*Enum); ok && e.L0.ParentFile == pf {
+			evs = &e.L2.Values
+		} else {
+			evs = ed.Values()
+		}
+
+		// If we are unable to resolve the enum dependency, use a placeholder
+		// enum value since we will not be able to parse the default value.
+		if ed.IsPlaceholder() && pref.Name(b).IsValid() {
+			v := pref.ValueOfEnum(0)
+			ev := PlaceholderEnumValue(ed.FullName().Parent().Append(pref.Name(b)))
+			return DefaultValue(v, ev)
+		}
+	}
+
+	v, ev, err := defval.Unmarshal(string(b), k, evs, defval.Descriptor)
+	if err != nil {
+		panic(err)
+	}
+	return DefaultValue(v, ev)
+}
+
+type defaultValue struct {
+	has   bool
+	val   pref.Value
+	enum  pref.EnumValueDescriptor
+	bytes []byte
+}
+
+func (dv *defaultValue) get(fd pref.FieldDescriptor) pref.Value {
+	// Return the zero value as the default if unpopulated.
+	if !dv.has {
+		if fd.Cardinality() == pref.Repeated {
+			return pref.Value{}
+		}
+		switch fd.Kind() {
+		case pref.BoolKind:
+			return pref.ValueOfBool(false)
+		case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
+			return pref.ValueOfInt32(0)
+		case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
+			return pref.ValueOfInt64(0)
+		case pref.Uint32Kind, pref.Fixed32Kind:
+			return pref.ValueOfUint32(0)
+		case pref.Uint64Kind, pref.Fixed64Kind:
+			return pref.ValueOfUint64(0)
+		case pref.FloatKind:
+			return pref.ValueOfFloat32(0)
+		case pref.DoubleKind:
+			return pref.ValueOfFloat64(0)
+		case pref.StringKind:
+			return pref.ValueOfString("")
+		case pref.BytesKind:
+			return pref.ValueOfBytes(nil)
+		case pref.EnumKind:
+			if evs := fd.Enum().Values(); evs.Len() > 0 {
+				return pref.ValueOfEnum(evs.Get(0).Number())
+			}
+			return pref.ValueOfEnum(0)
+		}
+	}
+
+	if len(dv.bytes) > 0 && !bytes.Equal(dv.bytes, dv.val.Bytes()) {
+		// TODO: Avoid panic if we're running with the race detector
+		// and instead spawn a goroutine that periodically resets
+		// this value back to the original to induce a race.
+		panic(fmt.Sprintf("detected mutation on the default bytes for %v", fd.FullName()))
+	}
+	return dv.val
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go b/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go
new file mode 100644
index 0000000..66e1fee
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go
@@ -0,0 +1,471 @@
+// 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 filedesc
+
+import (
+	"sync"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/strs"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// fileRaw is a data struct used when initializing a file descriptor from
+// a raw FileDescriptorProto.
+type fileRaw struct {
+	builder       Builder
+	allEnums      []Enum
+	allMessages   []Message
+	allExtensions []Extension
+	allServices   []Service
+}
+
+func newRawFile(db Builder) *File {
+	fd := &File{fileRaw: fileRaw{builder: db}}
+	fd.initDecls(db.NumEnums, db.NumMessages, db.NumExtensions, db.NumServices)
+	fd.unmarshalSeed(db.RawDescriptor)
+
+	// Extended message targets are eagerly resolved since registration
+	// needs this information at program init time.
+	for i := range fd.allExtensions {
+		xd := &fd.allExtensions[i]
+		xd.L1.Extendee = fd.resolveMessageDependency(xd.L1.Extendee, listExtTargets, int32(i))
+	}
+
+	fd.checkDecls()
+	return fd
+}
+
+// initDecls pre-allocates slices for the exact number of enums, messages
+// (including map entries), extensions, and services declared in the proto file.
+// This is done to avoid regrowing the slice, which would change the address
+// for any previously seen declaration.
+//
+// The alloc methods "allocates" slices by pulling from the capacity.
+func (fd *File) initDecls(numEnums, numMessages, numExtensions, numServices int32) {
+	fd.allEnums = make([]Enum, 0, numEnums)
+	fd.allMessages = make([]Message, 0, numMessages)
+	fd.allExtensions = make([]Extension, 0, numExtensions)
+	fd.allServices = make([]Service, 0, numServices)
+}
+
+func (fd *File) allocEnums(n int) []Enum {
+	total := len(fd.allEnums)
+	es := fd.allEnums[total : total+n]
+	fd.allEnums = fd.allEnums[:total+n]
+	return es
+}
+func (fd *File) allocMessages(n int) []Message {
+	total := len(fd.allMessages)
+	ms := fd.allMessages[total : total+n]
+	fd.allMessages = fd.allMessages[:total+n]
+	return ms
+}
+func (fd *File) allocExtensions(n int) []Extension {
+	total := len(fd.allExtensions)
+	xs := fd.allExtensions[total : total+n]
+	fd.allExtensions = fd.allExtensions[:total+n]
+	return xs
+}
+func (fd *File) allocServices(n int) []Service {
+	total := len(fd.allServices)
+	xs := fd.allServices[total : total+n]
+	fd.allServices = fd.allServices[:total+n]
+	return xs
+}
+
+// checkDecls performs a sanity check that the expected number of expected
+// declarations matches the number that were found in the descriptor proto.
+func (fd *File) checkDecls() {
+	switch {
+	case len(fd.allEnums) != cap(fd.allEnums):
+	case len(fd.allMessages) != cap(fd.allMessages):
+	case len(fd.allExtensions) != cap(fd.allExtensions):
+	case len(fd.allServices) != cap(fd.allServices):
+	default:
+		return
+	}
+	panic("mismatching cardinality")
+}
+
+func (fd *File) unmarshalSeed(b []byte) {
+	sb := getBuilder()
+	defer putBuilder(sb)
+
+	var prevField pref.FieldNumber
+	var numEnums, numMessages, numExtensions, numServices int
+	var posEnums, posMessages, posExtensions, posServices int
+	b0 := b
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.FileDescriptorProto_Syntax_field_number:
+				switch string(v) {
+				case "proto2":
+					fd.L1.Syntax = pref.Proto2
+				case "proto3":
+					fd.L1.Syntax = pref.Proto3
+				default:
+					panic("invalid syntax")
+				}
+			case genid.FileDescriptorProto_Name_field_number:
+				fd.L1.Path = sb.MakeString(v)
+			case genid.FileDescriptorProto_Package_field_number:
+				fd.L1.Package = pref.FullName(sb.MakeString(v))
+			case genid.FileDescriptorProto_EnumType_field_number:
+				if prevField != genid.FileDescriptorProto_EnumType_field_number {
+					if numEnums > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posEnums = len(b0) - len(b) - n - m
+				}
+				numEnums++
+			case genid.FileDescriptorProto_MessageType_field_number:
+				if prevField != genid.FileDescriptorProto_MessageType_field_number {
+					if numMessages > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posMessages = len(b0) - len(b) - n - m
+				}
+				numMessages++
+			case genid.FileDescriptorProto_Extension_field_number:
+				if prevField != genid.FileDescriptorProto_Extension_field_number {
+					if numExtensions > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posExtensions = len(b0) - len(b) - n - m
+				}
+				numExtensions++
+			case genid.FileDescriptorProto_Service_field_number:
+				if prevField != genid.FileDescriptorProto_Service_field_number {
+					if numServices > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posServices = len(b0) - len(b) - n - m
+				}
+				numServices++
+			}
+			prevField = num
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+			prevField = -1 // ignore known field numbers of unknown wire type
+		}
+	}
+
+	// If syntax is missing, it is assumed to be proto2.
+	if fd.L1.Syntax == 0 {
+		fd.L1.Syntax = pref.Proto2
+	}
+
+	// Must allocate all declarations before parsing each descriptor type
+	// to ensure we handled all descriptors in "flattened ordering".
+	if numEnums > 0 {
+		fd.L1.Enums.List = fd.allocEnums(numEnums)
+	}
+	if numMessages > 0 {
+		fd.L1.Messages.List = fd.allocMessages(numMessages)
+	}
+	if numExtensions > 0 {
+		fd.L1.Extensions.List = fd.allocExtensions(numExtensions)
+	}
+	if numServices > 0 {
+		fd.L1.Services.List = fd.allocServices(numServices)
+	}
+
+	if numEnums > 0 {
+		b := b0[posEnums:]
+		for i := range fd.L1.Enums.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			fd.L1.Enums.List[i].unmarshalSeed(v, sb, fd, fd, i)
+			b = b[n+m:]
+		}
+	}
+	if numMessages > 0 {
+		b := b0[posMessages:]
+		for i := range fd.L1.Messages.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			fd.L1.Messages.List[i].unmarshalSeed(v, sb, fd, fd, i)
+			b = b[n+m:]
+		}
+	}
+	if numExtensions > 0 {
+		b := b0[posExtensions:]
+		for i := range fd.L1.Extensions.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			fd.L1.Extensions.List[i].unmarshalSeed(v, sb, fd, fd, i)
+			b = b[n+m:]
+		}
+	}
+	if numServices > 0 {
+		b := b0[posServices:]
+		for i := range fd.L1.Services.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			fd.L1.Services.List[i].unmarshalSeed(v, sb, fd, fd, i)
+			b = b[n+m:]
+		}
+	}
+}
+
+func (ed *Enum) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	ed.L0.ParentFile = pf
+	ed.L0.Parent = pd
+	ed.L0.Index = i
+
+	var numValues int
+	for b := b; len(b) > 0; {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumDescriptorProto_Name_field_number:
+				ed.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.EnumDescriptorProto_Value_field_number:
+				numValues++
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+
+	// Only construct enum value descriptors for top-level enums since
+	// they are needed for registration.
+	if pd != pf {
+		return
+	}
+	ed.L1.eagerValues = true
+	ed.L2 = new(EnumL2)
+	ed.L2.Values.List = make([]EnumValue, numValues)
+	for i := 0; len(b) > 0; {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumDescriptorProto_Value_field_number:
+				ed.L2.Values.List[i].unmarshalFull(v, sb, pf, ed, i)
+				i++
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func (md *Message) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	md.L0.ParentFile = pf
+	md.L0.Parent = pd
+	md.L0.Index = i
+
+	var prevField pref.FieldNumber
+	var numEnums, numMessages, numExtensions int
+	var posEnums, posMessages, posExtensions int
+	b0 := b
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.DescriptorProto_Name_field_number:
+				md.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.DescriptorProto_EnumType_field_number:
+				if prevField != genid.DescriptorProto_EnumType_field_number {
+					if numEnums > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posEnums = len(b0) - len(b) - n - m
+				}
+				numEnums++
+			case genid.DescriptorProto_NestedType_field_number:
+				if prevField != genid.DescriptorProto_NestedType_field_number {
+					if numMessages > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posMessages = len(b0) - len(b) - n - m
+				}
+				numMessages++
+			case genid.DescriptorProto_Extension_field_number:
+				if prevField != genid.DescriptorProto_Extension_field_number {
+					if numExtensions > 0 {
+						panic("non-contiguous repeated field")
+					}
+					posExtensions = len(b0) - len(b) - n - m
+				}
+				numExtensions++
+			case genid.DescriptorProto_Options_field_number:
+				md.unmarshalSeedOptions(v)
+			}
+			prevField = num
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+			prevField = -1 // ignore known field numbers of unknown wire type
+		}
+	}
+
+	// Must allocate all declarations before parsing each descriptor type
+	// to ensure we handled all descriptors in "flattened ordering".
+	if numEnums > 0 {
+		md.L1.Enums.List = pf.allocEnums(numEnums)
+	}
+	if numMessages > 0 {
+		md.L1.Messages.List = pf.allocMessages(numMessages)
+	}
+	if numExtensions > 0 {
+		md.L1.Extensions.List = pf.allocExtensions(numExtensions)
+	}
+
+	if numEnums > 0 {
+		b := b0[posEnums:]
+		for i := range md.L1.Enums.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			md.L1.Enums.List[i].unmarshalSeed(v, sb, pf, md, i)
+			b = b[n+m:]
+		}
+	}
+	if numMessages > 0 {
+		b := b0[posMessages:]
+		for i := range md.L1.Messages.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			md.L1.Messages.List[i].unmarshalSeed(v, sb, pf, md, i)
+			b = b[n+m:]
+		}
+	}
+	if numExtensions > 0 {
+		b := b0[posExtensions:]
+		for i := range md.L1.Extensions.List {
+			_, n := protowire.ConsumeVarint(b)
+			v, m := protowire.ConsumeBytes(b[n:])
+			md.L1.Extensions.List[i].unmarshalSeed(v, sb, pf, md, i)
+			b = b[n+m:]
+		}
+	}
+}
+
+func (md *Message) unmarshalSeedOptions(b []byte) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.MessageOptions_MapEntry_field_number:
+				md.L1.IsMapEntry = protowire.DecodeBool(v)
+			case genid.MessageOptions_MessageSetWireFormat_field_number:
+				md.L1.IsMessageSet = protowire.DecodeBool(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func (xd *Extension) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	xd.L0.ParentFile = pf
+	xd.L0.Parent = pd
+	xd.L0.Index = i
+
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_Number_field_number:
+				xd.L1.Number = pref.FieldNumber(v)
+			case genid.FieldDescriptorProto_Label_field_number:
+				xd.L1.Cardinality = pref.Cardinality(v)
+			case genid.FieldDescriptorProto_Type_field_number:
+				xd.L1.Kind = pref.Kind(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_Name_field_number:
+				xd.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.FieldDescriptorProto_Extendee_field_number:
+				xd.L1.Extendee = PlaceholderMessage(makeFullName(sb, v))
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func (sd *Service) unmarshalSeed(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	sd.L0.ParentFile = pf
+	sd.L0.Parent = pd
+	sd.L0.Index = i
+
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.ServiceDescriptorProto_Name_field_number:
+				sd.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+var nameBuilderPool = sync.Pool{
+	New: func() interface{} { return new(strs.Builder) },
+}
+
+func getBuilder() *strs.Builder {
+	return nameBuilderPool.Get().(*strs.Builder)
+}
+func putBuilder(b *strs.Builder) {
+	nameBuilderPool.Put(b)
+}
+
+// makeFullName converts b to a protoreflect.FullName,
+// where b must start with a leading dot.
+func makeFullName(sb *strs.Builder, b []byte) pref.FullName {
+	if len(b) == 0 || b[0] != '.' {
+		panic("name reference must be fully qualified")
+	}
+	return pref.FullName(sb.MakeString(b[1:]))
+}
+
+func appendFullName(sb *strs.Builder, prefix pref.FullName, suffix []byte) pref.FullName {
+	return sb.AppendFullName(prefix, pref.Name(strs.UnsafeString(suffix)))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go b/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
new file mode 100644
index 0000000..e672233
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go
@@ -0,0 +1,704 @@
+// 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 filedesc
+
+import (
+	"reflect"
+	"sync"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/descopts"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+func (fd *File) lazyRawInit() {
+	fd.unmarshalFull(fd.builder.RawDescriptor)
+	fd.resolveMessages()
+	fd.resolveExtensions()
+	fd.resolveServices()
+}
+
+func (file *File) resolveMessages() {
+	var depIdx int32
+	for i := range file.allMessages {
+		md := &file.allMessages[i]
+
+		// Resolve message field dependencies.
+		for j := range md.L2.Fields.List {
+			fd := &md.L2.Fields.List[j]
+
+			// Weak fields are resolved upon actual use.
+			if fd.L1.IsWeak {
+				continue
+			}
+
+			// Resolve message field dependency.
+			switch fd.L1.Kind {
+			case pref.EnumKind:
+				fd.L1.Enum = file.resolveEnumDependency(fd.L1.Enum, listFieldDeps, depIdx)
+				depIdx++
+			case pref.MessageKind, pref.GroupKind:
+				fd.L1.Message = file.resolveMessageDependency(fd.L1.Message, listFieldDeps, depIdx)
+				depIdx++
+			}
+
+			// Default is resolved here since it depends on Enum being resolved.
+			if v := fd.L1.Default.val; v.IsValid() {
+				fd.L1.Default = unmarshalDefault(v.Bytes(), fd.L1.Kind, file, fd.L1.Enum)
+			}
+		}
+	}
+}
+
+func (file *File) resolveExtensions() {
+	var depIdx int32
+	for i := range file.allExtensions {
+		xd := &file.allExtensions[i]
+
+		// Resolve extension field dependency.
+		switch xd.L1.Kind {
+		case pref.EnumKind:
+			xd.L2.Enum = file.resolveEnumDependency(xd.L2.Enum, listExtDeps, depIdx)
+			depIdx++
+		case pref.MessageKind, pref.GroupKind:
+			xd.L2.Message = file.resolveMessageDependency(xd.L2.Message, listExtDeps, depIdx)
+			depIdx++
+		}
+
+		// Default is resolved here since it depends on Enum being resolved.
+		if v := xd.L2.Default.val; v.IsValid() {
+			xd.L2.Default = unmarshalDefault(v.Bytes(), xd.L1.Kind, file, xd.L2.Enum)
+		}
+	}
+}
+
+func (file *File) resolveServices() {
+	var depIdx int32
+	for i := range file.allServices {
+		sd := &file.allServices[i]
+
+		// Resolve method dependencies.
+		for j := range sd.L2.Methods.List {
+			md := &sd.L2.Methods.List[j]
+			md.L1.Input = file.resolveMessageDependency(md.L1.Input, listMethInDeps, depIdx)
+			md.L1.Output = file.resolveMessageDependency(md.L1.Output, listMethOutDeps, depIdx)
+			depIdx++
+		}
+	}
+}
+
+func (file *File) resolveEnumDependency(ed pref.EnumDescriptor, i, j int32) pref.EnumDescriptor {
+	r := file.builder.FileRegistry
+	if r, ok := r.(resolverByIndex); ok {
+		if ed2 := r.FindEnumByIndex(i, j, file.allEnums, file.allMessages); ed2 != nil {
+			return ed2
+		}
+	}
+	for i := range file.allEnums {
+		if ed2 := &file.allEnums[i]; ed2.L0.FullName == ed.FullName() {
+			return ed2
+		}
+	}
+	if d, _ := r.FindDescriptorByName(ed.FullName()); d != nil {
+		return d.(pref.EnumDescriptor)
+	}
+	return ed
+}
+
+func (file *File) resolveMessageDependency(md pref.MessageDescriptor, i, j int32) pref.MessageDescriptor {
+	r := file.builder.FileRegistry
+	if r, ok := r.(resolverByIndex); ok {
+		if md2 := r.FindMessageByIndex(i, j, file.allEnums, file.allMessages); md2 != nil {
+			return md2
+		}
+	}
+	for i := range file.allMessages {
+		if md2 := &file.allMessages[i]; md2.L0.FullName == md.FullName() {
+			return md2
+		}
+	}
+	if d, _ := r.FindDescriptorByName(md.FullName()); d != nil {
+		return d.(pref.MessageDescriptor)
+	}
+	return md
+}
+
+func (fd *File) unmarshalFull(b []byte) {
+	sb := getBuilder()
+	defer putBuilder(sb)
+
+	var enumIdx, messageIdx, extensionIdx, serviceIdx int
+	var rawOptions []byte
+	fd.L2 = new(FileL2)
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FileDescriptorProto_PublicDependency_field_number:
+				fd.L2.Imports[v].IsPublic = true
+			case genid.FileDescriptorProto_WeakDependency_field_number:
+				fd.L2.Imports[v].IsWeak = true
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.FileDescriptorProto_Dependency_field_number:
+				path := sb.MakeString(v)
+				imp, _ := fd.builder.FileRegistry.FindFileByPath(path)
+				if imp == nil {
+					imp = PlaceholderFile(path)
+				}
+				fd.L2.Imports = append(fd.L2.Imports, pref.FileImport{FileDescriptor: imp})
+			case genid.FileDescriptorProto_EnumType_field_number:
+				fd.L1.Enums.List[enumIdx].unmarshalFull(v, sb)
+				enumIdx++
+			case genid.FileDescriptorProto_MessageType_field_number:
+				fd.L1.Messages.List[messageIdx].unmarshalFull(v, sb)
+				messageIdx++
+			case genid.FileDescriptorProto_Extension_field_number:
+				fd.L1.Extensions.List[extensionIdx].unmarshalFull(v, sb)
+				extensionIdx++
+			case genid.FileDescriptorProto_Service_field_number:
+				fd.L1.Services.List[serviceIdx].unmarshalFull(v, sb)
+				serviceIdx++
+			case genid.FileDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	fd.L2.Options = fd.builder.optionsUnmarshaler(&descopts.File, rawOptions)
+}
+
+func (ed *Enum) unmarshalFull(b []byte, sb *strs.Builder) {
+	var rawValues [][]byte
+	var rawOptions []byte
+	if !ed.L1.eagerValues {
+		ed.L2 = new(EnumL2)
+	}
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumDescriptorProto_Value_field_number:
+				rawValues = append(rawValues, v)
+			case genid.EnumDescriptorProto_ReservedName_field_number:
+				ed.L2.ReservedNames.List = append(ed.L2.ReservedNames.List, pref.Name(sb.MakeString(v)))
+			case genid.EnumDescriptorProto_ReservedRange_field_number:
+				ed.L2.ReservedRanges.List = append(ed.L2.ReservedRanges.List, unmarshalEnumReservedRange(v))
+			case genid.EnumDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	if !ed.L1.eagerValues && len(rawValues) > 0 {
+		ed.L2.Values.List = make([]EnumValue, len(rawValues))
+		for i, b := range rawValues {
+			ed.L2.Values.List[i].unmarshalFull(b, sb, ed.L0.ParentFile, ed, i)
+		}
+	}
+	ed.L2.Options = ed.L0.ParentFile.builder.optionsUnmarshaler(&descopts.Enum, rawOptions)
+}
+
+func unmarshalEnumReservedRange(b []byte) (r [2]pref.EnumNumber) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumDescriptorProto_EnumReservedRange_Start_field_number:
+				r[0] = pref.EnumNumber(v)
+			case genid.EnumDescriptorProto_EnumReservedRange_End_field_number:
+				r[1] = pref.EnumNumber(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	return r
+}
+
+func (vd *EnumValue) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	vd.L0.ParentFile = pf
+	vd.L0.Parent = pd
+	vd.L0.Index = i
+
+	var rawOptions []byte
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumValueDescriptorProto_Number_field_number:
+				vd.L1.Number = pref.EnumNumber(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.EnumValueDescriptorProto_Name_field_number:
+				// NOTE: Enum values are in the same scope as the enum parent.
+				vd.L0.FullName = appendFullName(sb, pd.Parent().FullName(), v)
+			case genid.EnumValueDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	vd.L1.Options = pf.builder.optionsUnmarshaler(&descopts.EnumValue, rawOptions)
+}
+
+func (md *Message) unmarshalFull(b []byte, sb *strs.Builder) {
+	var rawFields, rawOneofs [][]byte
+	var enumIdx, messageIdx, extensionIdx int
+	var rawOptions []byte
+	md.L2 = new(MessageL2)
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.DescriptorProto_Field_field_number:
+				rawFields = append(rawFields, v)
+			case genid.DescriptorProto_OneofDecl_field_number:
+				rawOneofs = append(rawOneofs, v)
+			case genid.DescriptorProto_ReservedName_field_number:
+				md.L2.ReservedNames.List = append(md.L2.ReservedNames.List, pref.Name(sb.MakeString(v)))
+			case genid.DescriptorProto_ReservedRange_field_number:
+				md.L2.ReservedRanges.List = append(md.L2.ReservedRanges.List, unmarshalMessageReservedRange(v))
+			case genid.DescriptorProto_ExtensionRange_field_number:
+				r, rawOptions := unmarshalMessageExtensionRange(v)
+				opts := md.L0.ParentFile.builder.optionsUnmarshaler(&descopts.ExtensionRange, rawOptions)
+				md.L2.ExtensionRanges.List = append(md.L2.ExtensionRanges.List, r)
+				md.L2.ExtensionRangeOptions = append(md.L2.ExtensionRangeOptions, opts)
+			case genid.DescriptorProto_EnumType_field_number:
+				md.L1.Enums.List[enumIdx].unmarshalFull(v, sb)
+				enumIdx++
+			case genid.DescriptorProto_NestedType_field_number:
+				md.L1.Messages.List[messageIdx].unmarshalFull(v, sb)
+				messageIdx++
+			case genid.DescriptorProto_Extension_field_number:
+				md.L1.Extensions.List[extensionIdx].unmarshalFull(v, sb)
+				extensionIdx++
+			case genid.DescriptorProto_Options_field_number:
+				md.unmarshalOptions(v)
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	if len(rawFields) > 0 || len(rawOneofs) > 0 {
+		md.L2.Fields.List = make([]Field, len(rawFields))
+		md.L2.Oneofs.List = make([]Oneof, len(rawOneofs))
+		for i, b := range rawFields {
+			fd := &md.L2.Fields.List[i]
+			fd.unmarshalFull(b, sb, md.L0.ParentFile, md, i)
+			if fd.L1.Cardinality == pref.Required {
+				md.L2.RequiredNumbers.List = append(md.L2.RequiredNumbers.List, fd.L1.Number)
+			}
+		}
+		for i, b := range rawOneofs {
+			od := &md.L2.Oneofs.List[i]
+			od.unmarshalFull(b, sb, md.L0.ParentFile, md, i)
+		}
+	}
+	md.L2.Options = md.L0.ParentFile.builder.optionsUnmarshaler(&descopts.Message, rawOptions)
+}
+
+func (md *Message) unmarshalOptions(b []byte) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.MessageOptions_MapEntry_field_number:
+				md.L1.IsMapEntry = protowire.DecodeBool(v)
+			case genid.MessageOptions_MessageSetWireFormat_field_number:
+				md.L1.IsMessageSet = protowire.DecodeBool(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func unmarshalMessageReservedRange(b []byte) (r [2]pref.FieldNumber) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.DescriptorProto_ReservedRange_Start_field_number:
+				r[0] = pref.FieldNumber(v)
+			case genid.DescriptorProto_ReservedRange_End_field_number:
+				r[1] = pref.FieldNumber(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	return r
+}
+
+func unmarshalMessageExtensionRange(b []byte) (r [2]pref.FieldNumber, rawOptions []byte) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.DescriptorProto_ExtensionRange_Start_field_number:
+				r[0] = pref.FieldNumber(v)
+			case genid.DescriptorProto_ExtensionRange_End_field_number:
+				r[1] = pref.FieldNumber(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.DescriptorProto_ExtensionRange_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	return r, rawOptions
+}
+
+func (fd *Field) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	fd.L0.ParentFile = pf
+	fd.L0.Parent = pd
+	fd.L0.Index = i
+
+	var rawTypeName []byte
+	var rawOptions []byte
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_Number_field_number:
+				fd.L1.Number = pref.FieldNumber(v)
+			case genid.FieldDescriptorProto_Label_field_number:
+				fd.L1.Cardinality = pref.Cardinality(v)
+			case genid.FieldDescriptorProto_Type_field_number:
+				fd.L1.Kind = pref.Kind(v)
+			case genid.FieldDescriptorProto_OneofIndex_field_number:
+				// In Message.unmarshalFull, we allocate slices for both
+				// the field and oneof descriptors before unmarshaling either
+				// of them. This ensures pointers to slice elements are stable.
+				od := &pd.(*Message).L2.Oneofs.List[v]
+				od.L1.Fields.List = append(od.L1.Fields.List, fd)
+				if fd.L1.ContainingOneof != nil {
+					panic("oneof type already set")
+				}
+				fd.L1.ContainingOneof = od
+			case genid.FieldDescriptorProto_Proto3Optional_field_number:
+				fd.L1.IsProto3Optional = protowire.DecodeBool(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_Name_field_number:
+				fd.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.FieldDescriptorProto_JsonName_field_number:
+				fd.L1.JSONName.Init(sb.MakeString(v))
+			case genid.FieldDescriptorProto_DefaultValue_field_number:
+				fd.L1.Default.val = pref.ValueOfBytes(v) // temporarily store as bytes; later resolved in resolveMessages
+			case genid.FieldDescriptorProto_TypeName_field_number:
+				rawTypeName = v
+			case genid.FieldDescriptorProto_Options_field_number:
+				fd.unmarshalOptions(v)
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	if rawTypeName != nil {
+		name := makeFullName(sb, rawTypeName)
+		switch fd.L1.Kind {
+		case pref.EnumKind:
+			fd.L1.Enum = PlaceholderEnum(name)
+		case pref.MessageKind, pref.GroupKind:
+			fd.L1.Message = PlaceholderMessage(name)
+		}
+	}
+	fd.L1.Options = pf.builder.optionsUnmarshaler(&descopts.Field, rawOptions)
+}
+
+func (fd *Field) unmarshalOptions(b []byte) {
+	const FieldOptions_EnforceUTF8 = 13
+
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldOptions_Packed_field_number:
+				fd.L1.HasPacked = true
+				fd.L1.IsPacked = protowire.DecodeBool(v)
+			case genid.FieldOptions_Weak_field_number:
+				fd.L1.IsWeak = protowire.DecodeBool(v)
+			case FieldOptions_EnforceUTF8:
+				fd.L1.HasEnforceUTF8 = true
+				fd.L1.EnforceUTF8 = protowire.DecodeBool(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func (od *Oneof) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	od.L0.ParentFile = pf
+	od.L0.Parent = pd
+	od.L0.Index = i
+
+	var rawOptions []byte
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.OneofDescriptorProto_Name_field_number:
+				od.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.OneofDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	od.L1.Options = pf.builder.optionsUnmarshaler(&descopts.Oneof, rawOptions)
+}
+
+func (xd *Extension) unmarshalFull(b []byte, sb *strs.Builder) {
+	var rawTypeName []byte
+	var rawOptions []byte
+	xd.L2 = new(ExtensionL2)
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_Proto3Optional_field_number:
+				xd.L2.IsProto3Optional = protowire.DecodeBool(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldDescriptorProto_JsonName_field_number:
+				xd.L2.JSONName.Init(sb.MakeString(v))
+			case genid.FieldDescriptorProto_DefaultValue_field_number:
+				xd.L2.Default.val = pref.ValueOfBytes(v) // temporarily store as bytes; later resolved in resolveExtensions
+			case genid.FieldDescriptorProto_TypeName_field_number:
+				rawTypeName = v
+			case genid.FieldDescriptorProto_Options_field_number:
+				xd.unmarshalOptions(v)
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	if rawTypeName != nil {
+		name := makeFullName(sb, rawTypeName)
+		switch xd.L1.Kind {
+		case pref.EnumKind:
+			xd.L2.Enum = PlaceholderEnum(name)
+		case pref.MessageKind, pref.GroupKind:
+			xd.L2.Message = PlaceholderMessage(name)
+		}
+	}
+	xd.L2.Options = xd.L0.ParentFile.builder.optionsUnmarshaler(&descopts.Field, rawOptions)
+}
+
+func (xd *Extension) unmarshalOptions(b []byte) {
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.FieldOptions_Packed_field_number:
+				xd.L2.IsPacked = protowire.DecodeBool(v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+}
+
+func (sd *Service) unmarshalFull(b []byte, sb *strs.Builder) {
+	var rawMethods [][]byte
+	var rawOptions []byte
+	sd.L2 = new(ServiceL2)
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.ServiceDescriptorProto_Method_field_number:
+				rawMethods = append(rawMethods, v)
+			case genid.ServiceDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	if len(rawMethods) > 0 {
+		sd.L2.Methods.List = make([]Method, len(rawMethods))
+		for i, b := range rawMethods {
+			sd.L2.Methods.List[i].unmarshalFull(b, sb, sd.L0.ParentFile, sd, i)
+		}
+	}
+	sd.L2.Options = sd.L0.ParentFile.builder.optionsUnmarshaler(&descopts.Service, rawOptions)
+}
+
+func (md *Method) unmarshalFull(b []byte, sb *strs.Builder, pf *File, pd pref.Descriptor, i int) {
+	md.L0.ParentFile = pf
+	md.L0.Parent = pd
+	md.L0.Index = i
+
+	var rawOptions []byte
+	for len(b) > 0 {
+		num, typ, n := protowire.ConsumeTag(b)
+		b = b[n:]
+		switch typ {
+		case protowire.VarintType:
+			v, m := protowire.ConsumeVarint(b)
+			b = b[m:]
+			switch num {
+			case genid.MethodDescriptorProto_ClientStreaming_field_number:
+				md.L1.IsStreamingClient = protowire.DecodeBool(v)
+			case genid.MethodDescriptorProto_ServerStreaming_field_number:
+				md.L1.IsStreamingServer = protowire.DecodeBool(v)
+			}
+		case protowire.BytesType:
+			v, m := protowire.ConsumeBytes(b)
+			b = b[m:]
+			switch num {
+			case genid.MethodDescriptorProto_Name_field_number:
+				md.L0.FullName = appendFullName(sb, pd.FullName(), v)
+			case genid.MethodDescriptorProto_InputType_field_number:
+				md.L1.Input = PlaceholderMessage(makeFullName(sb, v))
+			case genid.MethodDescriptorProto_OutputType_field_number:
+				md.L1.Output = PlaceholderMessage(makeFullName(sb, v))
+			case genid.MethodDescriptorProto_Options_field_number:
+				rawOptions = appendOptions(rawOptions, v)
+			}
+		default:
+			m := protowire.ConsumeFieldValue(num, typ, b)
+			b = b[m:]
+		}
+	}
+	md.L1.Options = pf.builder.optionsUnmarshaler(&descopts.Method, rawOptions)
+}
+
+// appendOptions appends src to dst, where the returned slice is never nil.
+// This is necessary to distinguish between empty and unpopulated options.
+func appendOptions(dst, src []byte) []byte {
+	if dst == nil {
+		dst = []byte{}
+	}
+	return append(dst, src...)
+}
+
+// optionsUnmarshaler constructs a lazy unmarshal function for an options message.
+//
+// The type of message to unmarshal to is passed as a pointer since the
+// vars in descopts may not yet be populated at the time this function is called.
+func (db *Builder) optionsUnmarshaler(p *pref.ProtoMessage, b []byte) func() pref.ProtoMessage {
+	if b == nil {
+		return nil
+	}
+	var opts pref.ProtoMessage
+	var once sync.Once
+	return func() pref.ProtoMessage {
+		once.Do(func() {
+			if *p == nil {
+				panic("Descriptor.Options called without importing the descriptor package")
+			}
+			opts = reflect.New(reflect.TypeOf(*p).Elem()).Interface().(pref.ProtoMessage)
+			if err := (proto.UnmarshalOptions{
+				AllowPartial: true,
+				Resolver:     db.TypeResolver,
+			}).Unmarshal(b, opts); err != nil {
+				panic(err)
+			}
+		})
+		return opts
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go b/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go
new file mode 100644
index 0000000..c876cd3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go
@@ -0,0 +1,282 @@
+// 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 filedesc
+
+import (
+	"fmt"
+	"sort"
+	"sync"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/descfmt"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type FileImports []pref.FileImport
+
+func (p *FileImports) Len() int                            { return len(*p) }
+func (p *FileImports) Get(i int) pref.FileImport           { return (*p)[i] }
+func (p *FileImports) Format(s fmt.State, r rune)          { descfmt.FormatList(s, r, p) }
+func (p *FileImports) ProtoInternal(pragma.DoNotImplement) {}
+
+type Names struct {
+	List []pref.Name
+	once sync.Once
+	has  map[pref.Name]int // protected by once
+}
+
+func (p *Names) Len() int                            { return len(p.List) }
+func (p *Names) Get(i int) pref.Name                 { return p.List[i] }
+func (p *Names) Has(s pref.Name) bool                { return p.lazyInit().has[s] > 0 }
+func (p *Names) Format(s fmt.State, r rune)          { descfmt.FormatList(s, r, p) }
+func (p *Names) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Names) lazyInit() *Names {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.has = make(map[pref.Name]int, len(p.List))
+			for _, s := range p.List {
+				p.has[s] = p.has[s] + 1
+			}
+		}
+	})
+	return p
+}
+
+// CheckValid reports any errors with the set of names with an error message
+// that completes the sentence: "ranges is invalid because it has ..."
+func (p *Names) CheckValid() error {
+	for s, n := range p.lazyInit().has {
+		switch {
+		case n > 1:
+			return errors.New("duplicate name: %q", s)
+		case false && !s.IsValid():
+			// NOTE: The C++ implementation does not validate the identifier.
+			// See https://github.com/protocolbuffers/protobuf/issues/6335.
+			return errors.New("invalid name: %q", s)
+		}
+	}
+	return nil
+}
+
+type EnumRanges struct {
+	List   [][2]pref.EnumNumber // start inclusive; end inclusive
+	once   sync.Once
+	sorted [][2]pref.EnumNumber // protected by once
+}
+
+func (p *EnumRanges) Len() int                     { return len(p.List) }
+func (p *EnumRanges) Get(i int) [2]pref.EnumNumber { return p.List[i] }
+func (p *EnumRanges) Has(n pref.EnumNumber) bool {
+	for ls := p.lazyInit().sorted; len(ls) > 0; {
+		i := len(ls) / 2
+		switch r := enumRange(ls[i]); {
+		case n < r.Start():
+			ls = ls[:i] // search lower
+		case n > r.End():
+			ls = ls[i+1:] // search upper
+		default:
+			return true
+		}
+	}
+	return false
+}
+func (p *EnumRanges) Format(s fmt.State, r rune)          { descfmt.FormatList(s, r, p) }
+func (p *EnumRanges) ProtoInternal(pragma.DoNotImplement) {}
+func (p *EnumRanges) lazyInit() *EnumRanges {
+	p.once.Do(func() {
+		p.sorted = append(p.sorted, p.List...)
+		sort.Slice(p.sorted, func(i, j int) bool {
+			return p.sorted[i][0] < p.sorted[j][0]
+		})
+	})
+	return p
+}
+
+// CheckValid reports any errors with the set of names with an error message
+// that completes the sentence: "ranges is invalid because it has ..."
+func (p *EnumRanges) CheckValid() error {
+	var rp enumRange
+	for i, r := range p.lazyInit().sorted {
+		r := enumRange(r)
+		switch {
+		case !(r.Start() <= r.End()):
+			return errors.New("invalid range: %v", r)
+		case !(rp.End() < r.Start()) && i > 0:
+			return errors.New("overlapping ranges: %v with %v", rp, r)
+		}
+		rp = r
+	}
+	return nil
+}
+
+type enumRange [2]protoreflect.EnumNumber
+
+func (r enumRange) Start() protoreflect.EnumNumber { return r[0] } // inclusive
+func (r enumRange) End() protoreflect.EnumNumber   { return r[1] } // inclusive
+func (r enumRange) String() string {
+	if r.Start() == r.End() {
+		return fmt.Sprintf("%d", r.Start())
+	}
+	return fmt.Sprintf("%d to %d", r.Start(), r.End())
+}
+
+type FieldRanges struct {
+	List   [][2]pref.FieldNumber // start inclusive; end exclusive
+	once   sync.Once
+	sorted [][2]pref.FieldNumber // protected by once
+}
+
+func (p *FieldRanges) Len() int                      { return len(p.List) }
+func (p *FieldRanges) Get(i int) [2]pref.FieldNumber { return p.List[i] }
+func (p *FieldRanges) Has(n pref.FieldNumber) bool {
+	for ls := p.lazyInit().sorted; len(ls) > 0; {
+		i := len(ls) / 2
+		switch r := fieldRange(ls[i]); {
+		case n < r.Start():
+			ls = ls[:i] // search lower
+		case n > r.End():
+			ls = ls[i+1:] // search upper
+		default:
+			return true
+		}
+	}
+	return false
+}
+func (p *FieldRanges) Format(s fmt.State, r rune)          { descfmt.FormatList(s, r, p) }
+func (p *FieldRanges) ProtoInternal(pragma.DoNotImplement) {}
+func (p *FieldRanges) lazyInit() *FieldRanges {
+	p.once.Do(func() {
+		p.sorted = append(p.sorted, p.List...)
+		sort.Slice(p.sorted, func(i, j int) bool {
+			return p.sorted[i][0] < p.sorted[j][0]
+		})
+	})
+	return p
+}
+
+// CheckValid reports any errors with the set of ranges with an error message
+// that completes the sentence: "ranges is invalid because it has ..."
+func (p *FieldRanges) CheckValid(isMessageSet bool) error {
+	var rp fieldRange
+	for i, r := range p.lazyInit().sorted {
+		r := fieldRange(r)
+		switch {
+		case !isValidFieldNumber(r.Start(), isMessageSet):
+			return errors.New("invalid field number: %d", r.Start())
+		case !isValidFieldNumber(r.End(), isMessageSet):
+			return errors.New("invalid field number: %d", r.End())
+		case !(r.Start() <= r.End()):
+			return errors.New("invalid range: %v", r)
+		case !(rp.End() < r.Start()) && i > 0:
+			return errors.New("overlapping ranges: %v with %v", rp, r)
+		}
+		rp = r
+	}
+	return nil
+}
+
+// isValidFieldNumber reports whether the field number is valid.
+// Unlike the FieldNumber.IsValid method, it allows ranges that cover the
+// reserved number range.
+func isValidFieldNumber(n protoreflect.FieldNumber, isMessageSet bool) bool {
+	return protowire.MinValidNumber <= n && (n <= protowire.MaxValidNumber || isMessageSet)
+}
+
+// CheckOverlap reports an error if p and q overlap.
+func (p *FieldRanges) CheckOverlap(q *FieldRanges) error {
+	rps := p.lazyInit().sorted
+	rqs := q.lazyInit().sorted
+	for pi, qi := 0, 0; pi < len(rps) && qi < len(rqs); {
+		rp := fieldRange(rps[pi])
+		rq := fieldRange(rqs[qi])
+		if !(rp.End() < rq.Start() || rq.End() < rp.Start()) {
+			return errors.New("overlapping ranges: %v with %v", rp, rq)
+		}
+		if rp.Start() < rq.Start() {
+			pi++
+		} else {
+			qi++
+		}
+	}
+	return nil
+}
+
+type fieldRange [2]protoreflect.FieldNumber
+
+func (r fieldRange) Start() protoreflect.FieldNumber { return r[0] }     // inclusive
+func (r fieldRange) End() protoreflect.FieldNumber   { return r[1] - 1 } // inclusive
+func (r fieldRange) String() string {
+	if r.Start() == r.End() {
+		return fmt.Sprintf("%d", r.Start())
+	}
+	return fmt.Sprintf("%d to %d", r.Start(), r.End())
+}
+
+type FieldNumbers struct {
+	List []pref.FieldNumber
+	once sync.Once
+	has  map[pref.FieldNumber]struct{} // protected by once
+}
+
+func (p *FieldNumbers) Len() int                   { return len(p.List) }
+func (p *FieldNumbers) Get(i int) pref.FieldNumber { return p.List[i] }
+func (p *FieldNumbers) Has(n pref.FieldNumber) bool {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.has = make(map[pref.FieldNumber]struct{}, len(p.List))
+			for _, n := range p.List {
+				p.has[n] = struct{}{}
+			}
+		}
+	})
+	_, ok := p.has[n]
+	return ok
+}
+func (p *FieldNumbers) Format(s fmt.State, r rune)          { descfmt.FormatList(s, r, p) }
+func (p *FieldNumbers) ProtoInternal(pragma.DoNotImplement) {}
+
+type OneofFields struct {
+	List   []pref.FieldDescriptor
+	once   sync.Once
+	byName map[pref.Name]pref.FieldDescriptor        // protected by once
+	byJSON map[string]pref.FieldDescriptor           // protected by once
+	byNum  map[pref.FieldNumber]pref.FieldDescriptor // protected by once
+}
+
+func (p *OneofFields) Len() int                                         { return len(p.List) }
+func (p *OneofFields) Get(i int) pref.FieldDescriptor                   { return p.List[i] }
+func (p *OneofFields) ByName(s pref.Name) pref.FieldDescriptor          { return p.lazyInit().byName[s] }
+func (p *OneofFields) ByJSONName(s string) pref.FieldDescriptor         { return p.lazyInit().byJSON[s] }
+func (p *OneofFields) ByNumber(n pref.FieldNumber) pref.FieldDescriptor { return p.lazyInit().byNum[n] }
+func (p *OneofFields) Format(s fmt.State, r rune)                       { descfmt.FormatList(s, r, p) }
+func (p *OneofFields) ProtoInternal(pragma.DoNotImplement)              {}
+
+func (p *OneofFields) lazyInit() *OneofFields {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[pref.Name]pref.FieldDescriptor, len(p.List))
+			p.byJSON = make(map[string]pref.FieldDescriptor, len(p.List))
+			p.byNum = make(map[pref.FieldNumber]pref.FieldDescriptor, len(p.List))
+			for _, f := range p.List {
+				// Field names and numbers are guaranteed to be unique.
+				p.byName[f.Name()] = f
+				p.byJSON[f.JSONName()] = f
+				p.byNum[f.Number()] = f
+			}
+		}
+	})
+	return p
+}
+
+type SourceLocations struct {
+	List []pref.SourceLocation
+}
+
+func (p *SourceLocations) Len() int                            { return len(p.List) }
+func (p *SourceLocations) Get(i int) pref.SourceLocation       { return p.List[i] }
+func (p *SourceLocations) ProtoInternal(pragma.DoNotImplement) {}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go b/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go
new file mode 100644
index 0000000..6a8825e
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go
@@ -0,0 +1,345 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package filedesc
+
+import (
+	"fmt"
+	"sync"
+
+	"google.golang.org/protobuf/internal/descfmt"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type Enums struct {
+	List   []Enum
+	once   sync.Once
+	byName map[protoreflect.Name]*Enum // protected by once
+}
+
+func (p *Enums) Len() int {
+	return len(p.List)
+}
+func (p *Enums) Get(i int) protoreflect.EnumDescriptor {
+	return &p.List[i]
+}
+func (p *Enums) ByName(s protoreflect.Name) protoreflect.EnumDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Enums) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Enums) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Enums) lazyInit() *Enums {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Enum, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type EnumValues struct {
+	List   []EnumValue
+	once   sync.Once
+	byName map[protoreflect.Name]*EnumValue       // protected by once
+	byNum  map[protoreflect.EnumNumber]*EnumValue // protected by once
+}
+
+func (p *EnumValues) Len() int {
+	return len(p.List)
+}
+func (p *EnumValues) Get(i int) protoreflect.EnumValueDescriptor {
+	return &p.List[i]
+}
+func (p *EnumValues) ByName(s protoreflect.Name) protoreflect.EnumValueDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *EnumValues) ByNumber(n protoreflect.EnumNumber) protoreflect.EnumValueDescriptor {
+	if d := p.lazyInit().byNum[n]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *EnumValues) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *EnumValues) ProtoInternal(pragma.DoNotImplement) {}
+func (p *EnumValues) lazyInit() *EnumValues {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*EnumValue, len(p.List))
+			p.byNum = make(map[protoreflect.EnumNumber]*EnumValue, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+				if _, ok := p.byNum[d.Number()]; !ok {
+					p.byNum[d.Number()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Messages struct {
+	List   []Message
+	once   sync.Once
+	byName map[protoreflect.Name]*Message // protected by once
+}
+
+func (p *Messages) Len() int {
+	return len(p.List)
+}
+func (p *Messages) Get(i int) protoreflect.MessageDescriptor {
+	return &p.List[i]
+}
+func (p *Messages) ByName(s protoreflect.Name) protoreflect.MessageDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Messages) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Messages) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Messages) lazyInit() *Messages {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Message, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Fields struct {
+	List   []Field
+	once   sync.Once
+	byName map[protoreflect.Name]*Field        // protected by once
+	byJSON map[string]*Field                   // protected by once
+	byNum  map[protoreflect.FieldNumber]*Field // protected by once
+}
+
+func (p *Fields) Len() int {
+	return len(p.List)
+}
+func (p *Fields) Get(i int) protoreflect.FieldDescriptor {
+	return &p.List[i]
+}
+func (p *Fields) ByName(s protoreflect.Name) protoreflect.FieldDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Fields) ByJSONName(s string) protoreflect.FieldDescriptor {
+	if d := p.lazyInit().byJSON[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Fields) ByNumber(n protoreflect.FieldNumber) protoreflect.FieldDescriptor {
+	if d := p.lazyInit().byNum[n]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Fields) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Fields) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Fields) lazyInit() *Fields {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Field, len(p.List))
+			p.byJSON = make(map[string]*Field, len(p.List))
+			p.byNum = make(map[protoreflect.FieldNumber]*Field, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+				if _, ok := p.byJSON[d.JSONName()]; !ok {
+					p.byJSON[d.JSONName()] = d
+				}
+				if _, ok := p.byNum[d.Number()]; !ok {
+					p.byNum[d.Number()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Oneofs struct {
+	List   []Oneof
+	once   sync.Once
+	byName map[protoreflect.Name]*Oneof // protected by once
+}
+
+func (p *Oneofs) Len() int {
+	return len(p.List)
+}
+func (p *Oneofs) Get(i int) protoreflect.OneofDescriptor {
+	return &p.List[i]
+}
+func (p *Oneofs) ByName(s protoreflect.Name) protoreflect.OneofDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Oneofs) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Oneofs) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Oneofs) lazyInit() *Oneofs {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Oneof, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Extensions struct {
+	List   []Extension
+	once   sync.Once
+	byName map[protoreflect.Name]*Extension // protected by once
+}
+
+func (p *Extensions) Len() int {
+	return len(p.List)
+}
+func (p *Extensions) Get(i int) protoreflect.ExtensionDescriptor {
+	return &p.List[i]
+}
+func (p *Extensions) ByName(s protoreflect.Name) protoreflect.ExtensionDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Extensions) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Extensions) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Extensions) lazyInit() *Extensions {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Extension, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Services struct {
+	List   []Service
+	once   sync.Once
+	byName map[protoreflect.Name]*Service // protected by once
+}
+
+func (p *Services) Len() int {
+	return len(p.List)
+}
+func (p *Services) Get(i int) protoreflect.ServiceDescriptor {
+	return &p.List[i]
+}
+func (p *Services) ByName(s protoreflect.Name) protoreflect.ServiceDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Services) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Services) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Services) lazyInit() *Services {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Service, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
+
+type Methods struct {
+	List   []Method
+	once   sync.Once
+	byName map[protoreflect.Name]*Method // protected by once
+}
+
+func (p *Methods) Len() int {
+	return len(p.List)
+}
+func (p *Methods) Get(i int) protoreflect.MethodDescriptor {
+	return &p.List[i]
+}
+func (p *Methods) ByName(s protoreflect.Name) protoreflect.MethodDescriptor {
+	if d := p.lazyInit().byName[s]; d != nil {
+		return d
+	}
+	return nil
+}
+func (p *Methods) Format(s fmt.State, r rune) {
+	descfmt.FormatList(s, r, p)
+}
+func (p *Methods) ProtoInternal(pragma.DoNotImplement) {}
+func (p *Methods) lazyInit() *Methods {
+	p.once.Do(func() {
+		if len(p.List) > 0 {
+			p.byName = make(map[protoreflect.Name]*Method, len(p.List))
+			for i := range p.List {
+				d := &p.List[i]
+				if _, ok := p.byName[d.Name()]; !ok {
+					p.byName[d.Name()] = d
+				}
+			}
+		}
+	})
+	return p
+}
diff --git a/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go b/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go
new file mode 100644
index 0000000..dbf2c60
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go
@@ -0,0 +1,107 @@
+// 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 filedesc
+
+import (
+	"google.golang.org/protobuf/internal/descopts"
+	"google.golang.org/protobuf/internal/pragma"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+var (
+	emptyNames           = new(Names)
+	emptyEnumRanges      = new(EnumRanges)
+	emptyFieldRanges     = new(FieldRanges)
+	emptyFieldNumbers    = new(FieldNumbers)
+	emptySourceLocations = new(SourceLocations)
+
+	emptyFiles      = new(FileImports)
+	emptyMessages   = new(Messages)
+	emptyFields     = new(Fields)
+	emptyOneofs     = new(Oneofs)
+	emptyEnums      = new(Enums)
+	emptyEnumValues = new(EnumValues)
+	emptyExtensions = new(Extensions)
+	emptyServices   = new(Services)
+)
+
+// PlaceholderFile is a placeholder, representing only the file path.
+type PlaceholderFile string
+
+func (f PlaceholderFile) ParentFile() pref.FileDescriptor       { return f }
+func (f PlaceholderFile) Parent() pref.Descriptor               { return nil }
+func (f PlaceholderFile) Index() int                            { return 0 }
+func (f PlaceholderFile) Syntax() pref.Syntax                   { return 0 }
+func (f PlaceholderFile) Name() pref.Name                       { return "" }
+func (f PlaceholderFile) FullName() pref.FullName               { return "" }
+func (f PlaceholderFile) IsPlaceholder() bool                   { return true }
+func (f PlaceholderFile) Options() pref.ProtoMessage            { return descopts.File }
+func (f PlaceholderFile) Path() string                          { return string(f) }
+func (f PlaceholderFile) Package() pref.FullName                { return "" }
+func (f PlaceholderFile) Imports() pref.FileImports             { return emptyFiles }
+func (f PlaceholderFile) Messages() pref.MessageDescriptors     { return emptyMessages }
+func (f PlaceholderFile) Enums() pref.EnumDescriptors           { return emptyEnums }
+func (f PlaceholderFile) Extensions() pref.ExtensionDescriptors { return emptyExtensions }
+func (f PlaceholderFile) Services() pref.ServiceDescriptors     { return emptyServices }
+func (f PlaceholderFile) SourceLocations() pref.SourceLocations { return emptySourceLocations }
+func (f PlaceholderFile) ProtoType(pref.FileDescriptor)         { return }
+func (f PlaceholderFile) ProtoInternal(pragma.DoNotImplement)   { return }
+
+// PlaceholderEnum is a placeholder, representing only the full name.
+type PlaceholderEnum pref.FullName
+
+func (e PlaceholderEnum) ParentFile() pref.FileDescriptor     { return nil }
+func (e PlaceholderEnum) Parent() pref.Descriptor             { return nil }
+func (e PlaceholderEnum) Index() int                          { return 0 }
+func (e PlaceholderEnum) Syntax() pref.Syntax                 { return 0 }
+func (e PlaceholderEnum) Name() pref.Name                     { return pref.FullName(e).Name() }
+func (e PlaceholderEnum) FullName() pref.FullName             { return pref.FullName(e) }
+func (e PlaceholderEnum) IsPlaceholder() bool                 { return true }
+func (e PlaceholderEnum) Options() pref.ProtoMessage          { return descopts.Enum }
+func (e PlaceholderEnum) Values() pref.EnumValueDescriptors   { return emptyEnumValues }
+func (e PlaceholderEnum) ReservedNames() pref.Names           { return emptyNames }
+func (e PlaceholderEnum) ReservedRanges() pref.EnumRanges     { return emptyEnumRanges }
+func (e PlaceholderEnum) ProtoType(pref.EnumDescriptor)       { return }
+func (e PlaceholderEnum) ProtoInternal(pragma.DoNotImplement) { return }
+
+// PlaceholderEnumValue is a placeholder, representing only the full name.
+type PlaceholderEnumValue pref.FullName
+
+func (e PlaceholderEnumValue) ParentFile() pref.FileDescriptor     { return nil }
+func (e PlaceholderEnumValue) Parent() pref.Descriptor             { return nil }
+func (e PlaceholderEnumValue) Index() int                          { return 0 }
+func (e PlaceholderEnumValue) Syntax() pref.Syntax                 { return 0 }
+func (e PlaceholderEnumValue) Name() pref.Name                     { return pref.FullName(e).Name() }
+func (e PlaceholderEnumValue) FullName() pref.FullName             { return pref.FullName(e) }
+func (e PlaceholderEnumValue) IsPlaceholder() bool                 { return true }
+func (e PlaceholderEnumValue) Options() pref.ProtoMessage          { return descopts.EnumValue }
+func (e PlaceholderEnumValue) Number() pref.EnumNumber             { return 0 }
+func (e PlaceholderEnumValue) ProtoType(pref.EnumValueDescriptor)  { return }
+func (e PlaceholderEnumValue) ProtoInternal(pragma.DoNotImplement) { return }
+
+// PlaceholderMessage is a placeholder, representing only the full name.
+type PlaceholderMessage pref.FullName
+
+func (m PlaceholderMessage) ParentFile() pref.FileDescriptor             { return nil }
+func (m PlaceholderMessage) Parent() pref.Descriptor                     { return nil }
+func (m PlaceholderMessage) Index() int                                  { return 0 }
+func (m PlaceholderMessage) Syntax() pref.Syntax                         { return 0 }
+func (m PlaceholderMessage) Name() pref.Name                             { return pref.FullName(m).Name() }
+func (m PlaceholderMessage) FullName() pref.FullName                     { return pref.FullName(m) }
+func (m PlaceholderMessage) IsPlaceholder() bool                         { return true }
+func (m PlaceholderMessage) Options() pref.ProtoMessage                  { return descopts.Message }
+func (m PlaceholderMessage) IsMapEntry() bool                            { return false }
+func (m PlaceholderMessage) Fields() pref.FieldDescriptors               { return emptyFields }
+func (m PlaceholderMessage) Oneofs() pref.OneofDescriptors               { return emptyOneofs }
+func (m PlaceholderMessage) ReservedNames() pref.Names                   { return emptyNames }
+func (m PlaceholderMessage) ReservedRanges() pref.FieldRanges            { return emptyFieldRanges }
+func (m PlaceholderMessage) RequiredNumbers() pref.FieldNumbers          { return emptyFieldNumbers }
+func (m PlaceholderMessage) ExtensionRanges() pref.FieldRanges           { return emptyFieldRanges }
+func (m PlaceholderMessage) ExtensionRangeOptions(int) pref.ProtoMessage { panic("index out of range") }
+func (m PlaceholderMessage) Messages() pref.MessageDescriptors           { return emptyMessages }
+func (m PlaceholderMessage) Enums() pref.EnumDescriptors                 { return emptyEnums }
+func (m PlaceholderMessage) Extensions() pref.ExtensionDescriptors       { return emptyExtensions }
+func (m PlaceholderMessage) ProtoType(pref.MessageDescriptor)            { return }
+func (m PlaceholderMessage) ProtoInternal(pragma.DoNotImplement)         { return }
diff --git a/vendor/google.golang.org/protobuf/internal/filetype/build.go b/vendor/google.golang.org/protobuf/internal/filetype/build.go
new file mode 100644
index 0000000..0a0dd35
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/filetype/build.go
@@ -0,0 +1,297 @@
+// 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 filetype provides functionality for wrapping descriptors
+// with Go type information.
+package filetype
+
+import (
+	"reflect"
+
+	"google.golang.org/protobuf/internal/descopts"
+	fdesc "google.golang.org/protobuf/internal/filedesc"
+	pimpl "google.golang.org/protobuf/internal/impl"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// Builder constructs type descriptors from a raw file descriptor
+// and associated Go types for each enum and message declaration.
+//
+//
+// Flattened Ordering
+//
+// The protobuf type system represents declarations as a tree. Certain nodes in
+// the tree require us to either associate it with a concrete Go type or to
+// resolve a dependency, which is information that must be provided separately
+// since it cannot be derived from the file descriptor alone.
+//
+// However, representing a tree as Go literals is difficult to simply do in a
+// space and time efficient way. Thus, we store them as a flattened list of
+// objects where the serialization order from the tree-based form is important.
+//
+// The "flattened ordering" is defined as a tree traversal of all enum, message,
+// extension, and service declarations using the following algorithm:
+//
+//	def VisitFileDecls(fd):
+//		for e in fd.Enums:      yield e
+//		for m in fd.Messages:   yield m
+//		for x in fd.Extensions: yield x
+//		for s in fd.Services:   yield s
+//		for m in fd.Messages:   yield from VisitMessageDecls(m)
+//
+//	def VisitMessageDecls(md):
+//		for e in md.Enums:      yield e
+//		for m in md.Messages:   yield m
+//		for x in md.Extensions: yield x
+//		for m in md.Messages:   yield from VisitMessageDecls(m)
+//
+// The traversal starts at the root file descriptor and yields each direct
+// declaration within each node before traversing into sub-declarations
+// that children themselves may have.
+type Builder struct {
+	// File is the underlying file descriptor builder.
+	File fdesc.Builder
+
+	// GoTypes is a unique set of the Go types for all declarations and
+	// dependencies. Each type is represented as a zero value of the Go type.
+	//
+	// Declarations are Go types generated for enums and messages directly
+	// declared (not publicly imported) in the proto source file.
+	// Messages for map entries are accounted for, but represented by nil.
+	// Enum declarations in "flattened ordering" come first, followed by
+	// message declarations in "flattened ordering".
+	//
+	// Dependencies are Go types for enums or messages referenced by
+	// message fields (excluding weak fields), for parent extended messages of
+	// extension fields, for enums or messages referenced by extension fields,
+	// and for input and output messages referenced by service methods.
+	// Dependencies must come after declarations, but the ordering of
+	// dependencies themselves is unspecified.
+	GoTypes []interface{}
+
+	// DependencyIndexes is an ordered list of indexes into GoTypes for the
+	// dependencies of messages, extensions, or services.
+	//
+	// There are 5 sub-lists in "flattened ordering" concatenated back-to-back:
+	//	0. Message field dependencies: list of the enum or message type
+	//	referred to by every message field.
+	//	1. Extension field targets: list of the extended parent message of
+	//	every extension.
+	//	2. Extension field dependencies: list of the enum or message type
+	//	referred to by every extension field.
+	//	3. Service method inputs: list of the input message type
+	//	referred to by every service method.
+	//	4. Service method outputs: list of the output message type
+	//	referred to by every service method.
+	//
+	// The offset into DependencyIndexes for the start of each sub-list
+	// is appended to the end in reverse order.
+	DependencyIndexes []int32
+
+	// EnumInfos is a list of enum infos in "flattened ordering".
+	EnumInfos []pimpl.EnumInfo
+
+	// MessageInfos is a list of message infos in "flattened ordering".
+	// If provided, the GoType and PBType for each element is populated.
+	//
+	// Requirement: len(MessageInfos) == len(Build.Messages)
+	MessageInfos []pimpl.MessageInfo
+
+	// ExtensionInfos is a list of extension infos in "flattened ordering".
+	// Each element is initialized and registered with the protoregistry package.
+	//
+	// Requirement: len(LegacyExtensions) == len(Build.Extensions)
+	ExtensionInfos []pimpl.ExtensionInfo
+
+	// TypeRegistry is the registry to register each type descriptor.
+	// If nil, it uses protoregistry.GlobalTypes.
+	TypeRegistry interface {
+		RegisterMessage(pref.MessageType) error
+		RegisterEnum(pref.EnumType) error
+		RegisterExtension(pref.ExtensionType) error
+	}
+}
+
+// Out is the output of the builder.
+type Out struct {
+	File pref.FileDescriptor
+}
+
+func (tb Builder) Build() (out Out) {
+	// Replace the resolver with one that resolves dependencies by index,
+	// which is faster and more reliable than relying on the global registry.
+	if tb.File.FileRegistry == nil {
+		tb.File.FileRegistry = preg.GlobalFiles
+	}
+	tb.File.FileRegistry = &resolverByIndex{
+		goTypes:      tb.GoTypes,
+		depIdxs:      tb.DependencyIndexes,
+		fileRegistry: tb.File.FileRegistry,
+	}
+
+	// Initialize registry if unpopulated.
+	if tb.TypeRegistry == nil {
+		tb.TypeRegistry = preg.GlobalTypes
+	}
+
+	fbOut := tb.File.Build()
+	out.File = fbOut.File
+
+	// Process enums.
+	enumGoTypes := tb.GoTypes[:len(fbOut.Enums)]
+	if len(tb.EnumInfos) != len(fbOut.Enums) {
+		panic("mismatching enum lengths")
+	}
+	if len(fbOut.Enums) > 0 {
+		for i := range fbOut.Enums {
+			tb.EnumInfos[i] = pimpl.EnumInfo{
+				GoReflectType: reflect.TypeOf(enumGoTypes[i]),
+				Desc:          &fbOut.Enums[i],
+			}
+			// Register enum types.
+			if err := tb.TypeRegistry.RegisterEnum(&tb.EnumInfos[i]); err != nil {
+				panic(err)
+			}
+		}
+	}
+
+	// Process messages.
+	messageGoTypes := tb.GoTypes[len(fbOut.Enums):][:len(fbOut.Messages)]
+	if len(tb.MessageInfos) != len(fbOut.Messages) {
+		panic("mismatching message lengths")
+	}
+	if len(fbOut.Messages) > 0 {
+		for i := range fbOut.Messages {
+			if messageGoTypes[i] == nil {
+				continue // skip map entry
+			}
+
+			tb.MessageInfos[i].GoReflectType = reflect.TypeOf(messageGoTypes[i])
+			tb.MessageInfos[i].Desc = &fbOut.Messages[i]
+
+			// Register message types.
+			if err := tb.TypeRegistry.RegisterMessage(&tb.MessageInfos[i]); err != nil {
+				panic(err)
+			}
+		}
+
+		// As a special-case for descriptor.proto,
+		// locally register concrete message type for the options.
+		if out.File.Path() == "google/protobuf/descriptor.proto" && out.File.Package() == "google.protobuf" {
+			for i := range fbOut.Messages {
+				switch fbOut.Messages[i].Name() {
+				case "FileOptions":
+					descopts.File = messageGoTypes[i].(pref.ProtoMessage)
+				case "EnumOptions":
+					descopts.Enum = messageGoTypes[i].(pref.ProtoMessage)
+				case "EnumValueOptions":
+					descopts.EnumValue = messageGoTypes[i].(pref.ProtoMessage)
+				case "MessageOptions":
+					descopts.Message = messageGoTypes[i].(pref.ProtoMessage)
+				case "FieldOptions":
+					descopts.Field = messageGoTypes[i].(pref.ProtoMessage)
+				case "OneofOptions":
+					descopts.Oneof = messageGoTypes[i].(pref.ProtoMessage)
+				case "ExtensionRangeOptions":
+					descopts.ExtensionRange = messageGoTypes[i].(pref.ProtoMessage)
+				case "ServiceOptions":
+					descopts.Service = messageGoTypes[i].(pref.ProtoMessage)
+				case "MethodOptions":
+					descopts.Method = messageGoTypes[i].(pref.ProtoMessage)
+				}
+			}
+		}
+	}
+
+	// Process extensions.
+	if len(tb.ExtensionInfos) != len(fbOut.Extensions) {
+		panic("mismatching extension lengths")
+	}
+	var depIdx int32
+	for i := range fbOut.Extensions {
+		// For enum and message kinds, determine the referent Go type so
+		// that we can construct their constructors.
+		const listExtDeps = 2
+		var goType reflect.Type
+		switch fbOut.Extensions[i].L1.Kind {
+		case pref.EnumKind:
+			j := depIdxs.Get(tb.DependencyIndexes, listExtDeps, depIdx)
+			goType = reflect.TypeOf(tb.GoTypes[j])
+			depIdx++
+		case pref.MessageKind, pref.GroupKind:
+			j := depIdxs.Get(tb.DependencyIndexes, listExtDeps, depIdx)
+			goType = reflect.TypeOf(tb.GoTypes[j])
+			depIdx++
+		default:
+			goType = goTypeForPBKind[fbOut.Extensions[i].L1.Kind]
+		}
+		if fbOut.Extensions[i].IsList() {
+			goType = reflect.SliceOf(goType)
+		}
+
+		pimpl.InitExtensionInfo(&tb.ExtensionInfos[i], &fbOut.Extensions[i], goType)
+
+		// Register extension types.
+		if err := tb.TypeRegistry.RegisterExtension(&tb.ExtensionInfos[i]); err != nil {
+			panic(err)
+		}
+	}
+
+	return out
+}
+
+var goTypeForPBKind = map[pref.Kind]reflect.Type{
+	pref.BoolKind:     reflect.TypeOf(bool(false)),
+	pref.Int32Kind:    reflect.TypeOf(int32(0)),
+	pref.Sint32Kind:   reflect.TypeOf(int32(0)),
+	pref.Sfixed32Kind: reflect.TypeOf(int32(0)),
+	pref.Int64Kind:    reflect.TypeOf(int64(0)),
+	pref.Sint64Kind:   reflect.TypeOf(int64(0)),
+	pref.Sfixed64Kind: reflect.TypeOf(int64(0)),
+	pref.Uint32Kind:   reflect.TypeOf(uint32(0)),
+	pref.Fixed32Kind:  reflect.TypeOf(uint32(0)),
+	pref.Uint64Kind:   reflect.TypeOf(uint64(0)),
+	pref.Fixed64Kind:  reflect.TypeOf(uint64(0)),
+	pref.FloatKind:    reflect.TypeOf(float32(0)),
+	pref.DoubleKind:   reflect.TypeOf(float64(0)),
+	pref.StringKind:   reflect.TypeOf(string("")),
+	pref.BytesKind:    reflect.TypeOf([]byte(nil)),
+}
+
+type depIdxs []int32
+
+// Get retrieves the jth element of the ith sub-list.
+func (x depIdxs) Get(i, j int32) int32 {
+	return x[x[int32(len(x))-i-1]+j]
+}
+
+type (
+	resolverByIndex struct {
+		goTypes []interface{}
+		depIdxs depIdxs
+		fileRegistry
+	}
+	fileRegistry interface {
+		FindFileByPath(string) (pref.FileDescriptor, error)
+		FindDescriptorByName(pref.FullName) (pref.Descriptor, error)
+		RegisterFile(pref.FileDescriptor) error
+	}
+)
+
+func (r *resolverByIndex) FindEnumByIndex(i, j int32, es []fdesc.Enum, ms []fdesc.Message) pref.EnumDescriptor {
+	if depIdx := int(r.depIdxs.Get(i, j)); int(depIdx) < len(es)+len(ms) {
+		return &es[depIdx]
+	} else {
+		return pimpl.Export{}.EnumDescriptorOf(r.goTypes[depIdx])
+	}
+}
+
+func (r *resolverByIndex) FindMessageByIndex(i, j int32, es []fdesc.Enum, ms []fdesc.Message) pref.MessageDescriptor {
+	if depIdx := int(r.depIdxs.Get(i, j)); depIdx < len(es)+len(ms) {
+		return &ms[depIdx-len(es)]
+	} else {
+		return pimpl.Export{}.MessageDescriptorOf(r.goTypes[depIdx])
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/flags/flags.go b/vendor/google.golang.org/protobuf/internal/flags/flags.go
new file mode 100644
index 0000000..58372dd
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/flags/flags.go
@@ -0,0 +1,24 @@
+// 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.
+
+// Package flags provides a set of flags controlled by build tags.
+package flags
+
+// ProtoLegacy specifies whether to enable support for legacy functionality
+// such as MessageSets, weak fields, and various other obscure behavior
+// that is necessary to maintain backwards compatibility with proto1 or
+// the pre-release variants of proto2 and proto3.
+//
+// This is disabled by default unless built with the "protolegacy" tag.
+//
+// WARNING: The compatibility agreement covers nothing provided by this flag.
+// As such, functionality may suddenly be removed or changed at our discretion.
+const ProtoLegacy = protoLegacy
+
+// LazyUnmarshalExtensions specifies whether to lazily unmarshal extensions.
+//
+// Lazy extension unmarshaling validates the contents of message-valued
+// extension fields at unmarshal time, but defers creating the message
+// structure until the extension is first accessed.
+const LazyUnmarshalExtensions = ProtoLegacy
diff --git a/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go b/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go
new file mode 100644
index 0000000..a72995f
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go
@@ -0,0 +1,9 @@
+// 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 !protolegacy
+
+package flags
+
+const protoLegacy = false
diff --git a/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go b/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go
new file mode 100644
index 0000000..772e2f0
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go
@@ -0,0 +1,9 @@
+// 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 protolegacy
+
+package flags
+
+const protoLegacy = true
diff --git a/vendor/google.golang.org/protobuf/internal/genid/any_gen.go b/vendor/google.golang.org/protobuf/internal/genid/any_gen.go
new file mode 100644
index 0000000..e6f7d47
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/any_gen.go
@@ -0,0 +1,34 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_any_proto = "google/protobuf/any.proto"
+
+// Names for google.protobuf.Any.
+const (
+	Any_message_name     protoreflect.Name     = "Any"
+	Any_message_fullname protoreflect.FullName = "google.protobuf.Any"
+)
+
+// Field names for google.protobuf.Any.
+const (
+	Any_TypeUrl_field_name protoreflect.Name = "type_url"
+	Any_Value_field_name   protoreflect.Name = "value"
+
+	Any_TypeUrl_field_fullname protoreflect.FullName = "google.protobuf.Any.type_url"
+	Any_Value_field_fullname   protoreflect.FullName = "google.protobuf.Any.value"
+)
+
+// Field numbers for google.protobuf.Any.
+const (
+	Any_TypeUrl_field_number protoreflect.FieldNumber = 1
+	Any_Value_field_number   protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/api_gen.go b/vendor/google.golang.org/protobuf/internal/genid/api_gen.go
new file mode 100644
index 0000000..df8f918
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/api_gen.go
@@ -0,0 +1,106 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_api_proto = "google/protobuf/api.proto"
+
+// Names for google.protobuf.Api.
+const (
+	Api_message_name     protoreflect.Name     = "Api"
+	Api_message_fullname protoreflect.FullName = "google.protobuf.Api"
+)
+
+// Field names for google.protobuf.Api.
+const (
+	Api_Name_field_name          protoreflect.Name = "name"
+	Api_Methods_field_name       protoreflect.Name = "methods"
+	Api_Options_field_name       protoreflect.Name = "options"
+	Api_Version_field_name       protoreflect.Name = "version"
+	Api_SourceContext_field_name protoreflect.Name = "source_context"
+	Api_Mixins_field_name        protoreflect.Name = "mixins"
+	Api_Syntax_field_name        protoreflect.Name = "syntax"
+
+	Api_Name_field_fullname          protoreflect.FullName = "google.protobuf.Api.name"
+	Api_Methods_field_fullname       protoreflect.FullName = "google.protobuf.Api.methods"
+	Api_Options_field_fullname       protoreflect.FullName = "google.protobuf.Api.options"
+	Api_Version_field_fullname       protoreflect.FullName = "google.protobuf.Api.version"
+	Api_SourceContext_field_fullname protoreflect.FullName = "google.protobuf.Api.source_context"
+	Api_Mixins_field_fullname        protoreflect.FullName = "google.protobuf.Api.mixins"
+	Api_Syntax_field_fullname        protoreflect.FullName = "google.protobuf.Api.syntax"
+)
+
+// Field numbers for google.protobuf.Api.
+const (
+	Api_Name_field_number          protoreflect.FieldNumber = 1
+	Api_Methods_field_number       protoreflect.FieldNumber = 2
+	Api_Options_field_number       protoreflect.FieldNumber = 3
+	Api_Version_field_number       protoreflect.FieldNumber = 4
+	Api_SourceContext_field_number protoreflect.FieldNumber = 5
+	Api_Mixins_field_number        protoreflect.FieldNumber = 6
+	Api_Syntax_field_number        protoreflect.FieldNumber = 7
+)
+
+// Names for google.protobuf.Method.
+const (
+	Method_message_name     protoreflect.Name     = "Method"
+	Method_message_fullname protoreflect.FullName = "google.protobuf.Method"
+)
+
+// Field names for google.protobuf.Method.
+const (
+	Method_Name_field_name              protoreflect.Name = "name"
+	Method_RequestTypeUrl_field_name    protoreflect.Name = "request_type_url"
+	Method_RequestStreaming_field_name  protoreflect.Name = "request_streaming"
+	Method_ResponseTypeUrl_field_name   protoreflect.Name = "response_type_url"
+	Method_ResponseStreaming_field_name protoreflect.Name = "response_streaming"
+	Method_Options_field_name           protoreflect.Name = "options"
+	Method_Syntax_field_name            protoreflect.Name = "syntax"
+
+	Method_Name_field_fullname              protoreflect.FullName = "google.protobuf.Method.name"
+	Method_RequestTypeUrl_field_fullname    protoreflect.FullName = "google.protobuf.Method.request_type_url"
+	Method_RequestStreaming_field_fullname  protoreflect.FullName = "google.protobuf.Method.request_streaming"
+	Method_ResponseTypeUrl_field_fullname   protoreflect.FullName = "google.protobuf.Method.response_type_url"
+	Method_ResponseStreaming_field_fullname protoreflect.FullName = "google.protobuf.Method.response_streaming"
+	Method_Options_field_fullname           protoreflect.FullName = "google.protobuf.Method.options"
+	Method_Syntax_field_fullname            protoreflect.FullName = "google.protobuf.Method.syntax"
+)
+
+// Field numbers for google.protobuf.Method.
+const (
+	Method_Name_field_number              protoreflect.FieldNumber = 1
+	Method_RequestTypeUrl_field_number    protoreflect.FieldNumber = 2
+	Method_RequestStreaming_field_number  protoreflect.FieldNumber = 3
+	Method_ResponseTypeUrl_field_number   protoreflect.FieldNumber = 4
+	Method_ResponseStreaming_field_number protoreflect.FieldNumber = 5
+	Method_Options_field_number           protoreflect.FieldNumber = 6
+	Method_Syntax_field_number            protoreflect.FieldNumber = 7
+)
+
+// Names for google.protobuf.Mixin.
+const (
+	Mixin_message_name     protoreflect.Name     = "Mixin"
+	Mixin_message_fullname protoreflect.FullName = "google.protobuf.Mixin"
+)
+
+// Field names for google.protobuf.Mixin.
+const (
+	Mixin_Name_field_name protoreflect.Name = "name"
+	Mixin_Root_field_name protoreflect.Name = "root"
+
+	Mixin_Name_field_fullname protoreflect.FullName = "google.protobuf.Mixin.name"
+	Mixin_Root_field_fullname protoreflect.FullName = "google.protobuf.Mixin.root"
+)
+
+// Field numbers for google.protobuf.Mixin.
+const (
+	Mixin_Name_field_number protoreflect.FieldNumber = 1
+	Mixin_Root_field_number protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go b/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go
new file mode 100644
index 0000000..e3cdf1c
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go
@@ -0,0 +1,829 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_descriptor_proto = "google/protobuf/descriptor.proto"
+
+// Names for google.protobuf.FileDescriptorSet.
+const (
+	FileDescriptorSet_message_name     protoreflect.Name     = "FileDescriptorSet"
+	FileDescriptorSet_message_fullname protoreflect.FullName = "google.protobuf.FileDescriptorSet"
+)
+
+// Field names for google.protobuf.FileDescriptorSet.
+const (
+	FileDescriptorSet_File_field_name protoreflect.Name = "file"
+
+	FileDescriptorSet_File_field_fullname protoreflect.FullName = "google.protobuf.FileDescriptorSet.file"
+)
+
+// Field numbers for google.protobuf.FileDescriptorSet.
+const (
+	FileDescriptorSet_File_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.FileDescriptorProto.
+const (
+	FileDescriptorProto_message_name     protoreflect.Name     = "FileDescriptorProto"
+	FileDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.FileDescriptorProto"
+)
+
+// Field names for google.protobuf.FileDescriptorProto.
+const (
+	FileDescriptorProto_Name_field_name             protoreflect.Name = "name"
+	FileDescriptorProto_Package_field_name          protoreflect.Name = "package"
+	FileDescriptorProto_Dependency_field_name       protoreflect.Name = "dependency"
+	FileDescriptorProto_PublicDependency_field_name protoreflect.Name = "public_dependency"
+	FileDescriptorProto_WeakDependency_field_name   protoreflect.Name = "weak_dependency"
+	FileDescriptorProto_MessageType_field_name      protoreflect.Name = "message_type"
+	FileDescriptorProto_EnumType_field_name         protoreflect.Name = "enum_type"
+	FileDescriptorProto_Service_field_name          protoreflect.Name = "service"
+	FileDescriptorProto_Extension_field_name        protoreflect.Name = "extension"
+	FileDescriptorProto_Options_field_name          protoreflect.Name = "options"
+	FileDescriptorProto_SourceCodeInfo_field_name   protoreflect.Name = "source_code_info"
+	FileDescriptorProto_Syntax_field_name           protoreflect.Name = "syntax"
+
+	FileDescriptorProto_Name_field_fullname             protoreflect.FullName = "google.protobuf.FileDescriptorProto.name"
+	FileDescriptorProto_Package_field_fullname          protoreflect.FullName = "google.protobuf.FileDescriptorProto.package"
+	FileDescriptorProto_Dependency_field_fullname       protoreflect.FullName = "google.protobuf.FileDescriptorProto.dependency"
+	FileDescriptorProto_PublicDependency_field_fullname protoreflect.FullName = "google.protobuf.FileDescriptorProto.public_dependency"
+	FileDescriptorProto_WeakDependency_field_fullname   protoreflect.FullName = "google.protobuf.FileDescriptorProto.weak_dependency"
+	FileDescriptorProto_MessageType_field_fullname      protoreflect.FullName = "google.protobuf.FileDescriptorProto.message_type"
+	FileDescriptorProto_EnumType_field_fullname         protoreflect.FullName = "google.protobuf.FileDescriptorProto.enum_type"
+	FileDescriptorProto_Service_field_fullname          protoreflect.FullName = "google.protobuf.FileDescriptorProto.service"
+	FileDescriptorProto_Extension_field_fullname        protoreflect.FullName = "google.protobuf.FileDescriptorProto.extension"
+	FileDescriptorProto_Options_field_fullname          protoreflect.FullName = "google.protobuf.FileDescriptorProto.options"
+	FileDescriptorProto_SourceCodeInfo_field_fullname   protoreflect.FullName = "google.protobuf.FileDescriptorProto.source_code_info"
+	FileDescriptorProto_Syntax_field_fullname           protoreflect.FullName = "google.protobuf.FileDescriptorProto.syntax"
+)
+
+// Field numbers for google.protobuf.FileDescriptorProto.
+const (
+	FileDescriptorProto_Name_field_number             protoreflect.FieldNumber = 1
+	FileDescriptorProto_Package_field_number          protoreflect.FieldNumber = 2
+	FileDescriptorProto_Dependency_field_number       protoreflect.FieldNumber = 3
+	FileDescriptorProto_PublicDependency_field_number protoreflect.FieldNumber = 10
+	FileDescriptorProto_WeakDependency_field_number   protoreflect.FieldNumber = 11
+	FileDescriptorProto_MessageType_field_number      protoreflect.FieldNumber = 4
+	FileDescriptorProto_EnumType_field_number         protoreflect.FieldNumber = 5
+	FileDescriptorProto_Service_field_number          protoreflect.FieldNumber = 6
+	FileDescriptorProto_Extension_field_number        protoreflect.FieldNumber = 7
+	FileDescriptorProto_Options_field_number          protoreflect.FieldNumber = 8
+	FileDescriptorProto_SourceCodeInfo_field_number   protoreflect.FieldNumber = 9
+	FileDescriptorProto_Syntax_field_number           protoreflect.FieldNumber = 12
+)
+
+// Names for google.protobuf.DescriptorProto.
+const (
+	DescriptorProto_message_name     protoreflect.Name     = "DescriptorProto"
+	DescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.DescriptorProto"
+)
+
+// Field names for google.protobuf.DescriptorProto.
+const (
+	DescriptorProto_Name_field_name           protoreflect.Name = "name"
+	DescriptorProto_Field_field_name          protoreflect.Name = "field"
+	DescriptorProto_Extension_field_name      protoreflect.Name = "extension"
+	DescriptorProto_NestedType_field_name     protoreflect.Name = "nested_type"
+	DescriptorProto_EnumType_field_name       protoreflect.Name = "enum_type"
+	DescriptorProto_ExtensionRange_field_name protoreflect.Name = "extension_range"
+	DescriptorProto_OneofDecl_field_name      protoreflect.Name = "oneof_decl"
+	DescriptorProto_Options_field_name        protoreflect.Name = "options"
+	DescriptorProto_ReservedRange_field_name  protoreflect.Name = "reserved_range"
+	DescriptorProto_ReservedName_field_name   protoreflect.Name = "reserved_name"
+
+	DescriptorProto_Name_field_fullname           protoreflect.FullName = "google.protobuf.DescriptorProto.name"
+	DescriptorProto_Field_field_fullname          protoreflect.FullName = "google.protobuf.DescriptorProto.field"
+	DescriptorProto_Extension_field_fullname      protoreflect.FullName = "google.protobuf.DescriptorProto.extension"
+	DescriptorProto_NestedType_field_fullname     protoreflect.FullName = "google.protobuf.DescriptorProto.nested_type"
+	DescriptorProto_EnumType_field_fullname       protoreflect.FullName = "google.protobuf.DescriptorProto.enum_type"
+	DescriptorProto_ExtensionRange_field_fullname protoreflect.FullName = "google.protobuf.DescriptorProto.extension_range"
+	DescriptorProto_OneofDecl_field_fullname      protoreflect.FullName = "google.protobuf.DescriptorProto.oneof_decl"
+	DescriptorProto_Options_field_fullname        protoreflect.FullName = "google.protobuf.DescriptorProto.options"
+	DescriptorProto_ReservedRange_field_fullname  protoreflect.FullName = "google.protobuf.DescriptorProto.reserved_range"
+	DescriptorProto_ReservedName_field_fullname   protoreflect.FullName = "google.protobuf.DescriptorProto.reserved_name"
+)
+
+// Field numbers for google.protobuf.DescriptorProto.
+const (
+	DescriptorProto_Name_field_number           protoreflect.FieldNumber = 1
+	DescriptorProto_Field_field_number          protoreflect.FieldNumber = 2
+	DescriptorProto_Extension_field_number      protoreflect.FieldNumber = 6
+	DescriptorProto_NestedType_field_number     protoreflect.FieldNumber = 3
+	DescriptorProto_EnumType_field_number       protoreflect.FieldNumber = 4
+	DescriptorProto_ExtensionRange_field_number protoreflect.FieldNumber = 5
+	DescriptorProto_OneofDecl_field_number      protoreflect.FieldNumber = 8
+	DescriptorProto_Options_field_number        protoreflect.FieldNumber = 7
+	DescriptorProto_ReservedRange_field_number  protoreflect.FieldNumber = 9
+	DescriptorProto_ReservedName_field_number   protoreflect.FieldNumber = 10
+)
+
+// Names for google.protobuf.DescriptorProto.ExtensionRange.
+const (
+	DescriptorProto_ExtensionRange_message_name     protoreflect.Name     = "ExtensionRange"
+	DescriptorProto_ExtensionRange_message_fullname protoreflect.FullName = "google.protobuf.DescriptorProto.ExtensionRange"
+)
+
+// Field names for google.protobuf.DescriptorProto.ExtensionRange.
+const (
+	DescriptorProto_ExtensionRange_Start_field_name   protoreflect.Name = "start"
+	DescriptorProto_ExtensionRange_End_field_name     protoreflect.Name = "end"
+	DescriptorProto_ExtensionRange_Options_field_name protoreflect.Name = "options"
+
+	DescriptorProto_ExtensionRange_Start_field_fullname   protoreflect.FullName = "google.protobuf.DescriptorProto.ExtensionRange.start"
+	DescriptorProto_ExtensionRange_End_field_fullname     protoreflect.FullName = "google.protobuf.DescriptorProto.ExtensionRange.end"
+	DescriptorProto_ExtensionRange_Options_field_fullname protoreflect.FullName = "google.protobuf.DescriptorProto.ExtensionRange.options"
+)
+
+// Field numbers for google.protobuf.DescriptorProto.ExtensionRange.
+const (
+	DescriptorProto_ExtensionRange_Start_field_number   protoreflect.FieldNumber = 1
+	DescriptorProto_ExtensionRange_End_field_number     protoreflect.FieldNumber = 2
+	DescriptorProto_ExtensionRange_Options_field_number protoreflect.FieldNumber = 3
+)
+
+// Names for google.protobuf.DescriptorProto.ReservedRange.
+const (
+	DescriptorProto_ReservedRange_message_name     protoreflect.Name     = "ReservedRange"
+	DescriptorProto_ReservedRange_message_fullname protoreflect.FullName = "google.protobuf.DescriptorProto.ReservedRange"
+)
+
+// Field names for google.protobuf.DescriptorProto.ReservedRange.
+const (
+	DescriptorProto_ReservedRange_Start_field_name protoreflect.Name = "start"
+	DescriptorProto_ReservedRange_End_field_name   protoreflect.Name = "end"
+
+	DescriptorProto_ReservedRange_Start_field_fullname protoreflect.FullName = "google.protobuf.DescriptorProto.ReservedRange.start"
+	DescriptorProto_ReservedRange_End_field_fullname   protoreflect.FullName = "google.protobuf.DescriptorProto.ReservedRange.end"
+)
+
+// Field numbers for google.protobuf.DescriptorProto.ReservedRange.
+const (
+	DescriptorProto_ReservedRange_Start_field_number protoreflect.FieldNumber = 1
+	DescriptorProto_ReservedRange_End_field_number   protoreflect.FieldNumber = 2
+)
+
+// Names for google.protobuf.ExtensionRangeOptions.
+const (
+	ExtensionRangeOptions_message_name     protoreflect.Name     = "ExtensionRangeOptions"
+	ExtensionRangeOptions_message_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions"
+)
+
+// Field names for google.protobuf.ExtensionRangeOptions.
+const (
+	ExtensionRangeOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	ExtensionRangeOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.ExtensionRangeOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.ExtensionRangeOptions.
+const (
+	ExtensionRangeOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.FieldDescriptorProto.
+const (
+	FieldDescriptorProto_message_name     protoreflect.Name     = "FieldDescriptorProto"
+	FieldDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.FieldDescriptorProto"
+)
+
+// Field names for google.protobuf.FieldDescriptorProto.
+const (
+	FieldDescriptorProto_Name_field_name           protoreflect.Name = "name"
+	FieldDescriptorProto_Number_field_name         protoreflect.Name = "number"
+	FieldDescriptorProto_Label_field_name          protoreflect.Name = "label"
+	FieldDescriptorProto_Type_field_name           protoreflect.Name = "type"
+	FieldDescriptorProto_TypeName_field_name       protoreflect.Name = "type_name"
+	FieldDescriptorProto_Extendee_field_name       protoreflect.Name = "extendee"
+	FieldDescriptorProto_DefaultValue_field_name   protoreflect.Name = "default_value"
+	FieldDescriptorProto_OneofIndex_field_name     protoreflect.Name = "oneof_index"
+	FieldDescriptorProto_JsonName_field_name       protoreflect.Name = "json_name"
+	FieldDescriptorProto_Options_field_name        protoreflect.Name = "options"
+	FieldDescriptorProto_Proto3Optional_field_name protoreflect.Name = "proto3_optional"
+
+	FieldDescriptorProto_Name_field_fullname           protoreflect.FullName = "google.protobuf.FieldDescriptorProto.name"
+	FieldDescriptorProto_Number_field_fullname         protoreflect.FullName = "google.protobuf.FieldDescriptorProto.number"
+	FieldDescriptorProto_Label_field_fullname          protoreflect.FullName = "google.protobuf.FieldDescriptorProto.label"
+	FieldDescriptorProto_Type_field_fullname           protoreflect.FullName = "google.protobuf.FieldDescriptorProto.type"
+	FieldDescriptorProto_TypeName_field_fullname       protoreflect.FullName = "google.protobuf.FieldDescriptorProto.type_name"
+	FieldDescriptorProto_Extendee_field_fullname       protoreflect.FullName = "google.protobuf.FieldDescriptorProto.extendee"
+	FieldDescriptorProto_DefaultValue_field_fullname   protoreflect.FullName = "google.protobuf.FieldDescriptorProto.default_value"
+	FieldDescriptorProto_OneofIndex_field_fullname     protoreflect.FullName = "google.protobuf.FieldDescriptorProto.oneof_index"
+	FieldDescriptorProto_JsonName_field_fullname       protoreflect.FullName = "google.protobuf.FieldDescriptorProto.json_name"
+	FieldDescriptorProto_Options_field_fullname        protoreflect.FullName = "google.protobuf.FieldDescriptorProto.options"
+	FieldDescriptorProto_Proto3Optional_field_fullname protoreflect.FullName = "google.protobuf.FieldDescriptorProto.proto3_optional"
+)
+
+// Field numbers for google.protobuf.FieldDescriptorProto.
+const (
+	FieldDescriptorProto_Name_field_number           protoreflect.FieldNumber = 1
+	FieldDescriptorProto_Number_field_number         protoreflect.FieldNumber = 3
+	FieldDescriptorProto_Label_field_number          protoreflect.FieldNumber = 4
+	FieldDescriptorProto_Type_field_number           protoreflect.FieldNumber = 5
+	FieldDescriptorProto_TypeName_field_number       protoreflect.FieldNumber = 6
+	FieldDescriptorProto_Extendee_field_number       protoreflect.FieldNumber = 2
+	FieldDescriptorProto_DefaultValue_field_number   protoreflect.FieldNumber = 7
+	FieldDescriptorProto_OneofIndex_field_number     protoreflect.FieldNumber = 9
+	FieldDescriptorProto_JsonName_field_number       protoreflect.FieldNumber = 10
+	FieldDescriptorProto_Options_field_number        protoreflect.FieldNumber = 8
+	FieldDescriptorProto_Proto3Optional_field_number protoreflect.FieldNumber = 17
+)
+
+// Full and short names for google.protobuf.FieldDescriptorProto.Type.
+const (
+	FieldDescriptorProto_Type_enum_fullname = "google.protobuf.FieldDescriptorProto.Type"
+	FieldDescriptorProto_Type_enum_name     = "Type"
+)
+
+// Full and short names for google.protobuf.FieldDescriptorProto.Label.
+const (
+	FieldDescriptorProto_Label_enum_fullname = "google.protobuf.FieldDescriptorProto.Label"
+	FieldDescriptorProto_Label_enum_name     = "Label"
+)
+
+// Names for google.protobuf.OneofDescriptorProto.
+const (
+	OneofDescriptorProto_message_name     protoreflect.Name     = "OneofDescriptorProto"
+	OneofDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.OneofDescriptorProto"
+)
+
+// Field names for google.protobuf.OneofDescriptorProto.
+const (
+	OneofDescriptorProto_Name_field_name    protoreflect.Name = "name"
+	OneofDescriptorProto_Options_field_name protoreflect.Name = "options"
+
+	OneofDescriptorProto_Name_field_fullname    protoreflect.FullName = "google.protobuf.OneofDescriptorProto.name"
+	OneofDescriptorProto_Options_field_fullname protoreflect.FullName = "google.protobuf.OneofDescriptorProto.options"
+)
+
+// Field numbers for google.protobuf.OneofDescriptorProto.
+const (
+	OneofDescriptorProto_Name_field_number    protoreflect.FieldNumber = 1
+	OneofDescriptorProto_Options_field_number protoreflect.FieldNumber = 2
+)
+
+// Names for google.protobuf.EnumDescriptorProto.
+const (
+	EnumDescriptorProto_message_name     protoreflect.Name     = "EnumDescriptorProto"
+	EnumDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.EnumDescriptorProto"
+)
+
+// Field names for google.protobuf.EnumDescriptorProto.
+const (
+	EnumDescriptorProto_Name_field_name          protoreflect.Name = "name"
+	EnumDescriptorProto_Value_field_name         protoreflect.Name = "value"
+	EnumDescriptorProto_Options_field_name       protoreflect.Name = "options"
+	EnumDescriptorProto_ReservedRange_field_name protoreflect.Name = "reserved_range"
+	EnumDescriptorProto_ReservedName_field_name  protoreflect.Name = "reserved_name"
+
+	EnumDescriptorProto_Name_field_fullname          protoreflect.FullName = "google.protobuf.EnumDescriptorProto.name"
+	EnumDescriptorProto_Value_field_fullname         protoreflect.FullName = "google.protobuf.EnumDescriptorProto.value"
+	EnumDescriptorProto_Options_field_fullname       protoreflect.FullName = "google.protobuf.EnumDescriptorProto.options"
+	EnumDescriptorProto_ReservedRange_field_fullname protoreflect.FullName = "google.protobuf.EnumDescriptorProto.reserved_range"
+	EnumDescriptorProto_ReservedName_field_fullname  protoreflect.FullName = "google.protobuf.EnumDescriptorProto.reserved_name"
+)
+
+// Field numbers for google.protobuf.EnumDescriptorProto.
+const (
+	EnumDescriptorProto_Name_field_number          protoreflect.FieldNumber = 1
+	EnumDescriptorProto_Value_field_number         protoreflect.FieldNumber = 2
+	EnumDescriptorProto_Options_field_number       protoreflect.FieldNumber = 3
+	EnumDescriptorProto_ReservedRange_field_number protoreflect.FieldNumber = 4
+	EnumDescriptorProto_ReservedName_field_number  protoreflect.FieldNumber = 5
+)
+
+// Names for google.protobuf.EnumDescriptorProto.EnumReservedRange.
+const (
+	EnumDescriptorProto_EnumReservedRange_message_name     protoreflect.Name     = "EnumReservedRange"
+	EnumDescriptorProto_EnumReservedRange_message_fullname protoreflect.FullName = "google.protobuf.EnumDescriptorProto.EnumReservedRange"
+)
+
+// Field names for google.protobuf.EnumDescriptorProto.EnumReservedRange.
+const (
+	EnumDescriptorProto_EnumReservedRange_Start_field_name protoreflect.Name = "start"
+	EnumDescriptorProto_EnumReservedRange_End_field_name   protoreflect.Name = "end"
+
+	EnumDescriptorProto_EnumReservedRange_Start_field_fullname protoreflect.FullName = "google.protobuf.EnumDescriptorProto.EnumReservedRange.start"
+	EnumDescriptorProto_EnumReservedRange_End_field_fullname   protoreflect.FullName = "google.protobuf.EnumDescriptorProto.EnumReservedRange.end"
+)
+
+// Field numbers for google.protobuf.EnumDescriptorProto.EnumReservedRange.
+const (
+	EnumDescriptorProto_EnumReservedRange_Start_field_number protoreflect.FieldNumber = 1
+	EnumDescriptorProto_EnumReservedRange_End_field_number   protoreflect.FieldNumber = 2
+)
+
+// Names for google.protobuf.EnumValueDescriptorProto.
+const (
+	EnumValueDescriptorProto_message_name     protoreflect.Name     = "EnumValueDescriptorProto"
+	EnumValueDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.EnumValueDescriptorProto"
+)
+
+// Field names for google.protobuf.EnumValueDescriptorProto.
+const (
+	EnumValueDescriptorProto_Name_field_name    protoreflect.Name = "name"
+	EnumValueDescriptorProto_Number_field_name  protoreflect.Name = "number"
+	EnumValueDescriptorProto_Options_field_name protoreflect.Name = "options"
+
+	EnumValueDescriptorProto_Name_field_fullname    protoreflect.FullName = "google.protobuf.EnumValueDescriptorProto.name"
+	EnumValueDescriptorProto_Number_field_fullname  protoreflect.FullName = "google.protobuf.EnumValueDescriptorProto.number"
+	EnumValueDescriptorProto_Options_field_fullname protoreflect.FullName = "google.protobuf.EnumValueDescriptorProto.options"
+)
+
+// Field numbers for google.protobuf.EnumValueDescriptorProto.
+const (
+	EnumValueDescriptorProto_Name_field_number    protoreflect.FieldNumber = 1
+	EnumValueDescriptorProto_Number_field_number  protoreflect.FieldNumber = 2
+	EnumValueDescriptorProto_Options_field_number protoreflect.FieldNumber = 3
+)
+
+// Names for google.protobuf.ServiceDescriptorProto.
+const (
+	ServiceDescriptorProto_message_name     protoreflect.Name     = "ServiceDescriptorProto"
+	ServiceDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.ServiceDescriptorProto"
+)
+
+// Field names for google.protobuf.ServiceDescriptorProto.
+const (
+	ServiceDescriptorProto_Name_field_name    protoreflect.Name = "name"
+	ServiceDescriptorProto_Method_field_name  protoreflect.Name = "method"
+	ServiceDescriptorProto_Options_field_name protoreflect.Name = "options"
+
+	ServiceDescriptorProto_Name_field_fullname    protoreflect.FullName = "google.protobuf.ServiceDescriptorProto.name"
+	ServiceDescriptorProto_Method_field_fullname  protoreflect.FullName = "google.protobuf.ServiceDescriptorProto.method"
+	ServiceDescriptorProto_Options_field_fullname protoreflect.FullName = "google.protobuf.ServiceDescriptorProto.options"
+)
+
+// Field numbers for google.protobuf.ServiceDescriptorProto.
+const (
+	ServiceDescriptorProto_Name_field_number    protoreflect.FieldNumber = 1
+	ServiceDescriptorProto_Method_field_number  protoreflect.FieldNumber = 2
+	ServiceDescriptorProto_Options_field_number protoreflect.FieldNumber = 3
+)
+
+// Names for google.protobuf.MethodDescriptorProto.
+const (
+	MethodDescriptorProto_message_name     protoreflect.Name     = "MethodDescriptorProto"
+	MethodDescriptorProto_message_fullname protoreflect.FullName = "google.protobuf.MethodDescriptorProto"
+)
+
+// Field names for google.protobuf.MethodDescriptorProto.
+const (
+	MethodDescriptorProto_Name_field_name            protoreflect.Name = "name"
+	MethodDescriptorProto_InputType_field_name       protoreflect.Name = "input_type"
+	MethodDescriptorProto_OutputType_field_name      protoreflect.Name = "output_type"
+	MethodDescriptorProto_Options_field_name         protoreflect.Name = "options"
+	MethodDescriptorProto_ClientStreaming_field_name protoreflect.Name = "client_streaming"
+	MethodDescriptorProto_ServerStreaming_field_name protoreflect.Name = "server_streaming"
+
+	MethodDescriptorProto_Name_field_fullname            protoreflect.FullName = "google.protobuf.MethodDescriptorProto.name"
+	MethodDescriptorProto_InputType_field_fullname       protoreflect.FullName = "google.protobuf.MethodDescriptorProto.input_type"
+	MethodDescriptorProto_OutputType_field_fullname      protoreflect.FullName = "google.protobuf.MethodDescriptorProto.output_type"
+	MethodDescriptorProto_Options_field_fullname         protoreflect.FullName = "google.protobuf.MethodDescriptorProto.options"
+	MethodDescriptorProto_ClientStreaming_field_fullname protoreflect.FullName = "google.protobuf.MethodDescriptorProto.client_streaming"
+	MethodDescriptorProto_ServerStreaming_field_fullname protoreflect.FullName = "google.protobuf.MethodDescriptorProto.server_streaming"
+)
+
+// Field numbers for google.protobuf.MethodDescriptorProto.
+const (
+	MethodDescriptorProto_Name_field_number            protoreflect.FieldNumber = 1
+	MethodDescriptorProto_InputType_field_number       protoreflect.FieldNumber = 2
+	MethodDescriptorProto_OutputType_field_number      protoreflect.FieldNumber = 3
+	MethodDescriptorProto_Options_field_number         protoreflect.FieldNumber = 4
+	MethodDescriptorProto_ClientStreaming_field_number protoreflect.FieldNumber = 5
+	MethodDescriptorProto_ServerStreaming_field_number protoreflect.FieldNumber = 6
+)
+
+// Names for google.protobuf.FileOptions.
+const (
+	FileOptions_message_name     protoreflect.Name     = "FileOptions"
+	FileOptions_message_fullname protoreflect.FullName = "google.protobuf.FileOptions"
+)
+
+// Field names for google.protobuf.FileOptions.
+const (
+	FileOptions_JavaPackage_field_name               protoreflect.Name = "java_package"
+	FileOptions_JavaOuterClassname_field_name        protoreflect.Name = "java_outer_classname"
+	FileOptions_JavaMultipleFiles_field_name         protoreflect.Name = "java_multiple_files"
+	FileOptions_JavaGenerateEqualsAndHash_field_name protoreflect.Name = "java_generate_equals_and_hash"
+	FileOptions_JavaStringCheckUtf8_field_name       protoreflect.Name = "java_string_check_utf8"
+	FileOptions_OptimizeFor_field_name               protoreflect.Name = "optimize_for"
+	FileOptions_GoPackage_field_name                 protoreflect.Name = "go_package"
+	FileOptions_CcGenericServices_field_name         protoreflect.Name = "cc_generic_services"
+	FileOptions_JavaGenericServices_field_name       protoreflect.Name = "java_generic_services"
+	FileOptions_PyGenericServices_field_name         protoreflect.Name = "py_generic_services"
+	FileOptions_PhpGenericServices_field_name        protoreflect.Name = "php_generic_services"
+	FileOptions_Deprecated_field_name                protoreflect.Name = "deprecated"
+	FileOptions_CcEnableArenas_field_name            protoreflect.Name = "cc_enable_arenas"
+	FileOptions_ObjcClassPrefix_field_name           protoreflect.Name = "objc_class_prefix"
+	FileOptions_CsharpNamespace_field_name           protoreflect.Name = "csharp_namespace"
+	FileOptions_SwiftPrefix_field_name               protoreflect.Name = "swift_prefix"
+	FileOptions_PhpClassPrefix_field_name            protoreflect.Name = "php_class_prefix"
+	FileOptions_PhpNamespace_field_name              protoreflect.Name = "php_namespace"
+	FileOptions_PhpMetadataNamespace_field_name      protoreflect.Name = "php_metadata_namespace"
+	FileOptions_RubyPackage_field_name               protoreflect.Name = "ruby_package"
+	FileOptions_UninterpretedOption_field_name       protoreflect.Name = "uninterpreted_option"
+
+	FileOptions_JavaPackage_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.java_package"
+	FileOptions_JavaOuterClassname_field_fullname        protoreflect.FullName = "google.protobuf.FileOptions.java_outer_classname"
+	FileOptions_JavaMultipleFiles_field_fullname         protoreflect.FullName = "google.protobuf.FileOptions.java_multiple_files"
+	FileOptions_JavaGenerateEqualsAndHash_field_fullname protoreflect.FullName = "google.protobuf.FileOptions.java_generate_equals_and_hash"
+	FileOptions_JavaStringCheckUtf8_field_fullname       protoreflect.FullName = "google.protobuf.FileOptions.java_string_check_utf8"
+	FileOptions_OptimizeFor_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.optimize_for"
+	FileOptions_GoPackage_field_fullname                 protoreflect.FullName = "google.protobuf.FileOptions.go_package"
+	FileOptions_CcGenericServices_field_fullname         protoreflect.FullName = "google.protobuf.FileOptions.cc_generic_services"
+	FileOptions_JavaGenericServices_field_fullname       protoreflect.FullName = "google.protobuf.FileOptions.java_generic_services"
+	FileOptions_PyGenericServices_field_fullname         protoreflect.FullName = "google.protobuf.FileOptions.py_generic_services"
+	FileOptions_PhpGenericServices_field_fullname        protoreflect.FullName = "google.protobuf.FileOptions.php_generic_services"
+	FileOptions_Deprecated_field_fullname                protoreflect.FullName = "google.protobuf.FileOptions.deprecated"
+	FileOptions_CcEnableArenas_field_fullname            protoreflect.FullName = "google.protobuf.FileOptions.cc_enable_arenas"
+	FileOptions_ObjcClassPrefix_field_fullname           protoreflect.FullName = "google.protobuf.FileOptions.objc_class_prefix"
+	FileOptions_CsharpNamespace_field_fullname           protoreflect.FullName = "google.protobuf.FileOptions.csharp_namespace"
+	FileOptions_SwiftPrefix_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.swift_prefix"
+	FileOptions_PhpClassPrefix_field_fullname            protoreflect.FullName = "google.protobuf.FileOptions.php_class_prefix"
+	FileOptions_PhpNamespace_field_fullname              protoreflect.FullName = "google.protobuf.FileOptions.php_namespace"
+	FileOptions_PhpMetadataNamespace_field_fullname      protoreflect.FullName = "google.protobuf.FileOptions.php_metadata_namespace"
+	FileOptions_RubyPackage_field_fullname               protoreflect.FullName = "google.protobuf.FileOptions.ruby_package"
+	FileOptions_UninterpretedOption_field_fullname       protoreflect.FullName = "google.protobuf.FileOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.FileOptions.
+const (
+	FileOptions_JavaPackage_field_number               protoreflect.FieldNumber = 1
+	FileOptions_JavaOuterClassname_field_number        protoreflect.FieldNumber = 8
+	FileOptions_JavaMultipleFiles_field_number         protoreflect.FieldNumber = 10
+	FileOptions_JavaGenerateEqualsAndHash_field_number protoreflect.FieldNumber = 20
+	FileOptions_JavaStringCheckUtf8_field_number       protoreflect.FieldNumber = 27
+	FileOptions_OptimizeFor_field_number               protoreflect.FieldNumber = 9
+	FileOptions_GoPackage_field_number                 protoreflect.FieldNumber = 11
+	FileOptions_CcGenericServices_field_number         protoreflect.FieldNumber = 16
+	FileOptions_JavaGenericServices_field_number       protoreflect.FieldNumber = 17
+	FileOptions_PyGenericServices_field_number         protoreflect.FieldNumber = 18
+	FileOptions_PhpGenericServices_field_number        protoreflect.FieldNumber = 42
+	FileOptions_Deprecated_field_number                protoreflect.FieldNumber = 23
+	FileOptions_CcEnableArenas_field_number            protoreflect.FieldNumber = 31
+	FileOptions_ObjcClassPrefix_field_number           protoreflect.FieldNumber = 36
+	FileOptions_CsharpNamespace_field_number           protoreflect.FieldNumber = 37
+	FileOptions_SwiftPrefix_field_number               protoreflect.FieldNumber = 39
+	FileOptions_PhpClassPrefix_field_number            protoreflect.FieldNumber = 40
+	FileOptions_PhpNamespace_field_number              protoreflect.FieldNumber = 41
+	FileOptions_PhpMetadataNamespace_field_number      protoreflect.FieldNumber = 44
+	FileOptions_RubyPackage_field_number               protoreflect.FieldNumber = 45
+	FileOptions_UninterpretedOption_field_number       protoreflect.FieldNumber = 999
+)
+
+// Full and short names for google.protobuf.FileOptions.OptimizeMode.
+const (
+	FileOptions_OptimizeMode_enum_fullname = "google.protobuf.FileOptions.OptimizeMode"
+	FileOptions_OptimizeMode_enum_name     = "OptimizeMode"
+)
+
+// Names for google.protobuf.MessageOptions.
+const (
+	MessageOptions_message_name     protoreflect.Name     = "MessageOptions"
+	MessageOptions_message_fullname protoreflect.FullName = "google.protobuf.MessageOptions"
+)
+
+// Field names for google.protobuf.MessageOptions.
+const (
+	MessageOptions_MessageSetWireFormat_field_name         protoreflect.Name = "message_set_wire_format"
+	MessageOptions_NoStandardDescriptorAccessor_field_name protoreflect.Name = "no_standard_descriptor_accessor"
+	MessageOptions_Deprecated_field_name                   protoreflect.Name = "deprecated"
+	MessageOptions_MapEntry_field_name                     protoreflect.Name = "map_entry"
+	MessageOptions_UninterpretedOption_field_name          protoreflect.Name = "uninterpreted_option"
+
+	MessageOptions_MessageSetWireFormat_field_fullname         protoreflect.FullName = "google.protobuf.MessageOptions.message_set_wire_format"
+	MessageOptions_NoStandardDescriptorAccessor_field_fullname protoreflect.FullName = "google.protobuf.MessageOptions.no_standard_descriptor_accessor"
+	MessageOptions_Deprecated_field_fullname                   protoreflect.FullName = "google.protobuf.MessageOptions.deprecated"
+	MessageOptions_MapEntry_field_fullname                     protoreflect.FullName = "google.protobuf.MessageOptions.map_entry"
+	MessageOptions_UninterpretedOption_field_fullname          protoreflect.FullName = "google.protobuf.MessageOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.MessageOptions.
+const (
+	MessageOptions_MessageSetWireFormat_field_number         protoreflect.FieldNumber = 1
+	MessageOptions_NoStandardDescriptorAccessor_field_number protoreflect.FieldNumber = 2
+	MessageOptions_Deprecated_field_number                   protoreflect.FieldNumber = 3
+	MessageOptions_MapEntry_field_number                     protoreflect.FieldNumber = 7
+	MessageOptions_UninterpretedOption_field_number          protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.FieldOptions.
+const (
+	FieldOptions_message_name     protoreflect.Name     = "FieldOptions"
+	FieldOptions_message_fullname protoreflect.FullName = "google.protobuf.FieldOptions"
+)
+
+// Field names for google.protobuf.FieldOptions.
+const (
+	FieldOptions_Ctype_field_name               protoreflect.Name = "ctype"
+	FieldOptions_Packed_field_name              protoreflect.Name = "packed"
+	FieldOptions_Jstype_field_name              protoreflect.Name = "jstype"
+	FieldOptions_Lazy_field_name                protoreflect.Name = "lazy"
+	FieldOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
+	FieldOptions_Weak_field_name                protoreflect.Name = "weak"
+	FieldOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	FieldOptions_Ctype_field_fullname               protoreflect.FullName = "google.protobuf.FieldOptions.ctype"
+	FieldOptions_Packed_field_fullname              protoreflect.FullName = "google.protobuf.FieldOptions.packed"
+	FieldOptions_Jstype_field_fullname              protoreflect.FullName = "google.protobuf.FieldOptions.jstype"
+	FieldOptions_Lazy_field_fullname                protoreflect.FullName = "google.protobuf.FieldOptions.lazy"
+	FieldOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.FieldOptions.deprecated"
+	FieldOptions_Weak_field_fullname                protoreflect.FullName = "google.protobuf.FieldOptions.weak"
+	FieldOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.FieldOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.FieldOptions.
+const (
+	FieldOptions_Ctype_field_number               protoreflect.FieldNumber = 1
+	FieldOptions_Packed_field_number              protoreflect.FieldNumber = 2
+	FieldOptions_Jstype_field_number              protoreflect.FieldNumber = 6
+	FieldOptions_Lazy_field_number                protoreflect.FieldNumber = 5
+	FieldOptions_Deprecated_field_number          protoreflect.FieldNumber = 3
+	FieldOptions_Weak_field_number                protoreflect.FieldNumber = 10
+	FieldOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Full and short names for google.protobuf.FieldOptions.CType.
+const (
+	FieldOptions_CType_enum_fullname = "google.protobuf.FieldOptions.CType"
+	FieldOptions_CType_enum_name     = "CType"
+)
+
+// Full and short names for google.protobuf.FieldOptions.JSType.
+const (
+	FieldOptions_JSType_enum_fullname = "google.protobuf.FieldOptions.JSType"
+	FieldOptions_JSType_enum_name     = "JSType"
+)
+
+// Names for google.protobuf.OneofOptions.
+const (
+	OneofOptions_message_name     protoreflect.Name     = "OneofOptions"
+	OneofOptions_message_fullname protoreflect.FullName = "google.protobuf.OneofOptions"
+)
+
+// Field names for google.protobuf.OneofOptions.
+const (
+	OneofOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	OneofOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.OneofOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.OneofOptions.
+const (
+	OneofOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.EnumOptions.
+const (
+	EnumOptions_message_name     protoreflect.Name     = "EnumOptions"
+	EnumOptions_message_fullname protoreflect.FullName = "google.protobuf.EnumOptions"
+)
+
+// Field names for google.protobuf.EnumOptions.
+const (
+	EnumOptions_AllowAlias_field_name          protoreflect.Name = "allow_alias"
+	EnumOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
+	EnumOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	EnumOptions_AllowAlias_field_fullname          protoreflect.FullName = "google.protobuf.EnumOptions.allow_alias"
+	EnumOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.EnumOptions.deprecated"
+	EnumOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.EnumOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.EnumOptions.
+const (
+	EnumOptions_AllowAlias_field_number          protoreflect.FieldNumber = 2
+	EnumOptions_Deprecated_field_number          protoreflect.FieldNumber = 3
+	EnumOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.EnumValueOptions.
+const (
+	EnumValueOptions_message_name     protoreflect.Name     = "EnumValueOptions"
+	EnumValueOptions_message_fullname protoreflect.FullName = "google.protobuf.EnumValueOptions"
+)
+
+// Field names for google.protobuf.EnumValueOptions.
+const (
+	EnumValueOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
+	EnumValueOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	EnumValueOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.EnumValueOptions.deprecated"
+	EnumValueOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.EnumValueOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.EnumValueOptions.
+const (
+	EnumValueOptions_Deprecated_field_number          protoreflect.FieldNumber = 1
+	EnumValueOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.ServiceOptions.
+const (
+	ServiceOptions_message_name     protoreflect.Name     = "ServiceOptions"
+	ServiceOptions_message_fullname protoreflect.FullName = "google.protobuf.ServiceOptions"
+)
+
+// Field names for google.protobuf.ServiceOptions.
+const (
+	ServiceOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
+	ServiceOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	ServiceOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.ServiceOptions.deprecated"
+	ServiceOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.ServiceOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.ServiceOptions.
+const (
+	ServiceOptions_Deprecated_field_number          protoreflect.FieldNumber = 33
+	ServiceOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Names for google.protobuf.MethodOptions.
+const (
+	MethodOptions_message_name     protoreflect.Name     = "MethodOptions"
+	MethodOptions_message_fullname protoreflect.FullName = "google.protobuf.MethodOptions"
+)
+
+// Field names for google.protobuf.MethodOptions.
+const (
+	MethodOptions_Deprecated_field_name          protoreflect.Name = "deprecated"
+	MethodOptions_IdempotencyLevel_field_name    protoreflect.Name = "idempotency_level"
+	MethodOptions_UninterpretedOption_field_name protoreflect.Name = "uninterpreted_option"
+
+	MethodOptions_Deprecated_field_fullname          protoreflect.FullName = "google.protobuf.MethodOptions.deprecated"
+	MethodOptions_IdempotencyLevel_field_fullname    protoreflect.FullName = "google.protobuf.MethodOptions.idempotency_level"
+	MethodOptions_UninterpretedOption_field_fullname protoreflect.FullName = "google.protobuf.MethodOptions.uninterpreted_option"
+)
+
+// Field numbers for google.protobuf.MethodOptions.
+const (
+	MethodOptions_Deprecated_field_number          protoreflect.FieldNumber = 33
+	MethodOptions_IdempotencyLevel_field_number    protoreflect.FieldNumber = 34
+	MethodOptions_UninterpretedOption_field_number protoreflect.FieldNumber = 999
+)
+
+// Full and short names for google.protobuf.MethodOptions.IdempotencyLevel.
+const (
+	MethodOptions_IdempotencyLevel_enum_fullname = "google.protobuf.MethodOptions.IdempotencyLevel"
+	MethodOptions_IdempotencyLevel_enum_name     = "IdempotencyLevel"
+)
+
+// Names for google.protobuf.UninterpretedOption.
+const (
+	UninterpretedOption_message_name     protoreflect.Name     = "UninterpretedOption"
+	UninterpretedOption_message_fullname protoreflect.FullName = "google.protobuf.UninterpretedOption"
+)
+
+// Field names for google.protobuf.UninterpretedOption.
+const (
+	UninterpretedOption_Name_field_name             protoreflect.Name = "name"
+	UninterpretedOption_IdentifierValue_field_name  protoreflect.Name = "identifier_value"
+	UninterpretedOption_PositiveIntValue_field_name protoreflect.Name = "positive_int_value"
+	UninterpretedOption_NegativeIntValue_field_name protoreflect.Name = "negative_int_value"
+	UninterpretedOption_DoubleValue_field_name      protoreflect.Name = "double_value"
+	UninterpretedOption_StringValue_field_name      protoreflect.Name = "string_value"
+	UninterpretedOption_AggregateValue_field_name   protoreflect.Name = "aggregate_value"
+
+	UninterpretedOption_Name_field_fullname             protoreflect.FullName = "google.protobuf.UninterpretedOption.name"
+	UninterpretedOption_IdentifierValue_field_fullname  protoreflect.FullName = "google.protobuf.UninterpretedOption.identifier_value"
+	UninterpretedOption_PositiveIntValue_field_fullname protoreflect.FullName = "google.protobuf.UninterpretedOption.positive_int_value"
+	UninterpretedOption_NegativeIntValue_field_fullname protoreflect.FullName = "google.protobuf.UninterpretedOption.negative_int_value"
+	UninterpretedOption_DoubleValue_field_fullname      protoreflect.FullName = "google.protobuf.UninterpretedOption.double_value"
+	UninterpretedOption_StringValue_field_fullname      protoreflect.FullName = "google.protobuf.UninterpretedOption.string_value"
+	UninterpretedOption_AggregateValue_field_fullname   protoreflect.FullName = "google.protobuf.UninterpretedOption.aggregate_value"
+)
+
+// Field numbers for google.protobuf.UninterpretedOption.
+const (
+	UninterpretedOption_Name_field_number             protoreflect.FieldNumber = 2
+	UninterpretedOption_IdentifierValue_field_number  protoreflect.FieldNumber = 3
+	UninterpretedOption_PositiveIntValue_field_number protoreflect.FieldNumber = 4
+	UninterpretedOption_NegativeIntValue_field_number protoreflect.FieldNumber = 5
+	UninterpretedOption_DoubleValue_field_number      protoreflect.FieldNumber = 6
+	UninterpretedOption_StringValue_field_number      protoreflect.FieldNumber = 7
+	UninterpretedOption_AggregateValue_field_number   protoreflect.FieldNumber = 8
+)
+
+// Names for google.protobuf.UninterpretedOption.NamePart.
+const (
+	UninterpretedOption_NamePart_message_name     protoreflect.Name     = "NamePart"
+	UninterpretedOption_NamePart_message_fullname protoreflect.FullName = "google.protobuf.UninterpretedOption.NamePart"
+)
+
+// Field names for google.protobuf.UninterpretedOption.NamePart.
+const (
+	UninterpretedOption_NamePart_NamePart_field_name    protoreflect.Name = "name_part"
+	UninterpretedOption_NamePart_IsExtension_field_name protoreflect.Name = "is_extension"
+
+	UninterpretedOption_NamePart_NamePart_field_fullname    protoreflect.FullName = "google.protobuf.UninterpretedOption.NamePart.name_part"
+	UninterpretedOption_NamePart_IsExtension_field_fullname protoreflect.FullName = "google.protobuf.UninterpretedOption.NamePart.is_extension"
+)
+
+// Field numbers for google.protobuf.UninterpretedOption.NamePart.
+const (
+	UninterpretedOption_NamePart_NamePart_field_number    protoreflect.FieldNumber = 1
+	UninterpretedOption_NamePart_IsExtension_field_number protoreflect.FieldNumber = 2
+)
+
+// Names for google.protobuf.SourceCodeInfo.
+const (
+	SourceCodeInfo_message_name     protoreflect.Name     = "SourceCodeInfo"
+	SourceCodeInfo_message_fullname protoreflect.FullName = "google.protobuf.SourceCodeInfo"
+)
+
+// Field names for google.protobuf.SourceCodeInfo.
+const (
+	SourceCodeInfo_Location_field_name protoreflect.Name = "location"
+
+	SourceCodeInfo_Location_field_fullname protoreflect.FullName = "google.protobuf.SourceCodeInfo.location"
+)
+
+// Field numbers for google.protobuf.SourceCodeInfo.
+const (
+	SourceCodeInfo_Location_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.SourceCodeInfo.Location.
+const (
+	SourceCodeInfo_Location_message_name     protoreflect.Name     = "Location"
+	SourceCodeInfo_Location_message_fullname protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location"
+)
+
+// Field names for google.protobuf.SourceCodeInfo.Location.
+const (
+	SourceCodeInfo_Location_Path_field_name                    protoreflect.Name = "path"
+	SourceCodeInfo_Location_Span_field_name                    protoreflect.Name = "span"
+	SourceCodeInfo_Location_LeadingComments_field_name         protoreflect.Name = "leading_comments"
+	SourceCodeInfo_Location_TrailingComments_field_name        protoreflect.Name = "trailing_comments"
+	SourceCodeInfo_Location_LeadingDetachedComments_field_name protoreflect.Name = "leading_detached_comments"
+
+	SourceCodeInfo_Location_Path_field_fullname                    protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location.path"
+	SourceCodeInfo_Location_Span_field_fullname                    protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location.span"
+	SourceCodeInfo_Location_LeadingComments_field_fullname         protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location.leading_comments"
+	SourceCodeInfo_Location_TrailingComments_field_fullname        protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location.trailing_comments"
+	SourceCodeInfo_Location_LeadingDetachedComments_field_fullname protoreflect.FullName = "google.protobuf.SourceCodeInfo.Location.leading_detached_comments"
+)
+
+// Field numbers for google.protobuf.SourceCodeInfo.Location.
+const (
+	SourceCodeInfo_Location_Path_field_number                    protoreflect.FieldNumber = 1
+	SourceCodeInfo_Location_Span_field_number                    protoreflect.FieldNumber = 2
+	SourceCodeInfo_Location_LeadingComments_field_number         protoreflect.FieldNumber = 3
+	SourceCodeInfo_Location_TrailingComments_field_number        protoreflect.FieldNumber = 4
+	SourceCodeInfo_Location_LeadingDetachedComments_field_number protoreflect.FieldNumber = 6
+)
+
+// Names for google.protobuf.GeneratedCodeInfo.
+const (
+	GeneratedCodeInfo_message_name     protoreflect.Name     = "GeneratedCodeInfo"
+	GeneratedCodeInfo_message_fullname protoreflect.FullName = "google.protobuf.GeneratedCodeInfo"
+)
+
+// Field names for google.protobuf.GeneratedCodeInfo.
+const (
+	GeneratedCodeInfo_Annotation_field_name protoreflect.Name = "annotation"
+
+	GeneratedCodeInfo_Annotation_field_fullname protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.annotation"
+)
+
+// Field numbers for google.protobuf.GeneratedCodeInfo.
+const (
+	GeneratedCodeInfo_Annotation_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.GeneratedCodeInfo.Annotation.
+const (
+	GeneratedCodeInfo_Annotation_message_name     protoreflect.Name     = "Annotation"
+	GeneratedCodeInfo_Annotation_message_fullname protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.Annotation"
+)
+
+// Field names for google.protobuf.GeneratedCodeInfo.Annotation.
+const (
+	GeneratedCodeInfo_Annotation_Path_field_name       protoreflect.Name = "path"
+	GeneratedCodeInfo_Annotation_SourceFile_field_name protoreflect.Name = "source_file"
+	GeneratedCodeInfo_Annotation_Begin_field_name      protoreflect.Name = "begin"
+	GeneratedCodeInfo_Annotation_End_field_name        protoreflect.Name = "end"
+
+	GeneratedCodeInfo_Annotation_Path_field_fullname       protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.Annotation.path"
+	GeneratedCodeInfo_Annotation_SourceFile_field_fullname protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.Annotation.source_file"
+	GeneratedCodeInfo_Annotation_Begin_field_fullname      protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.Annotation.begin"
+	GeneratedCodeInfo_Annotation_End_field_fullname        protoreflect.FullName = "google.protobuf.GeneratedCodeInfo.Annotation.end"
+)
+
+// Field numbers for google.protobuf.GeneratedCodeInfo.Annotation.
+const (
+	GeneratedCodeInfo_Annotation_Path_field_number       protoreflect.FieldNumber = 1
+	GeneratedCodeInfo_Annotation_SourceFile_field_number protoreflect.FieldNumber = 2
+	GeneratedCodeInfo_Annotation_Begin_field_number      protoreflect.FieldNumber = 3
+	GeneratedCodeInfo_Annotation_End_field_number        protoreflect.FieldNumber = 4
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/doc.go b/vendor/google.golang.org/protobuf/internal/genid/doc.go
new file mode 100644
index 0000000..45ccd01
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/doc.go
@@ -0,0 +1,11 @@
+// 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 genid contains constants for declarations in descriptor.proto
+// and the well-known types.
+package genid
+
+import protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+
+const GoogleProtobuf_package protoreflect.FullName = "google.protobuf"
diff --git a/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go b/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go
new file mode 100644
index 0000000..b070ef4
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go
@@ -0,0 +1,34 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_duration_proto = "google/protobuf/duration.proto"
+
+// Names for google.protobuf.Duration.
+const (
+	Duration_message_name     protoreflect.Name     = "Duration"
+	Duration_message_fullname protoreflect.FullName = "google.protobuf.Duration"
+)
+
+// Field names for google.protobuf.Duration.
+const (
+	Duration_Seconds_field_name protoreflect.Name = "seconds"
+	Duration_Nanos_field_name   protoreflect.Name = "nanos"
+
+	Duration_Seconds_field_fullname protoreflect.FullName = "google.protobuf.Duration.seconds"
+	Duration_Nanos_field_fullname   protoreflect.FullName = "google.protobuf.Duration.nanos"
+)
+
+// Field numbers for google.protobuf.Duration.
+const (
+	Duration_Seconds_field_number protoreflect.FieldNumber = 1
+	Duration_Nanos_field_number   protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go b/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go
new file mode 100644
index 0000000..762abb3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go
@@ -0,0 +1,19 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_empty_proto = "google/protobuf/empty.proto"
+
+// Names for google.protobuf.Empty.
+const (
+	Empty_message_name     protoreflect.Name     = "Empty"
+	Empty_message_fullname protoreflect.FullName = "google.protobuf.Empty"
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go b/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go
new file mode 100644
index 0000000..70bed45
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go
@@ -0,0 +1,31 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_field_mask_proto = "google/protobuf/field_mask.proto"
+
+// Names for google.protobuf.FieldMask.
+const (
+	FieldMask_message_name     protoreflect.Name     = "FieldMask"
+	FieldMask_message_fullname protoreflect.FullName = "google.protobuf.FieldMask"
+)
+
+// Field names for google.protobuf.FieldMask.
+const (
+	FieldMask_Paths_field_name protoreflect.Name = "paths"
+
+	FieldMask_Paths_field_fullname protoreflect.FullName = "google.protobuf.FieldMask.paths"
+)
+
+// Field numbers for google.protobuf.FieldMask.
+const (
+	FieldMask_Paths_field_number protoreflect.FieldNumber = 1
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/goname.go b/vendor/google.golang.org/protobuf/internal/genid/goname.go
new file mode 100644
index 0000000..693d2e9
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/goname.go
@@ -0,0 +1,25 @@
+// 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 genid
+
+// Go names of implementation-specific struct fields in generated messages.
+const (
+	State_goname = "state"
+
+	SizeCache_goname  = "sizeCache"
+	SizeCacheA_goname = "XXX_sizecache"
+
+	WeakFields_goname  = "weakFields"
+	WeakFieldsA_goname = "XXX_weak"
+
+	UnknownFields_goname  = "unknownFields"
+	UnknownFieldsA_goname = "XXX_unrecognized"
+
+	ExtensionFields_goname  = "extensionFields"
+	ExtensionFieldsA_goname = "XXX_InternalExtensions"
+	ExtensionFieldsB_goname = "XXX_extensions"
+
+	WeakFieldPrefix_goname = "XXX_weak_"
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/map_entry.go b/vendor/google.golang.org/protobuf/internal/genid/map_entry.go
new file mode 100644
index 0000000..8f9ea02
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/map_entry.go
@@ -0,0 +1,16 @@
+// 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 genid
+
+import protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+
+// Generic field names and numbers for synthetic map entry messages.
+const (
+	MapEntry_Key_field_name   protoreflect.Name = "key"
+	MapEntry_Value_field_name protoreflect.Name = "value"
+
+	MapEntry_Key_field_number   protoreflect.FieldNumber = 1
+	MapEntry_Value_field_number protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go b/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go
new file mode 100644
index 0000000..3e99ae1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go
@@ -0,0 +1,31 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_source_context_proto = "google/protobuf/source_context.proto"
+
+// Names for google.protobuf.SourceContext.
+const (
+	SourceContext_message_name     protoreflect.Name     = "SourceContext"
+	SourceContext_message_fullname protoreflect.FullName = "google.protobuf.SourceContext"
+)
+
+// Field names for google.protobuf.SourceContext.
+const (
+	SourceContext_FileName_field_name protoreflect.Name = "file_name"
+
+	SourceContext_FileName_field_fullname protoreflect.FullName = "google.protobuf.SourceContext.file_name"
+)
+
+// Field numbers for google.protobuf.SourceContext.
+const (
+	SourceContext_FileName_field_number protoreflect.FieldNumber = 1
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go b/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go
new file mode 100644
index 0000000..1a38944
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go
@@ -0,0 +1,116 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_struct_proto = "google/protobuf/struct.proto"
+
+// Full and short names for google.protobuf.NullValue.
+const (
+	NullValue_enum_fullname = "google.protobuf.NullValue"
+	NullValue_enum_name     = "NullValue"
+)
+
+// Names for google.protobuf.Struct.
+const (
+	Struct_message_name     protoreflect.Name     = "Struct"
+	Struct_message_fullname protoreflect.FullName = "google.protobuf.Struct"
+)
+
+// Field names for google.protobuf.Struct.
+const (
+	Struct_Fields_field_name protoreflect.Name = "fields"
+
+	Struct_Fields_field_fullname protoreflect.FullName = "google.protobuf.Struct.fields"
+)
+
+// Field numbers for google.protobuf.Struct.
+const (
+	Struct_Fields_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.Struct.FieldsEntry.
+const (
+	Struct_FieldsEntry_message_name     protoreflect.Name     = "FieldsEntry"
+	Struct_FieldsEntry_message_fullname protoreflect.FullName = "google.protobuf.Struct.FieldsEntry"
+)
+
+// Field names for google.protobuf.Struct.FieldsEntry.
+const (
+	Struct_FieldsEntry_Key_field_name   protoreflect.Name = "key"
+	Struct_FieldsEntry_Value_field_name protoreflect.Name = "value"
+
+	Struct_FieldsEntry_Key_field_fullname   protoreflect.FullName = "google.protobuf.Struct.FieldsEntry.key"
+	Struct_FieldsEntry_Value_field_fullname protoreflect.FullName = "google.protobuf.Struct.FieldsEntry.value"
+)
+
+// Field numbers for google.protobuf.Struct.FieldsEntry.
+const (
+	Struct_FieldsEntry_Key_field_number   protoreflect.FieldNumber = 1
+	Struct_FieldsEntry_Value_field_number protoreflect.FieldNumber = 2
+)
+
+// Names for google.protobuf.Value.
+const (
+	Value_message_name     protoreflect.Name     = "Value"
+	Value_message_fullname protoreflect.FullName = "google.protobuf.Value"
+)
+
+// Field names for google.protobuf.Value.
+const (
+	Value_NullValue_field_name   protoreflect.Name = "null_value"
+	Value_NumberValue_field_name protoreflect.Name = "number_value"
+	Value_StringValue_field_name protoreflect.Name = "string_value"
+	Value_BoolValue_field_name   protoreflect.Name = "bool_value"
+	Value_StructValue_field_name protoreflect.Name = "struct_value"
+	Value_ListValue_field_name   protoreflect.Name = "list_value"
+
+	Value_NullValue_field_fullname   protoreflect.FullName = "google.protobuf.Value.null_value"
+	Value_NumberValue_field_fullname protoreflect.FullName = "google.protobuf.Value.number_value"
+	Value_StringValue_field_fullname protoreflect.FullName = "google.protobuf.Value.string_value"
+	Value_BoolValue_field_fullname   protoreflect.FullName = "google.protobuf.Value.bool_value"
+	Value_StructValue_field_fullname protoreflect.FullName = "google.protobuf.Value.struct_value"
+	Value_ListValue_field_fullname   protoreflect.FullName = "google.protobuf.Value.list_value"
+)
+
+// Field numbers for google.protobuf.Value.
+const (
+	Value_NullValue_field_number   protoreflect.FieldNumber = 1
+	Value_NumberValue_field_number protoreflect.FieldNumber = 2
+	Value_StringValue_field_number protoreflect.FieldNumber = 3
+	Value_BoolValue_field_number   protoreflect.FieldNumber = 4
+	Value_StructValue_field_number protoreflect.FieldNumber = 5
+	Value_ListValue_field_number   protoreflect.FieldNumber = 6
+)
+
+// Oneof names for google.protobuf.Value.
+const (
+	Value_Kind_oneof_name protoreflect.Name = "kind"
+
+	Value_Kind_oneof_fullname protoreflect.FullName = "google.protobuf.Value.kind"
+)
+
+// Names for google.protobuf.ListValue.
+const (
+	ListValue_message_name     protoreflect.Name     = "ListValue"
+	ListValue_message_fullname protoreflect.FullName = "google.protobuf.ListValue"
+)
+
+// Field names for google.protobuf.ListValue.
+const (
+	ListValue_Values_field_name protoreflect.Name = "values"
+
+	ListValue_Values_field_fullname protoreflect.FullName = "google.protobuf.ListValue.values"
+)
+
+// Field numbers for google.protobuf.ListValue.
+const (
+	ListValue_Values_field_number protoreflect.FieldNumber = 1
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go b/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go
new file mode 100644
index 0000000..f5cd563
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go
@@ -0,0 +1,34 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_timestamp_proto = "google/protobuf/timestamp.proto"
+
+// Names for google.protobuf.Timestamp.
+const (
+	Timestamp_message_name     protoreflect.Name     = "Timestamp"
+	Timestamp_message_fullname protoreflect.FullName = "google.protobuf.Timestamp"
+)
+
+// Field names for google.protobuf.Timestamp.
+const (
+	Timestamp_Seconds_field_name protoreflect.Name = "seconds"
+	Timestamp_Nanos_field_name   protoreflect.Name = "nanos"
+
+	Timestamp_Seconds_field_fullname protoreflect.FullName = "google.protobuf.Timestamp.seconds"
+	Timestamp_Nanos_field_fullname   protoreflect.FullName = "google.protobuf.Timestamp.nanos"
+)
+
+// Field numbers for google.protobuf.Timestamp.
+const (
+	Timestamp_Seconds_field_number protoreflect.FieldNumber = 1
+	Timestamp_Nanos_field_number   protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/type_gen.go b/vendor/google.golang.org/protobuf/internal/genid/type_gen.go
new file mode 100644
index 0000000..3bc7101
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/type_gen.go
@@ -0,0 +1,184 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_type_proto = "google/protobuf/type.proto"
+
+// Full and short names for google.protobuf.Syntax.
+const (
+	Syntax_enum_fullname = "google.protobuf.Syntax"
+	Syntax_enum_name     = "Syntax"
+)
+
+// Names for google.protobuf.Type.
+const (
+	Type_message_name     protoreflect.Name     = "Type"
+	Type_message_fullname protoreflect.FullName = "google.protobuf.Type"
+)
+
+// Field names for google.protobuf.Type.
+const (
+	Type_Name_field_name          protoreflect.Name = "name"
+	Type_Fields_field_name        protoreflect.Name = "fields"
+	Type_Oneofs_field_name        protoreflect.Name = "oneofs"
+	Type_Options_field_name       protoreflect.Name = "options"
+	Type_SourceContext_field_name protoreflect.Name = "source_context"
+	Type_Syntax_field_name        protoreflect.Name = "syntax"
+
+	Type_Name_field_fullname          protoreflect.FullName = "google.protobuf.Type.name"
+	Type_Fields_field_fullname        protoreflect.FullName = "google.protobuf.Type.fields"
+	Type_Oneofs_field_fullname        protoreflect.FullName = "google.protobuf.Type.oneofs"
+	Type_Options_field_fullname       protoreflect.FullName = "google.protobuf.Type.options"
+	Type_SourceContext_field_fullname protoreflect.FullName = "google.protobuf.Type.source_context"
+	Type_Syntax_field_fullname        protoreflect.FullName = "google.protobuf.Type.syntax"
+)
+
+// Field numbers for google.protobuf.Type.
+const (
+	Type_Name_field_number          protoreflect.FieldNumber = 1
+	Type_Fields_field_number        protoreflect.FieldNumber = 2
+	Type_Oneofs_field_number        protoreflect.FieldNumber = 3
+	Type_Options_field_number       protoreflect.FieldNumber = 4
+	Type_SourceContext_field_number protoreflect.FieldNumber = 5
+	Type_Syntax_field_number        protoreflect.FieldNumber = 6
+)
+
+// Names for google.protobuf.Field.
+const (
+	Field_message_name     protoreflect.Name     = "Field"
+	Field_message_fullname protoreflect.FullName = "google.protobuf.Field"
+)
+
+// Field names for google.protobuf.Field.
+const (
+	Field_Kind_field_name         protoreflect.Name = "kind"
+	Field_Cardinality_field_name  protoreflect.Name = "cardinality"
+	Field_Number_field_name       protoreflect.Name = "number"
+	Field_Name_field_name         protoreflect.Name = "name"
+	Field_TypeUrl_field_name      protoreflect.Name = "type_url"
+	Field_OneofIndex_field_name   protoreflect.Name = "oneof_index"
+	Field_Packed_field_name       protoreflect.Name = "packed"
+	Field_Options_field_name      protoreflect.Name = "options"
+	Field_JsonName_field_name     protoreflect.Name = "json_name"
+	Field_DefaultValue_field_name protoreflect.Name = "default_value"
+
+	Field_Kind_field_fullname         protoreflect.FullName = "google.protobuf.Field.kind"
+	Field_Cardinality_field_fullname  protoreflect.FullName = "google.protobuf.Field.cardinality"
+	Field_Number_field_fullname       protoreflect.FullName = "google.protobuf.Field.number"
+	Field_Name_field_fullname         protoreflect.FullName = "google.protobuf.Field.name"
+	Field_TypeUrl_field_fullname      protoreflect.FullName = "google.protobuf.Field.type_url"
+	Field_OneofIndex_field_fullname   protoreflect.FullName = "google.protobuf.Field.oneof_index"
+	Field_Packed_field_fullname       protoreflect.FullName = "google.protobuf.Field.packed"
+	Field_Options_field_fullname      protoreflect.FullName = "google.protobuf.Field.options"
+	Field_JsonName_field_fullname     protoreflect.FullName = "google.protobuf.Field.json_name"
+	Field_DefaultValue_field_fullname protoreflect.FullName = "google.protobuf.Field.default_value"
+)
+
+// Field numbers for google.protobuf.Field.
+const (
+	Field_Kind_field_number         protoreflect.FieldNumber = 1
+	Field_Cardinality_field_number  protoreflect.FieldNumber = 2
+	Field_Number_field_number       protoreflect.FieldNumber = 3
+	Field_Name_field_number         protoreflect.FieldNumber = 4
+	Field_TypeUrl_field_number      protoreflect.FieldNumber = 6
+	Field_OneofIndex_field_number   protoreflect.FieldNumber = 7
+	Field_Packed_field_number       protoreflect.FieldNumber = 8
+	Field_Options_field_number      protoreflect.FieldNumber = 9
+	Field_JsonName_field_number     protoreflect.FieldNumber = 10
+	Field_DefaultValue_field_number protoreflect.FieldNumber = 11
+)
+
+// Full and short names for google.protobuf.Field.Kind.
+const (
+	Field_Kind_enum_fullname = "google.protobuf.Field.Kind"
+	Field_Kind_enum_name     = "Kind"
+)
+
+// Full and short names for google.protobuf.Field.Cardinality.
+const (
+	Field_Cardinality_enum_fullname = "google.protobuf.Field.Cardinality"
+	Field_Cardinality_enum_name     = "Cardinality"
+)
+
+// Names for google.protobuf.Enum.
+const (
+	Enum_message_name     protoreflect.Name     = "Enum"
+	Enum_message_fullname protoreflect.FullName = "google.protobuf.Enum"
+)
+
+// Field names for google.protobuf.Enum.
+const (
+	Enum_Name_field_name          protoreflect.Name = "name"
+	Enum_Enumvalue_field_name     protoreflect.Name = "enumvalue"
+	Enum_Options_field_name       protoreflect.Name = "options"
+	Enum_SourceContext_field_name protoreflect.Name = "source_context"
+	Enum_Syntax_field_name        protoreflect.Name = "syntax"
+
+	Enum_Name_field_fullname          protoreflect.FullName = "google.protobuf.Enum.name"
+	Enum_Enumvalue_field_fullname     protoreflect.FullName = "google.protobuf.Enum.enumvalue"
+	Enum_Options_field_fullname       protoreflect.FullName = "google.protobuf.Enum.options"
+	Enum_SourceContext_field_fullname protoreflect.FullName = "google.protobuf.Enum.source_context"
+	Enum_Syntax_field_fullname        protoreflect.FullName = "google.protobuf.Enum.syntax"
+)
+
+// Field numbers for google.protobuf.Enum.
+const (
+	Enum_Name_field_number          protoreflect.FieldNumber = 1
+	Enum_Enumvalue_field_number     protoreflect.FieldNumber = 2
+	Enum_Options_field_number       protoreflect.FieldNumber = 3
+	Enum_SourceContext_field_number protoreflect.FieldNumber = 4
+	Enum_Syntax_field_number        protoreflect.FieldNumber = 5
+)
+
+// Names for google.protobuf.EnumValue.
+const (
+	EnumValue_message_name     protoreflect.Name     = "EnumValue"
+	EnumValue_message_fullname protoreflect.FullName = "google.protobuf.EnumValue"
+)
+
+// Field names for google.protobuf.EnumValue.
+const (
+	EnumValue_Name_field_name    protoreflect.Name = "name"
+	EnumValue_Number_field_name  protoreflect.Name = "number"
+	EnumValue_Options_field_name protoreflect.Name = "options"
+
+	EnumValue_Name_field_fullname    protoreflect.FullName = "google.protobuf.EnumValue.name"
+	EnumValue_Number_field_fullname  protoreflect.FullName = "google.protobuf.EnumValue.number"
+	EnumValue_Options_field_fullname protoreflect.FullName = "google.protobuf.EnumValue.options"
+)
+
+// Field numbers for google.protobuf.EnumValue.
+const (
+	EnumValue_Name_field_number    protoreflect.FieldNumber = 1
+	EnumValue_Number_field_number  protoreflect.FieldNumber = 2
+	EnumValue_Options_field_number protoreflect.FieldNumber = 3
+)
+
+// Names for google.protobuf.Option.
+const (
+	Option_message_name     protoreflect.Name     = "Option"
+	Option_message_fullname protoreflect.FullName = "google.protobuf.Option"
+)
+
+// Field names for google.protobuf.Option.
+const (
+	Option_Name_field_name  protoreflect.Name = "name"
+	Option_Value_field_name protoreflect.Name = "value"
+
+	Option_Name_field_fullname  protoreflect.FullName = "google.protobuf.Option.name"
+	Option_Value_field_fullname protoreflect.FullName = "google.protobuf.Option.value"
+)
+
+// Field numbers for google.protobuf.Option.
+const (
+	Option_Name_field_number  protoreflect.FieldNumber = 1
+	Option_Value_field_number protoreflect.FieldNumber = 2
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/wrappers.go b/vendor/google.golang.org/protobuf/internal/genid/wrappers.go
new file mode 100644
index 0000000..429384b
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/wrappers.go
@@ -0,0 +1,13 @@
+// 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 genid
+
+import protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+
+// Generic field name and number for messages in wrappers.proto.
+const (
+	WrapperValue_Value_field_name   protoreflect.Name        = "value"
+	WrapperValue_Value_field_number protoreflect.FieldNumber = 1
+)
diff --git a/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go b/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go
new file mode 100644
index 0000000..72527d2
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go
@@ -0,0 +1,175 @@
+// 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.
+
+// Code generated by generate-protos. DO NOT EDIT.
+
+package genid
+
+import (
+	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+const File_google_protobuf_wrappers_proto = "google/protobuf/wrappers.proto"
+
+// Names for google.protobuf.DoubleValue.
+const (
+	DoubleValue_message_name     protoreflect.Name     = "DoubleValue"
+	DoubleValue_message_fullname protoreflect.FullName = "google.protobuf.DoubleValue"
+)
+
+// Field names for google.protobuf.DoubleValue.
+const (
+	DoubleValue_Value_field_name protoreflect.Name = "value"
+
+	DoubleValue_Value_field_fullname protoreflect.FullName = "google.protobuf.DoubleValue.value"
+)
+
+// Field numbers for google.protobuf.DoubleValue.
+const (
+	DoubleValue_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.FloatValue.
+const (
+	FloatValue_message_name     protoreflect.Name     = "FloatValue"
+	FloatValue_message_fullname protoreflect.FullName = "google.protobuf.FloatValue"
+)
+
+// Field names for google.protobuf.FloatValue.
+const (
+	FloatValue_Value_field_name protoreflect.Name = "value"
+
+	FloatValue_Value_field_fullname protoreflect.FullName = "google.protobuf.FloatValue.value"
+)
+
+// Field numbers for google.protobuf.FloatValue.
+const (
+	FloatValue_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.Int64Value.
+const (
+	Int64Value_message_name     protoreflect.Name     = "Int64Value"
+	Int64Value_message_fullname protoreflect.FullName = "google.protobuf.Int64Value"
+)
+
+// Field names for google.protobuf.Int64Value.
+const (
+	Int64Value_Value_field_name protoreflect.Name = "value"
+
+	Int64Value_Value_field_fullname protoreflect.FullName = "google.protobuf.Int64Value.value"
+)
+
+// Field numbers for google.protobuf.Int64Value.
+const (
+	Int64Value_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.UInt64Value.
+const (
+	UInt64Value_message_name     protoreflect.Name     = "UInt64Value"
+	UInt64Value_message_fullname protoreflect.FullName = "google.protobuf.UInt64Value"
+)
+
+// Field names for google.protobuf.UInt64Value.
+const (
+	UInt64Value_Value_field_name protoreflect.Name = "value"
+
+	UInt64Value_Value_field_fullname protoreflect.FullName = "google.protobuf.UInt64Value.value"
+)
+
+// Field numbers for google.protobuf.UInt64Value.
+const (
+	UInt64Value_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.Int32Value.
+const (
+	Int32Value_message_name     protoreflect.Name     = "Int32Value"
+	Int32Value_message_fullname protoreflect.FullName = "google.protobuf.Int32Value"
+)
+
+// Field names for google.protobuf.Int32Value.
+const (
+	Int32Value_Value_field_name protoreflect.Name = "value"
+
+	Int32Value_Value_field_fullname protoreflect.FullName = "google.protobuf.Int32Value.value"
+)
+
+// Field numbers for google.protobuf.Int32Value.
+const (
+	Int32Value_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.UInt32Value.
+const (
+	UInt32Value_message_name     protoreflect.Name     = "UInt32Value"
+	UInt32Value_message_fullname protoreflect.FullName = "google.protobuf.UInt32Value"
+)
+
+// Field names for google.protobuf.UInt32Value.
+const (
+	UInt32Value_Value_field_name protoreflect.Name = "value"
+
+	UInt32Value_Value_field_fullname protoreflect.FullName = "google.protobuf.UInt32Value.value"
+)
+
+// Field numbers for google.protobuf.UInt32Value.
+const (
+	UInt32Value_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.BoolValue.
+const (
+	BoolValue_message_name     protoreflect.Name     = "BoolValue"
+	BoolValue_message_fullname protoreflect.FullName = "google.protobuf.BoolValue"
+)
+
+// Field names for google.protobuf.BoolValue.
+const (
+	BoolValue_Value_field_name protoreflect.Name = "value"
+
+	BoolValue_Value_field_fullname protoreflect.FullName = "google.protobuf.BoolValue.value"
+)
+
+// Field numbers for google.protobuf.BoolValue.
+const (
+	BoolValue_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.StringValue.
+const (
+	StringValue_message_name     protoreflect.Name     = "StringValue"
+	StringValue_message_fullname protoreflect.FullName = "google.protobuf.StringValue"
+)
+
+// Field names for google.protobuf.StringValue.
+const (
+	StringValue_Value_field_name protoreflect.Name = "value"
+
+	StringValue_Value_field_fullname protoreflect.FullName = "google.protobuf.StringValue.value"
+)
+
+// Field numbers for google.protobuf.StringValue.
+const (
+	StringValue_Value_field_number protoreflect.FieldNumber = 1
+)
+
+// Names for google.protobuf.BytesValue.
+const (
+	BytesValue_message_name     protoreflect.Name     = "BytesValue"
+	BytesValue_message_fullname protoreflect.FullName = "google.protobuf.BytesValue"
+)
+
+// Field names for google.protobuf.BytesValue.
+const (
+	BytesValue_Value_field_name protoreflect.Name = "value"
+
+	BytesValue_Value_field_fullname protoreflect.FullName = "google.protobuf.BytesValue.value"
+)
+
+// Field numbers for google.protobuf.BytesValue.
+const (
+	BytesValue_Value_field_number protoreflect.FieldNumber = 1
+)
diff --git a/vendor/google.golang.org/protobuf/internal/impl/api_export.go b/vendor/google.golang.org/protobuf/internal/impl/api_export.go
new file mode 100644
index 0000000..b597452
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/api_export.go
@@ -0,0 +1,177 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+	"strconv"
+
+	"google.golang.org/protobuf/encoding/prototext"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// Export is a zero-length named type that exists only to export a set of
+// functions that we do not want to appear in godoc.
+type Export struct{}
+
+// NewError formats a string according to the format specifier and arguments and
+// returns an error that has a "proto" prefix.
+func (Export) NewError(f string, x ...interface{}) error {
+	return errors.New(f, x...)
+}
+
+// enum is any enum type generated by protoc-gen-go
+// and must be a named int32 type.
+type enum = interface{}
+
+// EnumOf returns the protoreflect.Enum interface over e.
+// It returns nil if e is nil.
+func (Export) EnumOf(e enum) pref.Enum {
+	switch e := e.(type) {
+	case nil:
+		return nil
+	case pref.Enum:
+		return e
+	default:
+		return legacyWrapEnum(reflect.ValueOf(e))
+	}
+}
+
+// EnumDescriptorOf returns the protoreflect.EnumDescriptor for e.
+// It returns nil if e is nil.
+func (Export) EnumDescriptorOf(e enum) pref.EnumDescriptor {
+	switch e := e.(type) {
+	case nil:
+		return nil
+	case pref.Enum:
+		return e.Descriptor()
+	default:
+		return LegacyLoadEnumDesc(reflect.TypeOf(e))
+	}
+}
+
+// EnumTypeOf returns the protoreflect.EnumType for e.
+// It returns nil if e is nil.
+func (Export) EnumTypeOf(e enum) pref.EnumType {
+	switch e := e.(type) {
+	case nil:
+		return nil
+	case pref.Enum:
+		return e.Type()
+	default:
+		return legacyLoadEnumType(reflect.TypeOf(e))
+	}
+}
+
+// EnumStringOf returns the enum value as a string, either as the name if
+// the number is resolvable, or the number formatted as a string.
+func (Export) EnumStringOf(ed pref.EnumDescriptor, n pref.EnumNumber) string {
+	ev := ed.Values().ByNumber(n)
+	if ev != nil {
+		return string(ev.Name())
+	}
+	return strconv.Itoa(int(n))
+}
+
+// message is any message type generated by protoc-gen-go
+// and must be a pointer to a named struct type.
+type message = interface{}
+
+// legacyMessageWrapper wraps a v2 message as a v1 message.
+type legacyMessageWrapper struct{ m pref.ProtoMessage }
+
+func (m legacyMessageWrapper) Reset()         { proto.Reset(m.m) }
+func (m legacyMessageWrapper) String() string { return Export{}.MessageStringOf(m.m) }
+func (m legacyMessageWrapper) ProtoMessage()  {}
+
+// ProtoMessageV1Of converts either a v1 or v2 message to a v1 message.
+// It returns nil if m is nil.
+func (Export) ProtoMessageV1Of(m message) piface.MessageV1 {
+	switch mv := m.(type) {
+	case nil:
+		return nil
+	case piface.MessageV1:
+		return mv
+	case unwrapper:
+		return Export{}.ProtoMessageV1Of(mv.protoUnwrap())
+	case pref.ProtoMessage:
+		return legacyMessageWrapper{mv}
+	default:
+		panic(fmt.Sprintf("message %T is neither a v1 or v2 Message", m))
+	}
+}
+
+func (Export) protoMessageV2Of(m message) pref.ProtoMessage {
+	switch mv := m.(type) {
+	case nil:
+		return nil
+	case pref.ProtoMessage:
+		return mv
+	case legacyMessageWrapper:
+		return mv.m
+	case piface.MessageV1:
+		return nil
+	default:
+		panic(fmt.Sprintf("message %T is neither a v1 or v2 Message", m))
+	}
+}
+
+// ProtoMessageV2Of converts either a v1 or v2 message to a v2 message.
+// It returns nil if m is nil.
+func (Export) ProtoMessageV2Of(m message) pref.ProtoMessage {
+	if m == nil {
+		return nil
+	}
+	if mv := (Export{}).protoMessageV2Of(m); mv != nil {
+		return mv
+	}
+	return legacyWrapMessage(reflect.ValueOf(m)).Interface()
+}
+
+// MessageOf returns the protoreflect.Message interface over m.
+// It returns nil if m is nil.
+func (Export) MessageOf(m message) pref.Message {
+	if m == nil {
+		return nil
+	}
+	if mv := (Export{}).protoMessageV2Of(m); mv != nil {
+		return mv.ProtoReflect()
+	}
+	return legacyWrapMessage(reflect.ValueOf(m))
+}
+
+// MessageDescriptorOf returns the protoreflect.MessageDescriptor for m.
+// It returns nil if m is nil.
+func (Export) MessageDescriptorOf(m message) pref.MessageDescriptor {
+	if m == nil {
+		return nil
+	}
+	if mv := (Export{}).protoMessageV2Of(m); mv != nil {
+		return mv.ProtoReflect().Descriptor()
+	}
+	return LegacyLoadMessageDesc(reflect.TypeOf(m))
+}
+
+// MessageTypeOf returns the protoreflect.MessageType for m.
+// It returns nil if m is nil.
+func (Export) MessageTypeOf(m message) pref.MessageType {
+	if m == nil {
+		return nil
+	}
+	if mv := (Export{}).protoMessageV2Of(m); mv != nil {
+		return mv.ProtoReflect().Type()
+	}
+	return legacyLoadMessageInfo(reflect.TypeOf(m), "")
+}
+
+// MessageStringOf returns the message value as a string,
+// which is the message serialized in the protobuf text format.
+func (Export) MessageStringOf(m pref.ProtoMessage) string {
+	return prototext.MarshalOptions{Multiline: false}.Format(m)
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/checkinit.go b/vendor/google.golang.org/protobuf/internal/impl/checkinit.go
new file mode 100644
index 0000000..b82341e
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/checkinit.go
@@ -0,0 +1,141 @@
+// 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 impl
+
+import (
+	"sync"
+
+	"google.golang.org/protobuf/internal/errors"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+func (mi *MessageInfo) checkInitialized(in piface.CheckInitializedInput) (piface.CheckInitializedOutput, error) {
+	var p pointer
+	if ms, ok := in.Message.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = in.Message.(*messageReflectWrapper).pointer()
+	}
+	return piface.CheckInitializedOutput{}, mi.checkInitializedPointer(p)
+}
+
+func (mi *MessageInfo) checkInitializedPointer(p pointer) error {
+	mi.init()
+	if !mi.needsInitCheck {
+		return nil
+	}
+	if p.IsNil() {
+		for _, f := range mi.orderedCoderFields {
+			if f.isRequired {
+				return errors.RequiredNotSet(string(mi.Desc.Fields().ByNumber(f.num).FullName()))
+			}
+		}
+		return nil
+	}
+	if mi.extensionOffset.IsValid() {
+		e := p.Apply(mi.extensionOffset).Extensions()
+		if err := mi.isInitExtensions(e); err != nil {
+			return err
+		}
+	}
+	for _, f := range mi.orderedCoderFields {
+		if !f.isRequired && f.funcs.isInit == nil {
+			continue
+		}
+		fptr := p.Apply(f.offset)
+		if f.isPointer && fptr.Elem().IsNil() {
+			if f.isRequired {
+				return errors.RequiredNotSet(string(mi.Desc.Fields().ByNumber(f.num).FullName()))
+			}
+			continue
+		}
+		if f.funcs.isInit == nil {
+			continue
+		}
+		if err := f.funcs.isInit(fptr, f); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+func (mi *MessageInfo) isInitExtensions(ext *map[int32]ExtensionField) error {
+	if ext == nil {
+		return nil
+	}
+	for _, x := range *ext {
+		ei := getExtensionFieldInfo(x.Type())
+		if ei.funcs.isInit == nil {
+			continue
+		}
+		v := x.Value()
+		if !v.IsValid() {
+			continue
+		}
+		if err := ei.funcs.isInit(v); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+var (
+	needsInitCheckMu  sync.Mutex
+	needsInitCheckMap sync.Map
+)
+
+// needsInitCheck reports whether a message needs to be checked for partial initialization.
+//
+// It returns true if the message transitively includes any required or extension fields.
+func needsInitCheck(md pref.MessageDescriptor) bool {
+	if v, ok := needsInitCheckMap.Load(md); ok {
+		if has, ok := v.(bool); ok {
+			return has
+		}
+	}
+	needsInitCheckMu.Lock()
+	defer needsInitCheckMu.Unlock()
+	return needsInitCheckLocked(md)
+}
+
+func needsInitCheckLocked(md pref.MessageDescriptor) (has bool) {
+	if v, ok := needsInitCheckMap.Load(md); ok {
+		// If has is true, we've previously determined that this message
+		// needs init checks.
+		//
+		// If has is false, we've previously determined that it can never
+		// be uninitialized.
+		//
+		// If has is not a bool, we've just encountered a cycle in the
+		// message graph. In this case, it is safe to return false: If
+		// the message does have required fields, we'll detect them later
+		// in the graph traversal.
+		has, ok := v.(bool)
+		return ok && has
+	}
+	needsInitCheckMap.Store(md, struct{}{}) // avoid cycles while descending into this message
+	defer func() {
+		needsInitCheckMap.Store(md, has)
+	}()
+	if md.RequiredNumbers().Len() > 0 {
+		return true
+	}
+	if md.ExtensionRanges().Len() > 0 {
+		return true
+	}
+	for i := 0; i < md.Fields().Len(); i++ {
+		fd := md.Fields().Get(i)
+		// Map keys are never messages, so just consider the map value.
+		if fd.IsMap() {
+			fd = fd.MapValue()
+		}
+		fmd := fd.Message()
+		if fmd != nil && needsInitCheckLocked(fmd) {
+			return true
+		}
+	}
+	return false
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go b/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go
new file mode 100644
index 0000000..08d3517
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go
@@ -0,0 +1,223 @@
+// 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 impl
+
+import (
+	"sync"
+	"sync/atomic"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/errors"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type extensionFieldInfo struct {
+	wiretag             uint64
+	tagsize             int
+	unmarshalNeedsValue bool
+	funcs               valueCoderFuncs
+	validation          validationInfo
+}
+
+var legacyExtensionFieldInfoCache sync.Map // map[protoreflect.ExtensionType]*extensionFieldInfo
+
+func getExtensionFieldInfo(xt pref.ExtensionType) *extensionFieldInfo {
+	if xi, ok := xt.(*ExtensionInfo); ok {
+		xi.lazyInit()
+		return xi.info
+	}
+	return legacyLoadExtensionFieldInfo(xt)
+}
+
+// legacyLoadExtensionFieldInfo dynamically loads a *ExtensionInfo for xt.
+func legacyLoadExtensionFieldInfo(xt pref.ExtensionType) *extensionFieldInfo {
+	if xi, ok := legacyExtensionFieldInfoCache.Load(xt); ok {
+		return xi.(*extensionFieldInfo)
+	}
+	e := makeExtensionFieldInfo(xt.TypeDescriptor())
+	if e, ok := legacyMessageTypeCache.LoadOrStore(xt, e); ok {
+		return e.(*extensionFieldInfo)
+	}
+	return e
+}
+
+func makeExtensionFieldInfo(xd pref.ExtensionDescriptor) *extensionFieldInfo {
+	var wiretag uint64
+	if !xd.IsPacked() {
+		wiretag = protowire.EncodeTag(xd.Number(), wireTypes[xd.Kind()])
+	} else {
+		wiretag = protowire.EncodeTag(xd.Number(), protowire.BytesType)
+	}
+	e := &extensionFieldInfo{
+		wiretag: wiretag,
+		tagsize: protowire.SizeVarint(wiretag),
+		funcs:   encoderFuncsForValue(xd),
+	}
+	// Does the unmarshal function need a value passed to it?
+	// This is true for composite types, where we pass in a message, list, or map to fill in,
+	// and for enums, where we pass in a prototype value to specify the concrete enum type.
+	switch xd.Kind() {
+	case pref.MessageKind, pref.GroupKind, pref.EnumKind:
+		e.unmarshalNeedsValue = true
+	default:
+		if xd.Cardinality() == pref.Repeated {
+			e.unmarshalNeedsValue = true
+		}
+	}
+	return e
+}
+
+type lazyExtensionValue struct {
+	atomicOnce uint32 // atomically set if value is valid
+	mu         sync.Mutex
+	xi         *extensionFieldInfo
+	value      pref.Value
+	b          []byte
+	fn         func() pref.Value
+}
+
+type ExtensionField struct {
+	typ pref.ExtensionType
+
+	// value is either the value of GetValue,
+	// or a *lazyExtensionValue that then returns the value of GetValue.
+	value pref.Value
+	lazy  *lazyExtensionValue
+}
+
+func (f *ExtensionField) appendLazyBytes(xt pref.ExtensionType, xi *extensionFieldInfo, num protowire.Number, wtyp protowire.Type, b []byte) {
+	if f.lazy == nil {
+		f.lazy = &lazyExtensionValue{xi: xi}
+	}
+	f.typ = xt
+	f.lazy.xi = xi
+	f.lazy.b = protowire.AppendTag(f.lazy.b, num, wtyp)
+	f.lazy.b = append(f.lazy.b, b...)
+}
+
+func (f *ExtensionField) canLazy(xt pref.ExtensionType) bool {
+	if f.typ == nil {
+		return true
+	}
+	if f.typ == xt && f.lazy != nil && atomic.LoadUint32(&f.lazy.atomicOnce) == 0 {
+		return true
+	}
+	return false
+}
+
+func (f *ExtensionField) lazyInit() {
+	f.lazy.mu.Lock()
+	defer f.lazy.mu.Unlock()
+	if atomic.LoadUint32(&f.lazy.atomicOnce) == 1 {
+		return
+	}
+	if f.lazy.xi != nil {
+		b := f.lazy.b
+		val := f.typ.New()
+		for len(b) > 0 {
+			var tag uint64
+			if b[0] < 0x80 {
+				tag = uint64(b[0])
+				b = b[1:]
+			} else if len(b) >= 2 && b[1] < 128 {
+				tag = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				b = b[2:]
+			} else {
+				var n int
+				tag, n = protowire.ConsumeVarint(b)
+				if n < 0 {
+					panic(errors.New("bad tag in lazy extension decoding"))
+				}
+				b = b[n:]
+			}
+			num := protowire.Number(tag >> 3)
+			wtyp := protowire.Type(tag & 7)
+			var out unmarshalOutput
+			var err error
+			val, out, err = f.lazy.xi.funcs.unmarshal(b, val, num, wtyp, lazyUnmarshalOptions)
+			if err != nil {
+				panic(errors.New("decode failure in lazy extension decoding: %v", err))
+			}
+			b = b[out.n:]
+		}
+		f.lazy.value = val
+	} else {
+		f.lazy.value = f.lazy.fn()
+	}
+	f.lazy.xi = nil
+	f.lazy.fn = nil
+	f.lazy.b = nil
+	atomic.StoreUint32(&f.lazy.atomicOnce, 1)
+}
+
+// Set sets the type and value of the extension field.
+// This must not be called concurrently.
+func (f *ExtensionField) Set(t pref.ExtensionType, v pref.Value) {
+	f.typ = t
+	f.value = v
+	f.lazy = nil
+}
+
+// SetLazy sets the type and a value that is to be lazily evaluated upon first use.
+// This must not be called concurrently.
+func (f *ExtensionField) SetLazy(t pref.ExtensionType, fn func() pref.Value) {
+	f.typ = t
+	f.lazy = &lazyExtensionValue{fn: fn}
+}
+
+// Value returns the value of the extension field.
+// This may be called concurrently.
+func (f *ExtensionField) Value() pref.Value {
+	if f.lazy != nil {
+		if atomic.LoadUint32(&f.lazy.atomicOnce) == 0 {
+			f.lazyInit()
+		}
+		return f.lazy.value
+	}
+	return f.value
+}
+
+// Type returns the type of the extension field.
+// This may be called concurrently.
+func (f ExtensionField) Type() pref.ExtensionType {
+	return f.typ
+}
+
+// IsSet returns whether the extension field is set.
+// This may be called concurrently.
+func (f ExtensionField) IsSet() bool {
+	return f.typ != nil
+}
+
+// IsLazy reports whether a field is lazily encoded.
+// It is exported for testing.
+func IsLazy(m pref.Message, fd pref.FieldDescriptor) bool {
+	var mi *MessageInfo
+	var p pointer
+	switch m := m.(type) {
+	case *messageState:
+		mi = m.messageInfo()
+		p = m.pointer()
+	case *messageReflectWrapper:
+		mi = m.messageInfo()
+		p = m.pointer()
+	default:
+		return false
+	}
+	xd, ok := fd.(pref.ExtensionTypeDescriptor)
+	if !ok {
+		return false
+	}
+	xt := xd.Type()
+	ext := mi.extensionMap(p)
+	if ext == nil {
+		return false
+	}
+	f, ok := (*ext)[int32(fd.Number())]
+	if !ok {
+		return false
+	}
+	return f.typ == xt && f.lazy != nil && atomic.LoadUint32(&f.lazy.atomicOnce) == 0
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_field.go b/vendor/google.golang.org/protobuf/internal/impl/codec_field.go
new file mode 100644
index 0000000..c00744d
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_field.go
@@ -0,0 +1,828 @@
+// 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 impl
+
+import (
+	"fmt"
+	"reflect"
+	"sync"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+type errInvalidUTF8 struct{}
+
+func (errInvalidUTF8) Error() string     { return "string field contains invalid UTF-8" }
+func (errInvalidUTF8) InvalidUTF8() bool { return true }
+
+// initOneofFieldCoders initializes the fast-path functions for the fields in a oneof.
+//
+// For size, marshal, and isInit operations, functions are set only on the first field
+// in the oneof. The functions are called when the oneof is non-nil, and will dispatch
+// to the appropriate field-specific function as necessary.
+//
+// The unmarshal function is set on each field individually as usual.
+func (mi *MessageInfo) initOneofFieldCoders(od pref.OneofDescriptor, si structInfo) {
+	fs := si.oneofsByName[od.Name()]
+	ft := fs.Type
+	oneofFields := make(map[reflect.Type]*coderFieldInfo)
+	needIsInit := false
+	fields := od.Fields()
+	for i, lim := 0, fields.Len(); i < lim; i++ {
+		fd := od.Fields().Get(i)
+		num := fd.Number()
+		// Make a copy of the original coderFieldInfo for use in unmarshaling.
+		//
+		// oneofFields[oneofType].funcs.marshal is the field-specific marshal function.
+		//
+		// mi.coderFields[num].marshal is set on only the first field in the oneof,
+		// and dispatches to the field-specific marshaler in oneofFields.
+		cf := *mi.coderFields[num]
+		ot := si.oneofWrappersByNumber[num]
+		cf.ft = ot.Field(0).Type
+		cf.mi, cf.funcs = fieldCoder(fd, cf.ft)
+		oneofFields[ot] = &cf
+		if cf.funcs.isInit != nil {
+			needIsInit = true
+		}
+		mi.coderFields[num].funcs.unmarshal = func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+			var vw reflect.Value         // pointer to wrapper type
+			vi := p.AsValueOf(ft).Elem() // oneof field value of interface kind
+			if !vi.IsNil() && !vi.Elem().IsNil() && vi.Elem().Elem().Type() == ot {
+				vw = vi.Elem()
+			} else {
+				vw = reflect.New(ot)
+			}
+			out, err := cf.funcs.unmarshal(b, pointerOfValue(vw).Apply(zeroOffset), wtyp, &cf, opts)
+			if err != nil {
+				return out, err
+			}
+			vi.Set(vw)
+			return out, nil
+		}
+	}
+	getInfo := func(p pointer) (pointer, *coderFieldInfo) {
+		v := p.AsValueOf(ft).Elem()
+		if v.IsNil() {
+			return pointer{}, nil
+		}
+		v = v.Elem() // interface -> *struct
+		if v.IsNil() {
+			return pointer{}, nil
+		}
+		return pointerOfValue(v).Apply(zeroOffset), oneofFields[v.Elem().Type()]
+	}
+	first := mi.coderFields[od.Fields().Get(0).Number()]
+	first.funcs.size = func(p pointer, _ *coderFieldInfo, opts marshalOptions) int {
+		p, info := getInfo(p)
+		if info == nil || info.funcs.size == nil {
+			return 0
+		}
+		return info.funcs.size(p, info, opts)
+	}
+	first.funcs.marshal = func(b []byte, p pointer, _ *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+		p, info := getInfo(p)
+		if info == nil || info.funcs.marshal == nil {
+			return b, nil
+		}
+		return info.funcs.marshal(b, p, info, opts)
+	}
+	first.funcs.merge = func(dst, src pointer, _ *coderFieldInfo, opts mergeOptions) {
+		srcp, srcinfo := getInfo(src)
+		if srcinfo == nil || srcinfo.funcs.merge == nil {
+			return
+		}
+		dstp, dstinfo := getInfo(dst)
+		if dstinfo != srcinfo {
+			dst.AsValueOf(ft).Elem().Set(reflect.New(src.AsValueOf(ft).Elem().Elem().Elem().Type()))
+			dstp = pointerOfValue(dst.AsValueOf(ft).Elem().Elem()).Apply(zeroOffset)
+		}
+		srcinfo.funcs.merge(dstp, srcp, srcinfo, opts)
+	}
+	if needIsInit {
+		first.funcs.isInit = func(p pointer, _ *coderFieldInfo) error {
+			p, info := getInfo(p)
+			if info == nil || info.funcs.isInit == nil {
+				return nil
+			}
+			return info.funcs.isInit(p, info)
+		}
+	}
+}
+
+func makeWeakMessageFieldCoder(fd pref.FieldDescriptor) pointerCoderFuncs {
+	var once sync.Once
+	var messageType pref.MessageType
+	lazyInit := func() {
+		once.Do(func() {
+			messageName := fd.Message().FullName()
+			messageType, _ = preg.GlobalTypes.FindMessageByName(messageName)
+		})
+	}
+
+	return pointerCoderFuncs{
+		size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+			m, ok := p.WeakFields().get(f.num)
+			if !ok {
+				return 0
+			}
+			lazyInit()
+			if messageType == nil {
+				panic(fmt.Sprintf("weak message %v is not linked in", fd.Message().FullName()))
+			}
+			return sizeMessage(m, f.tagsize, opts)
+		},
+		marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+			m, ok := p.WeakFields().get(f.num)
+			if !ok {
+				return b, nil
+			}
+			lazyInit()
+			if messageType == nil {
+				panic(fmt.Sprintf("weak message %v is not linked in", fd.Message().FullName()))
+			}
+			return appendMessage(b, m, f.wiretag, opts)
+		},
+		unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+			fs := p.WeakFields()
+			m, ok := fs.get(f.num)
+			if !ok {
+				lazyInit()
+				if messageType == nil {
+					return unmarshalOutput{}, errUnknown
+				}
+				m = messageType.New().Interface()
+				fs.set(f.num, m)
+			}
+			return consumeMessage(b, m, wtyp, opts)
+		},
+		isInit: func(p pointer, f *coderFieldInfo) error {
+			m, ok := p.WeakFields().get(f.num)
+			if !ok {
+				return nil
+			}
+			return proto.CheckInitialized(m)
+		},
+		merge: func(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+			sm, ok := src.WeakFields().get(f.num)
+			if !ok {
+				return
+			}
+			dm, ok := dst.WeakFields().get(f.num)
+			if !ok {
+				lazyInit()
+				if messageType == nil {
+					panic(fmt.Sprintf("weak message %v is not linked in", fd.Message().FullName()))
+				}
+				dm = messageType.New().Interface()
+				dst.WeakFields().set(f.num, dm)
+			}
+			opts.Merge(dm, sm)
+		},
+	}
+}
+
+func makeMessageFieldCoder(fd pref.FieldDescriptor, ft reflect.Type) pointerCoderFuncs {
+	if mi := getMessageInfo(ft); mi != nil {
+		funcs := pointerCoderFuncs{
+			size:      sizeMessageInfo,
+			marshal:   appendMessageInfo,
+			unmarshal: consumeMessageInfo,
+			merge:     mergeMessage,
+		}
+		if needsInitCheck(mi.Desc) {
+			funcs.isInit = isInitMessageInfo
+		}
+		return funcs
+	} else {
+		return pointerCoderFuncs{
+			size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return sizeMessage(m, f.tagsize, opts)
+			},
+			marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return appendMessage(b, m, f.wiretag, opts)
+			},
+			unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+				mp := p.AsValueOf(ft).Elem()
+				if mp.IsNil() {
+					mp.Set(reflect.New(ft.Elem()))
+				}
+				return consumeMessage(b, asMessage(mp), wtyp, opts)
+			},
+			isInit: func(p pointer, f *coderFieldInfo) error {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return proto.CheckInitialized(m)
+			},
+			merge: mergeMessage,
+		}
+	}
+}
+
+func sizeMessageInfo(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+	return protowire.SizeBytes(f.mi.sizePointer(p.Elem(), opts)) + f.tagsize
+}
+
+func appendMessageInfo(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(f.mi.sizePointer(p.Elem(), opts)))
+	return f.mi.marshalAppendPointer(b, p.Elem(), opts)
+}
+
+func consumeMessageInfo(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if p.Elem().IsNil() {
+		p.SetPointer(pointerOfValue(reflect.New(f.mi.GoReflectType.Elem())))
+	}
+	o, err := f.mi.unmarshalPointer(v, p.Elem(), 0, opts)
+	if err != nil {
+		return out, err
+	}
+	out.n = n
+	out.initialized = o.initialized
+	return out, nil
+}
+
+func isInitMessageInfo(p pointer, f *coderFieldInfo) error {
+	return f.mi.checkInitializedPointer(p.Elem())
+}
+
+func sizeMessage(m proto.Message, tagsize int, _ marshalOptions) int {
+	return protowire.SizeBytes(proto.Size(m)) + tagsize
+}
+
+func appendMessage(b []byte, m proto.Message, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, uint64(proto.Size(m)))
+	return opts.Options().MarshalAppend(b, m)
+}
+
+func consumeMessage(b []byte, m proto.Message, wtyp protowire.Type, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     v,
+		Message: m.ProtoReflect(),
+	})
+	if err != nil {
+		return out, err
+	}
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return out, nil
+}
+
+func sizeMessageValue(v pref.Value, tagsize int, opts marshalOptions) int {
+	m := v.Message().Interface()
+	return sizeMessage(m, tagsize, opts)
+}
+
+func appendMessageValue(b []byte, v pref.Value, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	m := v.Message().Interface()
+	return appendMessage(b, m, wiretag, opts)
+}
+
+func consumeMessageValue(b []byte, v pref.Value, _ protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (pref.Value, unmarshalOutput, error) {
+	m := v.Message().Interface()
+	out, err := consumeMessage(b, m, wtyp, opts)
+	return v, out, err
+}
+
+func isInitMessageValue(v pref.Value) error {
+	m := v.Message().Interface()
+	return proto.CheckInitialized(m)
+}
+
+var coderMessageValue = valueCoderFuncs{
+	size:      sizeMessageValue,
+	marshal:   appendMessageValue,
+	unmarshal: consumeMessageValue,
+	isInit:    isInitMessageValue,
+	merge:     mergeMessageValue,
+}
+
+func sizeGroupValue(v pref.Value, tagsize int, opts marshalOptions) int {
+	m := v.Message().Interface()
+	return sizeGroup(m, tagsize, opts)
+}
+
+func appendGroupValue(b []byte, v pref.Value, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	m := v.Message().Interface()
+	return appendGroup(b, m, wiretag, opts)
+}
+
+func consumeGroupValue(b []byte, v pref.Value, num protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (pref.Value, unmarshalOutput, error) {
+	m := v.Message().Interface()
+	out, err := consumeGroup(b, m, num, wtyp, opts)
+	return v, out, err
+}
+
+var coderGroupValue = valueCoderFuncs{
+	size:      sizeGroupValue,
+	marshal:   appendGroupValue,
+	unmarshal: consumeGroupValue,
+	isInit:    isInitMessageValue,
+	merge:     mergeMessageValue,
+}
+
+func makeGroupFieldCoder(fd pref.FieldDescriptor, ft reflect.Type) pointerCoderFuncs {
+	num := fd.Number()
+	if mi := getMessageInfo(ft); mi != nil {
+		funcs := pointerCoderFuncs{
+			size:      sizeGroupType,
+			marshal:   appendGroupType,
+			unmarshal: consumeGroupType,
+			merge:     mergeMessage,
+		}
+		if needsInitCheck(mi.Desc) {
+			funcs.isInit = isInitMessageInfo
+		}
+		return funcs
+	} else {
+		return pointerCoderFuncs{
+			size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return sizeGroup(m, f.tagsize, opts)
+			},
+			marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return appendGroup(b, m, f.wiretag, opts)
+			},
+			unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+				mp := p.AsValueOf(ft).Elem()
+				if mp.IsNil() {
+					mp.Set(reflect.New(ft.Elem()))
+				}
+				return consumeGroup(b, asMessage(mp), num, wtyp, opts)
+			},
+			isInit: func(p pointer, f *coderFieldInfo) error {
+				m := asMessage(p.AsValueOf(ft).Elem())
+				return proto.CheckInitialized(m)
+			},
+			merge: mergeMessage,
+		}
+	}
+}
+
+func sizeGroupType(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+	return 2*f.tagsize + f.mi.sizePointer(p.Elem(), opts)
+}
+
+func appendGroupType(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, f.wiretag) // start group
+	b, err := f.mi.marshalAppendPointer(b, p.Elem(), opts)
+	b = protowire.AppendVarint(b, f.wiretag+1) // end group
+	return b, err
+}
+
+func consumeGroupType(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.StartGroupType {
+		return out, errUnknown
+	}
+	if p.Elem().IsNil() {
+		p.SetPointer(pointerOfValue(reflect.New(f.mi.GoReflectType.Elem())))
+	}
+	return f.mi.unmarshalPointer(b, p.Elem(), f.num, opts)
+}
+
+func sizeGroup(m proto.Message, tagsize int, _ marshalOptions) int {
+	return 2*tagsize + proto.Size(m)
+}
+
+func appendGroup(b []byte, m proto.Message, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag) // start group
+	b, err := opts.Options().MarshalAppend(b, m)
+	b = protowire.AppendVarint(b, wiretag+1) // end group
+	return b, err
+}
+
+func consumeGroup(b []byte, m proto.Message, num protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.StartGroupType {
+		return out, errUnknown
+	}
+	b, n := protowire.ConsumeGroup(num, b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     b,
+		Message: m.ProtoReflect(),
+	})
+	if err != nil {
+		return out, err
+	}
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return out, nil
+}
+
+func makeMessageSliceFieldCoder(fd pref.FieldDescriptor, ft reflect.Type) pointerCoderFuncs {
+	if mi := getMessageInfo(ft); mi != nil {
+		funcs := pointerCoderFuncs{
+			size:      sizeMessageSliceInfo,
+			marshal:   appendMessageSliceInfo,
+			unmarshal: consumeMessageSliceInfo,
+			merge:     mergeMessageSlice,
+		}
+		if needsInitCheck(mi.Desc) {
+			funcs.isInit = isInitMessageSliceInfo
+		}
+		return funcs
+	}
+	return pointerCoderFuncs{
+		size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+			return sizeMessageSlice(p, ft, f.tagsize, opts)
+		},
+		marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+			return appendMessageSlice(b, p, f.wiretag, ft, opts)
+		},
+		unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+			return consumeMessageSlice(b, p, ft, wtyp, opts)
+		},
+		isInit: func(p pointer, f *coderFieldInfo) error {
+			return isInitMessageSlice(p, ft)
+		},
+		merge: mergeMessageSlice,
+	}
+}
+
+func sizeMessageSliceInfo(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+	s := p.PointerSlice()
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeBytes(f.mi.sizePointer(v, opts)) + f.tagsize
+	}
+	return n
+}
+
+func appendMessageSliceInfo(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	s := p.PointerSlice()
+	var err error
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		siz := f.mi.sizePointer(v, opts)
+		b = protowire.AppendVarint(b, uint64(siz))
+		b, err = f.mi.marshalAppendPointer(b, v, opts)
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func consumeMessageSliceInfo(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	m := reflect.New(f.mi.GoReflectType.Elem()).Interface()
+	mp := pointerOfIface(m)
+	o, err := f.mi.unmarshalPointer(v, mp, 0, opts)
+	if err != nil {
+		return out, err
+	}
+	p.AppendPointerSlice(mp)
+	out.n = n
+	out.initialized = o.initialized
+	return out, nil
+}
+
+func isInitMessageSliceInfo(p pointer, f *coderFieldInfo) error {
+	s := p.PointerSlice()
+	for _, v := range s {
+		if err := f.mi.checkInitializedPointer(v); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+func sizeMessageSlice(p pointer, goType reflect.Type, tagsize int, _ marshalOptions) int {
+	s := p.PointerSlice()
+	n := 0
+	for _, v := range s {
+		m := asMessage(v.AsValueOf(goType.Elem()))
+		n += protowire.SizeBytes(proto.Size(m)) + tagsize
+	}
+	return n
+}
+
+func appendMessageSlice(b []byte, p pointer, wiretag uint64, goType reflect.Type, opts marshalOptions) ([]byte, error) {
+	s := p.PointerSlice()
+	var err error
+	for _, v := range s {
+		m := asMessage(v.AsValueOf(goType.Elem()))
+		b = protowire.AppendVarint(b, wiretag)
+		siz := proto.Size(m)
+		b = protowire.AppendVarint(b, uint64(siz))
+		b, err = opts.Options().MarshalAppend(b, m)
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func consumeMessageSlice(b []byte, p pointer, goType reflect.Type, wtyp protowire.Type, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	mp := reflect.New(goType.Elem())
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     v,
+		Message: asMessage(mp).ProtoReflect(),
+	})
+	if err != nil {
+		return out, err
+	}
+	p.AppendPointerSlice(pointerOfValue(mp))
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return out, nil
+}
+
+func isInitMessageSlice(p pointer, goType reflect.Type) error {
+	s := p.PointerSlice()
+	for _, v := range s {
+		m := asMessage(v.AsValueOf(goType.Elem()))
+		if err := proto.CheckInitialized(m); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+// Slices of messages
+
+func sizeMessageSliceValue(listv pref.Value, tagsize int, opts marshalOptions) int {
+	list := listv.List()
+	n := 0
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		m := list.Get(i).Message().Interface()
+		n += protowire.SizeBytes(proto.Size(m)) + tagsize
+	}
+	return n
+}
+
+func appendMessageSliceValue(b []byte, listv pref.Value, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	list := listv.List()
+	mopts := opts.Options()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		m := list.Get(i).Message().Interface()
+		b = protowire.AppendVarint(b, wiretag)
+		siz := proto.Size(m)
+		b = protowire.AppendVarint(b, uint64(siz))
+		var err error
+		b, err = mopts.MarshalAppend(b, m)
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func consumeMessageSliceValue(b []byte, listv pref.Value, _ protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (_ pref.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp != protowire.BytesType {
+		return pref.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return pref.Value{}, out, protowire.ParseError(n)
+	}
+	m := list.NewElement()
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     v,
+		Message: m.Message(),
+	})
+	if err != nil {
+		return pref.Value{}, out, err
+	}
+	list.Append(m)
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return listv, out, nil
+}
+
+func isInitMessageSliceValue(listv pref.Value) error {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		m := list.Get(i).Message().Interface()
+		if err := proto.CheckInitialized(m); err != nil {
+			return err
+		}
+	}
+	return nil
+}
+
+var coderMessageSliceValue = valueCoderFuncs{
+	size:      sizeMessageSliceValue,
+	marshal:   appendMessageSliceValue,
+	unmarshal: consumeMessageSliceValue,
+	isInit:    isInitMessageSliceValue,
+	merge:     mergeMessageListValue,
+}
+
+func sizeGroupSliceValue(listv pref.Value, tagsize int, opts marshalOptions) int {
+	list := listv.List()
+	n := 0
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		m := list.Get(i).Message().Interface()
+		n += 2*tagsize + proto.Size(m)
+	}
+	return n
+}
+
+func appendGroupSliceValue(b []byte, listv pref.Value, wiretag uint64, opts marshalOptions) ([]byte, error) {
+	list := listv.List()
+	mopts := opts.Options()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		m := list.Get(i).Message().Interface()
+		b = protowire.AppendVarint(b, wiretag) // start group
+		var err error
+		b, err = mopts.MarshalAppend(b, m)
+		if err != nil {
+			return b, err
+		}
+		b = protowire.AppendVarint(b, wiretag+1) // end group
+	}
+	return b, nil
+}
+
+func consumeGroupSliceValue(b []byte, listv pref.Value, num protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (_ pref.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp != protowire.StartGroupType {
+		return pref.Value{}, out, errUnknown
+	}
+	b, n := protowire.ConsumeGroup(num, b)
+	if n < 0 {
+		return pref.Value{}, out, protowire.ParseError(n)
+	}
+	m := list.NewElement()
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     b,
+		Message: m.Message(),
+	})
+	if err != nil {
+		return pref.Value{}, out, err
+	}
+	list.Append(m)
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return listv, out, nil
+}
+
+var coderGroupSliceValue = valueCoderFuncs{
+	size:      sizeGroupSliceValue,
+	marshal:   appendGroupSliceValue,
+	unmarshal: consumeGroupSliceValue,
+	isInit:    isInitMessageSliceValue,
+	merge:     mergeMessageListValue,
+}
+
+func makeGroupSliceFieldCoder(fd pref.FieldDescriptor, ft reflect.Type) pointerCoderFuncs {
+	num := fd.Number()
+	if mi := getMessageInfo(ft); mi != nil {
+		funcs := pointerCoderFuncs{
+			size:      sizeGroupSliceInfo,
+			marshal:   appendGroupSliceInfo,
+			unmarshal: consumeGroupSliceInfo,
+			merge:     mergeMessageSlice,
+		}
+		if needsInitCheck(mi.Desc) {
+			funcs.isInit = isInitMessageSliceInfo
+		}
+		return funcs
+	}
+	return pointerCoderFuncs{
+		size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+			return sizeGroupSlice(p, ft, f.tagsize, opts)
+		},
+		marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+			return appendGroupSlice(b, p, f.wiretag, ft, opts)
+		},
+		unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+			return consumeGroupSlice(b, p, num, wtyp, ft, opts)
+		},
+		isInit: func(p pointer, f *coderFieldInfo) error {
+			return isInitMessageSlice(p, ft)
+		},
+		merge: mergeMessageSlice,
+	}
+}
+
+func sizeGroupSlice(p pointer, messageType reflect.Type, tagsize int, _ marshalOptions) int {
+	s := p.PointerSlice()
+	n := 0
+	for _, v := range s {
+		m := asMessage(v.AsValueOf(messageType.Elem()))
+		n += 2*tagsize + proto.Size(m)
+	}
+	return n
+}
+
+func appendGroupSlice(b []byte, p pointer, wiretag uint64, messageType reflect.Type, opts marshalOptions) ([]byte, error) {
+	s := p.PointerSlice()
+	var err error
+	for _, v := range s {
+		m := asMessage(v.AsValueOf(messageType.Elem()))
+		b = protowire.AppendVarint(b, wiretag) // start group
+		b, err = opts.Options().MarshalAppend(b, m)
+		if err != nil {
+			return b, err
+		}
+		b = protowire.AppendVarint(b, wiretag+1) // end group
+	}
+	return b, nil
+}
+
+func consumeGroupSlice(b []byte, p pointer, num protowire.Number, wtyp protowire.Type, goType reflect.Type, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.StartGroupType {
+		return out, errUnknown
+	}
+	b, n := protowire.ConsumeGroup(num, b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	mp := reflect.New(goType.Elem())
+	o, err := opts.Options().UnmarshalState(piface.UnmarshalInput{
+		Buf:     b,
+		Message: asMessage(mp).ProtoReflect(),
+	})
+	if err != nil {
+		return out, err
+	}
+	p.AppendPointerSlice(pointerOfValue(mp))
+	out.n = n
+	out.initialized = o.Flags&piface.UnmarshalInitialized != 0
+	return out, nil
+}
+
+func sizeGroupSliceInfo(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+	s := p.PointerSlice()
+	n := 0
+	for _, v := range s {
+		n += 2*f.tagsize + f.mi.sizePointer(v, opts)
+	}
+	return n
+}
+
+func appendGroupSliceInfo(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	s := p.PointerSlice()
+	var err error
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag) // start group
+		b, err = f.mi.marshalAppendPointer(b, v, opts)
+		if err != nil {
+			return b, err
+		}
+		b = protowire.AppendVarint(b, f.wiretag+1) // end group
+	}
+	return b, nil
+}
+
+func consumeGroupSliceInfo(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+	if wtyp != protowire.StartGroupType {
+		return unmarshalOutput{}, errUnknown
+	}
+	m := reflect.New(f.mi.GoReflectType.Elem()).Interface()
+	mp := pointerOfIface(m)
+	out, err := f.mi.unmarshalPointer(b, mp, f.num, opts)
+	if err != nil {
+		return out, err
+	}
+	p.AppendPointerSlice(mp)
+	return out, nil
+}
+
+func asMessage(v reflect.Value) pref.ProtoMessage {
+	if m, ok := v.Interface().(pref.ProtoMessage); ok {
+		return m
+	}
+	return legacyWrapMessage(v).Interface()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go b/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go
new file mode 100644
index 0000000..ff198d0
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go
@@ -0,0 +1,5637 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package impl
+
+import (
+	"math"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// sizeBool returns the size of wire encoding a bool pointer as a Bool.
+func sizeBool(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Bool()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeBool(v))
+}
+
+// appendBool wire encodes a bool pointer as a Bool.
+func appendBool(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bool()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeBool(v))
+	return b, nil
+}
+
+// consumeBool wire decodes a bool pointer as a Bool.
+func consumeBool(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Bool() = protowire.DecodeBool(v)
+	out.n = n
+	return out, nil
+}
+
+var coderBool = pointerCoderFuncs{
+	size:      sizeBool,
+	marshal:   appendBool,
+	unmarshal: consumeBool,
+	merge:     mergeBool,
+}
+
+// sizeBoolNoZero returns the size of wire encoding a bool pointer as a Bool.
+// The zero value is not encoded.
+func sizeBoolNoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Bool()
+	if v == false {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeBool(v))
+}
+
+// appendBoolNoZero wire encodes a bool pointer as a Bool.
+// The zero value is not encoded.
+func appendBoolNoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bool()
+	if v == false {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeBool(v))
+	return b, nil
+}
+
+var coderBoolNoZero = pointerCoderFuncs{
+	size:      sizeBoolNoZero,
+	marshal:   appendBoolNoZero,
+	unmarshal: consumeBool,
+	merge:     mergeBoolNoZero,
+}
+
+// sizeBoolPtr returns the size of wire encoding a *bool pointer as a Bool.
+// It panics if the pointer is nil.
+func sizeBoolPtr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.BoolPtr()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeBool(v))
+}
+
+// appendBoolPtr wire encodes a *bool pointer as a Bool.
+// It panics if the pointer is nil.
+func appendBoolPtr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.BoolPtr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeBool(v))
+	return b, nil
+}
+
+// consumeBoolPtr wire decodes a *bool pointer as a Bool.
+func consumeBoolPtr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.BoolPtr()
+	if *vp == nil {
+		*vp = new(bool)
+	}
+	**vp = protowire.DecodeBool(v)
+	out.n = n
+	return out, nil
+}
+
+var coderBoolPtr = pointerCoderFuncs{
+	size:      sizeBoolPtr,
+	marshal:   appendBoolPtr,
+	unmarshal: consumeBoolPtr,
+	merge:     mergeBoolPtr,
+}
+
+// sizeBoolSlice returns the size of wire encoding a []bool pointer as a repeated Bool.
+func sizeBoolSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.BoolSlice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(protowire.EncodeBool(v))
+	}
+	return size
+}
+
+// appendBoolSlice encodes a []bool pointer as a repeated Bool.
+func appendBoolSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.BoolSlice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeBool(v))
+	}
+	return b, nil
+}
+
+// consumeBoolSlice wire decodes a []bool pointer as a repeated Bool.
+func consumeBoolSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.BoolSlice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, protowire.DecodeBool(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, protowire.DecodeBool(v))
+	out.n = n
+	return out, nil
+}
+
+var coderBoolSlice = pointerCoderFuncs{
+	size:      sizeBoolSlice,
+	marshal:   appendBoolSlice,
+	unmarshal: consumeBoolSlice,
+	merge:     mergeBoolSlice,
+}
+
+// sizeBoolPackedSlice returns the size of wire encoding a []bool pointer as a packed repeated Bool.
+func sizeBoolPackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.BoolSlice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeBool(v))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendBoolPackedSlice encodes a []bool pointer as a packed repeated Bool.
+func appendBoolPackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.BoolSlice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeBool(v))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, protowire.EncodeBool(v))
+	}
+	return b, nil
+}
+
+var coderBoolPackedSlice = pointerCoderFuncs{
+	size:      sizeBoolPackedSlice,
+	marshal:   appendBoolPackedSlice,
+	unmarshal: consumeBoolSlice,
+	merge:     mergeBoolSlice,
+}
+
+// sizeBoolValue returns the size of wire encoding a bool value as a Bool.
+func sizeBoolValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(protowire.EncodeBool(v.Bool()))
+}
+
+// appendBoolValue encodes a bool value as a Bool.
+func appendBoolValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeBool(v.Bool()))
+	return b, nil
+}
+
+// consumeBoolValue decodes a bool value as a Bool.
+func consumeBoolValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfBool(protowire.DecodeBool(v)), out, nil
+}
+
+var coderBoolValue = valueCoderFuncs{
+	size:      sizeBoolValue,
+	marshal:   appendBoolValue,
+	unmarshal: consumeBoolValue,
+	merge:     mergeScalarValue,
+}
+
+// sizeBoolSliceValue returns the size of wire encoding a []bool value as a repeated Bool.
+func sizeBoolSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(protowire.EncodeBool(v.Bool()))
+	}
+	return size
+}
+
+// appendBoolSliceValue encodes a []bool value as a repeated Bool.
+func appendBoolSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeBool(v.Bool()))
+	}
+	return b, nil
+}
+
+// consumeBoolSliceValue wire decodes a []bool value as a repeated Bool.
+func consumeBoolSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfBool(protowire.DecodeBool(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfBool(protowire.DecodeBool(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderBoolSliceValue = valueCoderFuncs{
+	size:      sizeBoolSliceValue,
+	marshal:   appendBoolSliceValue,
+	unmarshal: consumeBoolSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeBoolPackedSliceValue returns the size of wire encoding a []bool value as a packed repeated Bool.
+func sizeBoolPackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeBool(v.Bool()))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendBoolPackedSliceValue encodes a []bool value as a packed repeated Bool.
+func appendBoolPackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeBool(v.Bool()))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, protowire.EncodeBool(v.Bool()))
+	}
+	return b, nil
+}
+
+var coderBoolPackedSliceValue = valueCoderFuncs{
+	size:      sizeBoolPackedSliceValue,
+	marshal:   appendBoolPackedSliceValue,
+	unmarshal: consumeBoolSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeEnumValue returns the size of wire encoding a  value as a Enum.
+func sizeEnumValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(uint64(v.Enum()))
+}
+
+// appendEnumValue encodes a  value as a Enum.
+func appendEnumValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, uint64(v.Enum()))
+	return b, nil
+}
+
+// consumeEnumValue decodes a  value as a Enum.
+func consumeEnumValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)), out, nil
+}
+
+var coderEnumValue = valueCoderFuncs{
+	size:      sizeEnumValue,
+	marshal:   appendEnumValue,
+	unmarshal: consumeEnumValue,
+	merge:     mergeScalarValue,
+}
+
+// sizeEnumSliceValue returns the size of wire encoding a [] value as a repeated Enum.
+func sizeEnumSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(uint64(v.Enum()))
+	}
+	return size
+}
+
+// appendEnumSliceValue encodes a [] value as a repeated Enum.
+func appendEnumSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, uint64(v.Enum()))
+	}
+	return b, nil
+}
+
+// consumeEnumSliceValue wire decodes a [] value as a repeated Enum.
+func consumeEnumSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderEnumSliceValue = valueCoderFuncs{
+	size:      sizeEnumSliceValue,
+	marshal:   appendEnumSliceValue,
+	unmarshal: consumeEnumSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeEnumPackedSliceValue returns the size of wire encoding a [] value as a packed repeated Enum.
+func sizeEnumPackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(v.Enum()))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendEnumPackedSliceValue encodes a [] value as a packed repeated Enum.
+func appendEnumPackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(v.Enum()))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, uint64(v.Enum()))
+	}
+	return b, nil
+}
+
+var coderEnumPackedSliceValue = valueCoderFuncs{
+	size:      sizeEnumPackedSliceValue,
+	marshal:   appendEnumPackedSliceValue,
+	unmarshal: consumeEnumSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeInt32 returns the size of wire encoding a int32 pointer as a Int32.
+func sizeInt32(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int32()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt32 wire encodes a int32 pointer as a Int32.
+func appendInt32(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeInt32 wire decodes a int32 pointer as a Int32.
+func consumeInt32(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int32() = int32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderInt32 = pointerCoderFuncs{
+	size:      sizeInt32,
+	marshal:   appendInt32,
+	unmarshal: consumeInt32,
+	merge:     mergeInt32,
+}
+
+// sizeInt32NoZero returns the size of wire encoding a int32 pointer as a Int32.
+// The zero value is not encoded.
+func sizeInt32NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int32()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt32NoZero wire encodes a int32 pointer as a Int32.
+// The zero value is not encoded.
+func appendInt32NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+var coderInt32NoZero = pointerCoderFuncs{
+	size:      sizeInt32NoZero,
+	marshal:   appendInt32NoZero,
+	unmarshal: consumeInt32,
+	merge:     mergeInt32NoZero,
+}
+
+// sizeInt32Ptr returns the size of wire encoding a *int32 pointer as a Int32.
+// It panics if the pointer is nil.
+func sizeInt32Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Int32Ptr()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt32Ptr wire encodes a *int32 pointer as a Int32.
+// It panics if the pointer is nil.
+func appendInt32Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeInt32Ptr wire decodes a *int32 pointer as a Int32.
+func consumeInt32Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int32Ptr()
+	if *vp == nil {
+		*vp = new(int32)
+	}
+	**vp = int32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderInt32Ptr = pointerCoderFuncs{
+	size:      sizeInt32Ptr,
+	marshal:   appendInt32Ptr,
+	unmarshal: consumeInt32Ptr,
+	merge:     mergeInt32Ptr,
+}
+
+// sizeInt32Slice returns the size of wire encoding a []int32 pointer as a repeated Int32.
+func sizeInt32Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(uint64(v))
+	}
+	return size
+}
+
+// appendInt32Slice encodes a []int32 pointer as a repeated Int32.
+func appendInt32Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+// consumeInt32Slice wire decodes a []int32 pointer as a repeated Int32.
+func consumeInt32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, int32(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, int32(v))
+	out.n = n
+	return out, nil
+}
+
+var coderInt32Slice = pointerCoderFuncs{
+	size:      sizeInt32Slice,
+	marshal:   appendInt32Slice,
+	unmarshal: consumeInt32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeInt32PackedSlice returns the size of wire encoding a []int32 pointer as a packed repeated Int32.
+func sizeInt32PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendInt32PackedSlice encodes a []int32 pointer as a packed repeated Int32.
+func appendInt32PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+var coderInt32PackedSlice = pointerCoderFuncs{
+	size:      sizeInt32PackedSlice,
+	marshal:   appendInt32PackedSlice,
+	unmarshal: consumeInt32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeInt32Value returns the size of wire encoding a int32 value as a Int32.
+func sizeInt32Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(uint64(int32(v.Int())))
+}
+
+// appendInt32Value encodes a int32 value as a Int32.
+func appendInt32Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, uint64(int32(v.Int())))
+	return b, nil
+}
+
+// consumeInt32Value decodes a int32 value as a Int32.
+func consumeInt32Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt32(int32(v)), out, nil
+}
+
+var coderInt32Value = valueCoderFuncs{
+	size:      sizeInt32Value,
+	marshal:   appendInt32Value,
+	unmarshal: consumeInt32Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeInt32SliceValue returns the size of wire encoding a []int32 value as a repeated Int32.
+func sizeInt32SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(uint64(int32(v.Int())))
+	}
+	return size
+}
+
+// appendInt32SliceValue encodes a []int32 value as a repeated Int32.
+func appendInt32SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, uint64(int32(v.Int())))
+	}
+	return b, nil
+}
+
+// consumeInt32SliceValue wire decodes a []int32 value as a repeated Int32.
+func consumeInt32SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt32(int32(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt32(int32(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderInt32SliceValue = valueCoderFuncs{
+	size:      sizeInt32SliceValue,
+	marshal:   appendInt32SliceValue,
+	unmarshal: consumeInt32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeInt32PackedSliceValue returns the size of wire encoding a []int32 value as a packed repeated Int32.
+func sizeInt32PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(int32(v.Int())))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendInt32PackedSliceValue encodes a []int32 value as a packed repeated Int32.
+func appendInt32PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(int32(v.Int())))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, uint64(int32(v.Int())))
+	}
+	return b, nil
+}
+
+var coderInt32PackedSliceValue = valueCoderFuncs{
+	size:      sizeInt32PackedSliceValue,
+	marshal:   appendInt32PackedSliceValue,
+	unmarshal: consumeInt32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSint32 returns the size of wire encoding a int32 pointer as a Sint32.
+func sizeSint32(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int32()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+}
+
+// appendSint32 wire encodes a int32 pointer as a Sint32.
+func appendSint32(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(v)))
+	return b, nil
+}
+
+// consumeSint32 wire decodes a int32 pointer as a Sint32.
+func consumeSint32(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int32() = int32(protowire.DecodeZigZag(v & math.MaxUint32))
+	out.n = n
+	return out, nil
+}
+
+var coderSint32 = pointerCoderFuncs{
+	size:      sizeSint32,
+	marshal:   appendSint32,
+	unmarshal: consumeSint32,
+	merge:     mergeInt32,
+}
+
+// sizeSint32NoZero returns the size of wire encoding a int32 pointer as a Sint32.
+// The zero value is not encoded.
+func sizeSint32NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int32()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+}
+
+// appendSint32NoZero wire encodes a int32 pointer as a Sint32.
+// The zero value is not encoded.
+func appendSint32NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(v)))
+	return b, nil
+}
+
+var coderSint32NoZero = pointerCoderFuncs{
+	size:      sizeSint32NoZero,
+	marshal:   appendSint32NoZero,
+	unmarshal: consumeSint32,
+	merge:     mergeInt32NoZero,
+}
+
+// sizeSint32Ptr returns the size of wire encoding a *int32 pointer as a Sint32.
+// It panics if the pointer is nil.
+func sizeSint32Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Int32Ptr()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+}
+
+// appendSint32Ptr wire encodes a *int32 pointer as a Sint32.
+// It panics if the pointer is nil.
+func appendSint32Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(v)))
+	return b, nil
+}
+
+// consumeSint32Ptr wire decodes a *int32 pointer as a Sint32.
+func consumeSint32Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int32Ptr()
+	if *vp == nil {
+		*vp = new(int32)
+	}
+	**vp = int32(protowire.DecodeZigZag(v & math.MaxUint32))
+	out.n = n
+	return out, nil
+}
+
+var coderSint32Ptr = pointerCoderFuncs{
+	size:      sizeSint32Ptr,
+	marshal:   appendSint32Ptr,
+	unmarshal: consumeSint32Ptr,
+	merge:     mergeInt32Ptr,
+}
+
+// sizeSint32Slice returns the size of wire encoding a []int32 pointer as a repeated Sint32.
+func sizeSint32Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+	}
+	return size
+}
+
+// appendSint32Slice encodes a []int32 pointer as a repeated Sint32.
+func appendSint32Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(v)))
+	}
+	return b, nil
+}
+
+// consumeSint32Slice wire decodes a []int32 pointer as a repeated Sint32.
+func consumeSint32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, int32(protowire.DecodeZigZag(v&math.MaxUint32)))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, int32(protowire.DecodeZigZag(v&math.MaxUint32)))
+	out.n = n
+	return out, nil
+}
+
+var coderSint32Slice = pointerCoderFuncs{
+	size:      sizeSint32Slice,
+	marshal:   appendSint32Slice,
+	unmarshal: consumeSint32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeSint32PackedSlice returns the size of wire encoding a []int32 pointer as a packed repeated Sint32.
+func sizeSint32PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendSint32PackedSlice encodes a []int32 pointer as a packed repeated Sint32.
+func appendSint32PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeZigZag(int64(v)))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(v)))
+	}
+	return b, nil
+}
+
+var coderSint32PackedSlice = pointerCoderFuncs{
+	size:      sizeSint32PackedSlice,
+	marshal:   appendSint32PackedSlice,
+	unmarshal: consumeSint32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeSint32Value returns the size of wire encoding a int32 value as a Sint32.
+func sizeSint32Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(int32(v.Int()))))
+}
+
+// appendSint32Value encodes a int32 value as a Sint32.
+func appendSint32Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(int32(v.Int()))))
+	return b, nil
+}
+
+// consumeSint32Value decodes a int32 value as a Sint32.
+func consumeSint32Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))), out, nil
+}
+
+var coderSint32Value = valueCoderFuncs{
+	size:      sizeSint32Value,
+	marshal:   appendSint32Value,
+	unmarshal: consumeSint32Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeSint32SliceValue returns the size of wire encoding a []int32 value as a repeated Sint32.
+func sizeSint32SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(protowire.EncodeZigZag(int64(int32(v.Int()))))
+	}
+	return size
+}
+
+// appendSint32SliceValue encodes a []int32 value as a repeated Sint32.
+func appendSint32SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(int32(v.Int()))))
+	}
+	return b, nil
+}
+
+// consumeSint32SliceValue wire decodes a []int32 value as a repeated Sint32.
+func consumeSint32SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderSint32SliceValue = valueCoderFuncs{
+	size:      sizeSint32SliceValue,
+	marshal:   appendSint32SliceValue,
+	unmarshal: consumeSint32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSint32PackedSliceValue returns the size of wire encoding a []int32 value as a packed repeated Sint32.
+func sizeSint32PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeZigZag(int64(int32(v.Int()))))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendSint32PackedSliceValue encodes a []int32 value as a packed repeated Sint32.
+func appendSint32PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeZigZag(int64(int32(v.Int()))))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(int32(v.Int()))))
+	}
+	return b, nil
+}
+
+var coderSint32PackedSliceValue = valueCoderFuncs{
+	size:      sizeSint32PackedSliceValue,
+	marshal:   appendSint32PackedSliceValue,
+	unmarshal: consumeSint32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeUint32 returns the size of wire encoding a uint32 pointer as a Uint32.
+func sizeUint32(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint32()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendUint32 wire encodes a uint32 pointer as a Uint32.
+func appendUint32(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeUint32 wire decodes a uint32 pointer as a Uint32.
+func consumeUint32(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Uint32() = uint32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderUint32 = pointerCoderFuncs{
+	size:      sizeUint32,
+	marshal:   appendUint32,
+	unmarshal: consumeUint32,
+	merge:     mergeUint32,
+}
+
+// sizeUint32NoZero returns the size of wire encoding a uint32 pointer as a Uint32.
+// The zero value is not encoded.
+func sizeUint32NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint32()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendUint32NoZero wire encodes a uint32 pointer as a Uint32.
+// The zero value is not encoded.
+func appendUint32NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint32()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+var coderUint32NoZero = pointerCoderFuncs{
+	size:      sizeUint32NoZero,
+	marshal:   appendUint32NoZero,
+	unmarshal: consumeUint32,
+	merge:     mergeUint32NoZero,
+}
+
+// sizeUint32Ptr returns the size of wire encoding a *uint32 pointer as a Uint32.
+// It panics if the pointer is nil.
+func sizeUint32Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Uint32Ptr()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendUint32Ptr wire encodes a *uint32 pointer as a Uint32.
+// It panics if the pointer is nil.
+func appendUint32Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Uint32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeUint32Ptr wire decodes a *uint32 pointer as a Uint32.
+func consumeUint32Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Uint32Ptr()
+	if *vp == nil {
+		*vp = new(uint32)
+	}
+	**vp = uint32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderUint32Ptr = pointerCoderFuncs{
+	size:      sizeUint32Ptr,
+	marshal:   appendUint32Ptr,
+	unmarshal: consumeUint32Ptr,
+	merge:     mergeUint32Ptr,
+}
+
+// sizeUint32Slice returns the size of wire encoding a []uint32 pointer as a repeated Uint32.
+func sizeUint32Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint32Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(uint64(v))
+	}
+	return size
+}
+
+// appendUint32Slice encodes a []uint32 pointer as a repeated Uint32.
+func appendUint32Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+// consumeUint32Slice wire decodes a []uint32 pointer as a repeated Uint32.
+func consumeUint32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Uint32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, uint32(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, uint32(v))
+	out.n = n
+	return out, nil
+}
+
+var coderUint32Slice = pointerCoderFuncs{
+	size:      sizeUint32Slice,
+	marshal:   appendUint32Slice,
+	unmarshal: consumeUint32Slice,
+	merge:     mergeUint32Slice,
+}
+
+// sizeUint32PackedSlice returns the size of wire encoding a []uint32 pointer as a packed repeated Uint32.
+func sizeUint32PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendUint32PackedSlice encodes a []uint32 pointer as a packed repeated Uint32.
+func appendUint32PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+var coderUint32PackedSlice = pointerCoderFuncs{
+	size:      sizeUint32PackedSlice,
+	marshal:   appendUint32PackedSlice,
+	unmarshal: consumeUint32Slice,
+	merge:     mergeUint32Slice,
+}
+
+// sizeUint32Value returns the size of wire encoding a uint32 value as a Uint32.
+func sizeUint32Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(uint64(uint32(v.Uint())))
+}
+
+// appendUint32Value encodes a uint32 value as a Uint32.
+func appendUint32Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, uint64(uint32(v.Uint())))
+	return b, nil
+}
+
+// consumeUint32Value decodes a uint32 value as a Uint32.
+func consumeUint32Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfUint32(uint32(v)), out, nil
+}
+
+var coderUint32Value = valueCoderFuncs{
+	size:      sizeUint32Value,
+	marshal:   appendUint32Value,
+	unmarshal: consumeUint32Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeUint32SliceValue returns the size of wire encoding a []uint32 value as a repeated Uint32.
+func sizeUint32SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(uint64(uint32(v.Uint())))
+	}
+	return size
+}
+
+// appendUint32SliceValue encodes a []uint32 value as a repeated Uint32.
+func appendUint32SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, uint64(uint32(v.Uint())))
+	}
+	return b, nil
+}
+
+// consumeUint32SliceValue wire decodes a []uint32 value as a repeated Uint32.
+func consumeUint32SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfUint32(uint32(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfUint32(uint32(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderUint32SliceValue = valueCoderFuncs{
+	size:      sizeUint32SliceValue,
+	marshal:   appendUint32SliceValue,
+	unmarshal: consumeUint32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeUint32PackedSliceValue returns the size of wire encoding a []uint32 value as a packed repeated Uint32.
+func sizeUint32PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(uint32(v.Uint())))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendUint32PackedSliceValue encodes a []uint32 value as a packed repeated Uint32.
+func appendUint32PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(uint32(v.Uint())))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, uint64(uint32(v.Uint())))
+	}
+	return b, nil
+}
+
+var coderUint32PackedSliceValue = valueCoderFuncs{
+	size:      sizeUint32PackedSliceValue,
+	marshal:   appendUint32PackedSliceValue,
+	unmarshal: consumeUint32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeInt64 returns the size of wire encoding a int64 pointer as a Int64.
+func sizeInt64(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int64()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt64 wire encodes a int64 pointer as a Int64.
+func appendInt64(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeInt64 wire decodes a int64 pointer as a Int64.
+func consumeInt64(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int64() = int64(v)
+	out.n = n
+	return out, nil
+}
+
+var coderInt64 = pointerCoderFuncs{
+	size:      sizeInt64,
+	marshal:   appendInt64,
+	unmarshal: consumeInt64,
+	merge:     mergeInt64,
+}
+
+// sizeInt64NoZero returns the size of wire encoding a int64 pointer as a Int64.
+// The zero value is not encoded.
+func sizeInt64NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int64()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt64NoZero wire encodes a int64 pointer as a Int64.
+// The zero value is not encoded.
+func appendInt64NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+var coderInt64NoZero = pointerCoderFuncs{
+	size:      sizeInt64NoZero,
+	marshal:   appendInt64NoZero,
+	unmarshal: consumeInt64,
+	merge:     mergeInt64NoZero,
+}
+
+// sizeInt64Ptr returns the size of wire encoding a *int64 pointer as a Int64.
+// It panics if the pointer is nil.
+func sizeInt64Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Int64Ptr()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+// appendInt64Ptr wire encodes a *int64 pointer as a Int64.
+// It panics if the pointer is nil.
+func appendInt64Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+// consumeInt64Ptr wire decodes a *int64 pointer as a Int64.
+func consumeInt64Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int64Ptr()
+	if *vp == nil {
+		*vp = new(int64)
+	}
+	**vp = int64(v)
+	out.n = n
+	return out, nil
+}
+
+var coderInt64Ptr = pointerCoderFuncs{
+	size:      sizeInt64Ptr,
+	marshal:   appendInt64Ptr,
+	unmarshal: consumeInt64Ptr,
+	merge:     mergeInt64Ptr,
+}
+
+// sizeInt64Slice returns the size of wire encoding a []int64 pointer as a repeated Int64.
+func sizeInt64Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(uint64(v))
+	}
+	return size
+}
+
+// appendInt64Slice encodes a []int64 pointer as a repeated Int64.
+func appendInt64Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+// consumeInt64Slice wire decodes a []int64 pointer as a repeated Int64.
+func consumeInt64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, int64(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, int64(v))
+	out.n = n
+	return out, nil
+}
+
+var coderInt64Slice = pointerCoderFuncs{
+	size:      sizeInt64Slice,
+	marshal:   appendInt64Slice,
+	unmarshal: consumeInt64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeInt64PackedSlice returns the size of wire encoding a []int64 pointer as a packed repeated Int64.
+func sizeInt64PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendInt64PackedSlice encodes a []int64 pointer as a packed repeated Int64.
+func appendInt64PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(uint64(v))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, uint64(v))
+	}
+	return b, nil
+}
+
+var coderInt64PackedSlice = pointerCoderFuncs{
+	size:      sizeInt64PackedSlice,
+	marshal:   appendInt64PackedSlice,
+	unmarshal: consumeInt64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeInt64Value returns the size of wire encoding a int64 value as a Int64.
+func sizeInt64Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(uint64(v.Int()))
+}
+
+// appendInt64Value encodes a int64 value as a Int64.
+func appendInt64Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, uint64(v.Int()))
+	return b, nil
+}
+
+// consumeInt64Value decodes a int64 value as a Int64.
+func consumeInt64Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt64(int64(v)), out, nil
+}
+
+var coderInt64Value = valueCoderFuncs{
+	size:      sizeInt64Value,
+	marshal:   appendInt64Value,
+	unmarshal: consumeInt64Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeInt64SliceValue returns the size of wire encoding a []int64 value as a repeated Int64.
+func sizeInt64SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(uint64(v.Int()))
+	}
+	return size
+}
+
+// appendInt64SliceValue encodes a []int64 value as a repeated Int64.
+func appendInt64SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, uint64(v.Int()))
+	}
+	return b, nil
+}
+
+// consumeInt64SliceValue wire decodes a []int64 value as a repeated Int64.
+func consumeInt64SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt64(int64(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt64(int64(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderInt64SliceValue = valueCoderFuncs{
+	size:      sizeInt64SliceValue,
+	marshal:   appendInt64SliceValue,
+	unmarshal: consumeInt64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeInt64PackedSliceValue returns the size of wire encoding a []int64 value as a packed repeated Int64.
+func sizeInt64PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(v.Int()))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendInt64PackedSliceValue encodes a []int64 value as a packed repeated Int64.
+func appendInt64PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(uint64(v.Int()))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, uint64(v.Int()))
+	}
+	return b, nil
+}
+
+var coderInt64PackedSliceValue = valueCoderFuncs{
+	size:      sizeInt64PackedSliceValue,
+	marshal:   appendInt64PackedSliceValue,
+	unmarshal: consumeInt64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSint64 returns the size of wire encoding a int64 pointer as a Sint64.
+func sizeSint64(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int64()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v))
+}
+
+// appendSint64 wire encodes a int64 pointer as a Sint64.
+func appendSint64(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(v))
+	return b, nil
+}
+
+// consumeSint64 wire decodes a int64 pointer as a Sint64.
+func consumeSint64(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int64() = protowire.DecodeZigZag(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSint64 = pointerCoderFuncs{
+	size:      sizeSint64,
+	marshal:   appendSint64,
+	unmarshal: consumeSint64,
+	merge:     mergeInt64,
+}
+
+// sizeSint64NoZero returns the size of wire encoding a int64 pointer as a Sint64.
+// The zero value is not encoded.
+func sizeSint64NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int64()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v))
+}
+
+// appendSint64NoZero wire encodes a int64 pointer as a Sint64.
+// The zero value is not encoded.
+func appendSint64NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(v))
+	return b, nil
+}
+
+var coderSint64NoZero = pointerCoderFuncs{
+	size:      sizeSint64NoZero,
+	marshal:   appendSint64NoZero,
+	unmarshal: consumeSint64,
+	merge:     mergeInt64NoZero,
+}
+
+// sizeSint64Ptr returns the size of wire encoding a *int64 pointer as a Sint64.
+// It panics if the pointer is nil.
+func sizeSint64Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Int64Ptr()
+	return f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v))
+}
+
+// appendSint64Ptr wire encodes a *int64 pointer as a Sint64.
+// It panics if the pointer is nil.
+func appendSint64Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(v))
+	return b, nil
+}
+
+// consumeSint64Ptr wire decodes a *int64 pointer as a Sint64.
+func consumeSint64Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int64Ptr()
+	if *vp == nil {
+		*vp = new(int64)
+	}
+	**vp = protowire.DecodeZigZag(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSint64Ptr = pointerCoderFuncs{
+	size:      sizeSint64Ptr,
+	marshal:   appendSint64Ptr,
+	unmarshal: consumeSint64Ptr,
+	merge:     mergeInt64Ptr,
+}
+
+// sizeSint64Slice returns the size of wire encoding a []int64 pointer as a repeated Sint64.
+func sizeSint64Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v))
+	}
+	return size
+}
+
+// appendSint64Slice encodes a []int64 pointer as a repeated Sint64.
+func appendSint64Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(v))
+	}
+	return b, nil
+}
+
+// consumeSint64Slice wire decodes a []int64 pointer as a repeated Sint64.
+func consumeSint64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, protowire.DecodeZigZag(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, protowire.DecodeZigZag(v))
+	out.n = n
+	return out, nil
+}
+
+var coderSint64Slice = pointerCoderFuncs{
+	size:      sizeSint64Slice,
+	marshal:   appendSint64Slice,
+	unmarshal: consumeSint64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeSint64PackedSlice returns the size of wire encoding a []int64 pointer as a packed repeated Sint64.
+func sizeSint64PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeZigZag(v))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendSint64PackedSlice encodes a []int64 pointer as a packed repeated Sint64.
+func appendSint64PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(protowire.EncodeZigZag(v))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(v))
+	}
+	return b, nil
+}
+
+var coderSint64PackedSlice = pointerCoderFuncs{
+	size:      sizeSint64PackedSlice,
+	marshal:   appendSint64PackedSlice,
+	unmarshal: consumeSint64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeSint64Value returns the size of wire encoding a int64 value as a Sint64.
+func sizeSint64Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v.Int()))
+}
+
+// appendSint64Value encodes a int64 value as a Sint64.
+func appendSint64Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, protowire.EncodeZigZag(v.Int()))
+	return b, nil
+}
+
+// consumeSint64Value decodes a int64 value as a Sint64.
+func consumeSint64Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)), out, nil
+}
+
+var coderSint64Value = valueCoderFuncs{
+	size:      sizeSint64Value,
+	marshal:   appendSint64Value,
+	unmarshal: consumeSint64Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeSint64SliceValue returns the size of wire encoding a []int64 value as a repeated Sint64.
+func sizeSint64SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(protowire.EncodeZigZag(v.Int()))
+	}
+	return size
+}
+
+// appendSint64SliceValue encodes a []int64 value as a repeated Sint64.
+func appendSint64SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(v.Int()))
+	}
+	return b, nil
+}
+
+// consumeSint64SliceValue wire decodes a []int64 value as a repeated Sint64.
+func consumeSint64SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderSint64SliceValue = valueCoderFuncs{
+	size:      sizeSint64SliceValue,
+	marshal:   appendSint64SliceValue,
+	unmarshal: consumeSint64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSint64PackedSliceValue returns the size of wire encoding a []int64 value as a packed repeated Sint64.
+func sizeSint64PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeZigZag(v.Int()))
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendSint64PackedSliceValue encodes a []int64 value as a packed repeated Sint64.
+func appendSint64PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(protowire.EncodeZigZag(v.Int()))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(v.Int()))
+	}
+	return b, nil
+}
+
+var coderSint64PackedSliceValue = valueCoderFuncs{
+	size:      sizeSint64PackedSliceValue,
+	marshal:   appendSint64PackedSliceValue,
+	unmarshal: consumeSint64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeUint64 returns the size of wire encoding a uint64 pointer as a Uint64.
+func sizeUint64(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint64()
+	return f.tagsize + protowire.SizeVarint(v)
+}
+
+// appendUint64 wire encodes a uint64 pointer as a Uint64.
+func appendUint64(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, v)
+	return b, nil
+}
+
+// consumeUint64 wire decodes a uint64 pointer as a Uint64.
+func consumeUint64(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Uint64() = v
+	out.n = n
+	return out, nil
+}
+
+var coderUint64 = pointerCoderFuncs{
+	size:      sizeUint64,
+	marshal:   appendUint64,
+	unmarshal: consumeUint64,
+	merge:     mergeUint64,
+}
+
+// sizeUint64NoZero returns the size of wire encoding a uint64 pointer as a Uint64.
+// The zero value is not encoded.
+func sizeUint64NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint64()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeVarint(v)
+}
+
+// appendUint64NoZero wire encodes a uint64 pointer as a Uint64.
+// The zero value is not encoded.
+func appendUint64NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint64()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, v)
+	return b, nil
+}
+
+var coderUint64NoZero = pointerCoderFuncs{
+	size:      sizeUint64NoZero,
+	marshal:   appendUint64NoZero,
+	unmarshal: consumeUint64,
+	merge:     mergeUint64NoZero,
+}
+
+// sizeUint64Ptr returns the size of wire encoding a *uint64 pointer as a Uint64.
+// It panics if the pointer is nil.
+func sizeUint64Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.Uint64Ptr()
+	return f.tagsize + protowire.SizeVarint(v)
+}
+
+// appendUint64Ptr wire encodes a *uint64 pointer as a Uint64.
+// It panics if the pointer is nil.
+func appendUint64Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Uint64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, v)
+	return b, nil
+}
+
+// consumeUint64Ptr wire decodes a *uint64 pointer as a Uint64.
+func consumeUint64Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Uint64Ptr()
+	if *vp == nil {
+		*vp = new(uint64)
+	}
+	**vp = v
+	out.n = n
+	return out, nil
+}
+
+var coderUint64Ptr = pointerCoderFuncs{
+	size:      sizeUint64Ptr,
+	marshal:   appendUint64Ptr,
+	unmarshal: consumeUint64Ptr,
+	merge:     mergeUint64Ptr,
+}
+
+// sizeUint64Slice returns the size of wire encoding a []uint64 pointer as a repeated Uint64.
+func sizeUint64Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint64Slice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeVarint(v)
+	}
+	return size
+}
+
+// appendUint64Slice encodes a []uint64 pointer as a repeated Uint64.
+func appendUint64Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, v)
+	}
+	return b, nil
+}
+
+// consumeUint64Slice wire decodes a []uint64 pointer as a repeated Uint64.
+func consumeUint64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Uint64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, v)
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, v)
+	out.n = n
+	return out, nil
+}
+
+var coderUint64Slice = pointerCoderFuncs{
+	size:      sizeUint64Slice,
+	marshal:   appendUint64Slice,
+	unmarshal: consumeUint64Slice,
+	merge:     mergeUint64Slice,
+}
+
+// sizeUint64PackedSlice returns the size of wire encoding a []uint64 pointer as a packed repeated Uint64.
+func sizeUint64PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(v)
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendUint64PackedSlice encodes a []uint64 pointer as a packed repeated Uint64.
+func appendUint64PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for _, v := range s {
+		n += protowire.SizeVarint(v)
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendVarint(b, v)
+	}
+	return b, nil
+}
+
+var coderUint64PackedSlice = pointerCoderFuncs{
+	size:      sizeUint64PackedSlice,
+	marshal:   appendUint64PackedSlice,
+	unmarshal: consumeUint64Slice,
+	merge:     mergeUint64Slice,
+}
+
+// sizeUint64Value returns the size of wire encoding a uint64 value as a Uint64.
+func sizeUint64Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeVarint(v.Uint())
+}
+
+// appendUint64Value encodes a uint64 value as a Uint64.
+func appendUint64Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendVarint(b, v.Uint())
+	return b, nil
+}
+
+// consumeUint64Value decodes a uint64 value as a Uint64.
+func consumeUint64Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfUint64(v), out, nil
+}
+
+var coderUint64Value = valueCoderFuncs{
+	size:      sizeUint64Value,
+	marshal:   appendUint64Value,
+	unmarshal: consumeUint64Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeUint64SliceValue returns the size of wire encoding a []uint64 value as a repeated Uint64.
+func sizeUint64SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeVarint(v.Uint())
+	}
+	return size
+}
+
+// appendUint64SliceValue encodes a []uint64 value as a repeated Uint64.
+func appendUint64SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendVarint(b, v.Uint())
+	}
+	return b, nil
+}
+
+// consumeUint64SliceValue wire decodes a []uint64 value as a repeated Uint64.
+func consumeUint64SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			var v uint64
+			var n int
+			if len(b) >= 1 && b[0] < 0x80 {
+				v = uint64(b[0])
+				n = 1
+			} else if len(b) >= 2 && b[1] < 128 {
+				v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				n = 2
+			} else {
+				v, n = protowire.ConsumeVarint(b)
+			}
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfUint64(v))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	var v uint64
+	var n int
+	if len(b) >= 1 && b[0] < 0x80 {
+		v = uint64(b[0])
+		n = 1
+	} else if len(b) >= 2 && b[1] < 128 {
+		v = uint64(b[0]&0x7f) + uint64(b[1])<<7
+		n = 2
+	} else {
+		v, n = protowire.ConsumeVarint(b)
+	}
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfUint64(v))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderUint64SliceValue = valueCoderFuncs{
+	size:      sizeUint64SliceValue,
+	marshal:   appendUint64SliceValue,
+	unmarshal: consumeUint64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeUint64PackedSliceValue returns the size of wire encoding a []uint64 value as a packed repeated Uint64.
+func sizeUint64PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i, llen := 0, llen; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(v.Uint())
+	}
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendUint64PackedSliceValue encodes a []uint64 value as a packed repeated Uint64.
+func appendUint64PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		n += protowire.SizeVarint(v.Uint())
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, v.Uint())
+	}
+	return b, nil
+}
+
+var coderUint64PackedSliceValue = valueCoderFuncs{
+	size:      sizeUint64PackedSliceValue,
+	marshal:   appendUint64PackedSliceValue,
+	unmarshal: consumeUint64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSfixed32 returns the size of wire encoding a int32 pointer as a Sfixed32.
+func sizeSfixed32(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendSfixed32 wire encodes a int32 pointer as a Sfixed32.
+func appendSfixed32(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, uint32(v))
+	return b, nil
+}
+
+// consumeSfixed32 wire decodes a int32 pointer as a Sfixed32.
+func consumeSfixed32(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int32() = int32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed32 = pointerCoderFuncs{
+	size:      sizeSfixed32,
+	marshal:   appendSfixed32,
+	unmarshal: consumeSfixed32,
+	merge:     mergeInt32,
+}
+
+// sizeSfixed32NoZero returns the size of wire encoding a int32 pointer as a Sfixed32.
+// The zero value is not encoded.
+func sizeSfixed32NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int32()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendSfixed32NoZero wire encodes a int32 pointer as a Sfixed32.
+// The zero value is not encoded.
+func appendSfixed32NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int32()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, uint32(v))
+	return b, nil
+}
+
+var coderSfixed32NoZero = pointerCoderFuncs{
+	size:      sizeSfixed32NoZero,
+	marshal:   appendSfixed32NoZero,
+	unmarshal: consumeSfixed32,
+	merge:     mergeInt32NoZero,
+}
+
+// sizeSfixed32Ptr returns the size of wire encoding a *int32 pointer as a Sfixed32.
+// It panics if the pointer is nil.
+func sizeSfixed32Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendSfixed32Ptr wire encodes a *int32 pointer as a Sfixed32.
+// It panics if the pointer is nil.
+func appendSfixed32Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, uint32(v))
+	return b, nil
+}
+
+// consumeSfixed32Ptr wire decodes a *int32 pointer as a Sfixed32.
+func consumeSfixed32Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int32Ptr()
+	if *vp == nil {
+		*vp = new(int32)
+	}
+	**vp = int32(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed32Ptr = pointerCoderFuncs{
+	size:      sizeSfixed32Ptr,
+	marshal:   appendSfixed32Ptr,
+	unmarshal: consumeSfixed32Ptr,
+	merge:     mergeInt32Ptr,
+}
+
+// sizeSfixed32Slice returns the size of wire encoding a []int32 pointer as a repeated Sfixed32.
+func sizeSfixed32Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendSfixed32Slice encodes a []int32 pointer as a repeated Sfixed32.
+func appendSfixed32Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed32(b, uint32(v))
+	}
+	return b, nil
+}
+
+// consumeSfixed32Slice wire decodes a []int32 pointer as a repeated Sfixed32.
+func consumeSfixed32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, int32(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, int32(v))
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed32Slice = pointerCoderFuncs{
+	size:      sizeSfixed32Slice,
+	marshal:   appendSfixed32Slice,
+	unmarshal: consumeSfixed32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeSfixed32PackedSlice returns the size of wire encoding a []int32 pointer as a packed repeated Sfixed32.
+func sizeSfixed32PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed32()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendSfixed32PackedSlice encodes a []int32 pointer as a packed repeated Sfixed32.
+func appendSfixed32PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed32(b, uint32(v))
+	}
+	return b, nil
+}
+
+var coderSfixed32PackedSlice = pointerCoderFuncs{
+	size:      sizeSfixed32PackedSlice,
+	marshal:   appendSfixed32PackedSlice,
+	unmarshal: consumeSfixed32Slice,
+	merge:     mergeInt32Slice,
+}
+
+// sizeSfixed32Value returns the size of wire encoding a int32 value as a Sfixed32.
+func sizeSfixed32Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed32()
+}
+
+// appendSfixed32Value encodes a int32 value as a Sfixed32.
+func appendSfixed32Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed32(b, uint32(v.Int()))
+	return b, nil
+}
+
+// consumeSfixed32Value decodes a int32 value as a Sfixed32.
+func consumeSfixed32Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt32(int32(v)), out, nil
+}
+
+var coderSfixed32Value = valueCoderFuncs{
+	size:      sizeSfixed32Value,
+	marshal:   appendSfixed32Value,
+	unmarshal: consumeSfixed32Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeSfixed32SliceValue returns the size of wire encoding a []int32 value as a repeated Sfixed32.
+func sizeSfixed32SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendSfixed32SliceValue encodes a []int32 value as a repeated Sfixed32.
+func appendSfixed32SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed32(b, uint32(v.Int()))
+	}
+	return b, nil
+}
+
+// consumeSfixed32SliceValue wire decodes a []int32 value as a repeated Sfixed32.
+func consumeSfixed32SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt32(int32(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt32(int32(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderSfixed32SliceValue = valueCoderFuncs{
+	size:      sizeSfixed32SliceValue,
+	marshal:   appendSfixed32SliceValue,
+	unmarshal: consumeSfixed32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSfixed32PackedSliceValue returns the size of wire encoding a []int32 value as a packed repeated Sfixed32.
+func sizeSfixed32PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed32()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendSfixed32PackedSliceValue encodes a []int32 value as a packed repeated Sfixed32.
+func appendSfixed32PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed32(b, uint32(v.Int()))
+	}
+	return b, nil
+}
+
+var coderSfixed32PackedSliceValue = valueCoderFuncs{
+	size:      sizeSfixed32PackedSliceValue,
+	marshal:   appendSfixed32PackedSliceValue,
+	unmarshal: consumeSfixed32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFixed32 returns the size of wire encoding a uint32 pointer as a Fixed32.
+func sizeFixed32(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFixed32 wire encodes a uint32 pointer as a Fixed32.
+func appendFixed32(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, v)
+	return b, nil
+}
+
+// consumeFixed32 wire decodes a uint32 pointer as a Fixed32.
+func consumeFixed32(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Uint32() = v
+	out.n = n
+	return out, nil
+}
+
+var coderFixed32 = pointerCoderFuncs{
+	size:      sizeFixed32,
+	marshal:   appendFixed32,
+	unmarshal: consumeFixed32,
+	merge:     mergeUint32,
+}
+
+// sizeFixed32NoZero returns the size of wire encoding a uint32 pointer as a Fixed32.
+// The zero value is not encoded.
+func sizeFixed32NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint32()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFixed32NoZero wire encodes a uint32 pointer as a Fixed32.
+// The zero value is not encoded.
+func appendFixed32NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint32()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, v)
+	return b, nil
+}
+
+var coderFixed32NoZero = pointerCoderFuncs{
+	size:      sizeFixed32NoZero,
+	marshal:   appendFixed32NoZero,
+	unmarshal: consumeFixed32,
+	merge:     mergeUint32NoZero,
+}
+
+// sizeFixed32Ptr returns the size of wire encoding a *uint32 pointer as a Fixed32.
+// It panics if the pointer is nil.
+func sizeFixed32Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFixed32Ptr wire encodes a *uint32 pointer as a Fixed32.
+// It panics if the pointer is nil.
+func appendFixed32Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Uint32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, v)
+	return b, nil
+}
+
+// consumeFixed32Ptr wire decodes a *uint32 pointer as a Fixed32.
+func consumeFixed32Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Uint32Ptr()
+	if *vp == nil {
+		*vp = new(uint32)
+	}
+	**vp = v
+	out.n = n
+	return out, nil
+}
+
+var coderFixed32Ptr = pointerCoderFuncs{
+	size:      sizeFixed32Ptr,
+	marshal:   appendFixed32Ptr,
+	unmarshal: consumeFixed32Ptr,
+	merge:     mergeUint32Ptr,
+}
+
+// sizeFixed32Slice returns the size of wire encoding a []uint32 pointer as a repeated Fixed32.
+func sizeFixed32Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint32Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendFixed32Slice encodes a []uint32 pointer as a repeated Fixed32.
+func appendFixed32Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed32(b, v)
+	}
+	return b, nil
+}
+
+// consumeFixed32Slice wire decodes a []uint32 pointer as a repeated Fixed32.
+func consumeFixed32Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Uint32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, v)
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, v)
+	out.n = n
+	return out, nil
+}
+
+var coderFixed32Slice = pointerCoderFuncs{
+	size:      sizeFixed32Slice,
+	marshal:   appendFixed32Slice,
+	unmarshal: consumeFixed32Slice,
+	merge:     mergeUint32Slice,
+}
+
+// sizeFixed32PackedSlice returns the size of wire encoding a []uint32 pointer as a packed repeated Fixed32.
+func sizeFixed32PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed32()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendFixed32PackedSlice encodes a []uint32 pointer as a packed repeated Fixed32.
+func appendFixed32PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed32(b, v)
+	}
+	return b, nil
+}
+
+var coderFixed32PackedSlice = pointerCoderFuncs{
+	size:      sizeFixed32PackedSlice,
+	marshal:   appendFixed32PackedSlice,
+	unmarshal: consumeFixed32Slice,
+	merge:     mergeUint32Slice,
+}
+
+// sizeFixed32Value returns the size of wire encoding a uint32 value as a Fixed32.
+func sizeFixed32Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed32()
+}
+
+// appendFixed32Value encodes a uint32 value as a Fixed32.
+func appendFixed32Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed32(b, uint32(v.Uint()))
+	return b, nil
+}
+
+// consumeFixed32Value decodes a uint32 value as a Fixed32.
+func consumeFixed32Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfUint32(uint32(v)), out, nil
+}
+
+var coderFixed32Value = valueCoderFuncs{
+	size:      sizeFixed32Value,
+	marshal:   appendFixed32Value,
+	unmarshal: consumeFixed32Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeFixed32SliceValue returns the size of wire encoding a []uint32 value as a repeated Fixed32.
+func sizeFixed32SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendFixed32SliceValue encodes a []uint32 value as a repeated Fixed32.
+func appendFixed32SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed32(b, uint32(v.Uint()))
+	}
+	return b, nil
+}
+
+// consumeFixed32SliceValue wire decodes a []uint32 value as a repeated Fixed32.
+func consumeFixed32SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfUint32(uint32(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfUint32(uint32(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderFixed32SliceValue = valueCoderFuncs{
+	size:      sizeFixed32SliceValue,
+	marshal:   appendFixed32SliceValue,
+	unmarshal: consumeFixed32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFixed32PackedSliceValue returns the size of wire encoding a []uint32 value as a packed repeated Fixed32.
+func sizeFixed32PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed32()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendFixed32PackedSliceValue encodes a []uint32 value as a packed repeated Fixed32.
+func appendFixed32PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed32(b, uint32(v.Uint()))
+	}
+	return b, nil
+}
+
+var coderFixed32PackedSliceValue = valueCoderFuncs{
+	size:      sizeFixed32PackedSliceValue,
+	marshal:   appendFixed32PackedSliceValue,
+	unmarshal: consumeFixed32SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFloat returns the size of wire encoding a float32 pointer as a Float.
+func sizeFloat(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFloat wire encodes a float32 pointer as a Float.
+func appendFloat(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Float32()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, math.Float32bits(v))
+	return b, nil
+}
+
+// consumeFloat wire decodes a float32 pointer as a Float.
+func consumeFloat(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Float32() = math.Float32frombits(v)
+	out.n = n
+	return out, nil
+}
+
+var coderFloat = pointerCoderFuncs{
+	size:      sizeFloat,
+	marshal:   appendFloat,
+	unmarshal: consumeFloat,
+	merge:     mergeFloat32,
+}
+
+// sizeFloatNoZero returns the size of wire encoding a float32 pointer as a Float.
+// The zero value is not encoded.
+func sizeFloatNoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Float32()
+	if v == 0 && !math.Signbit(float64(v)) {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFloatNoZero wire encodes a float32 pointer as a Float.
+// The zero value is not encoded.
+func appendFloatNoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Float32()
+	if v == 0 && !math.Signbit(float64(v)) {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, math.Float32bits(v))
+	return b, nil
+}
+
+var coderFloatNoZero = pointerCoderFuncs{
+	size:      sizeFloatNoZero,
+	marshal:   appendFloatNoZero,
+	unmarshal: consumeFloat,
+	merge:     mergeFloat32NoZero,
+}
+
+// sizeFloatPtr returns the size of wire encoding a *float32 pointer as a Float.
+// It panics if the pointer is nil.
+func sizeFloatPtr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed32()
+}
+
+// appendFloatPtr wire encodes a *float32 pointer as a Float.
+// It panics if the pointer is nil.
+func appendFloatPtr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Float32Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed32(b, math.Float32bits(v))
+	return b, nil
+}
+
+// consumeFloatPtr wire decodes a *float32 pointer as a Float.
+func consumeFloatPtr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Float32Ptr()
+	if *vp == nil {
+		*vp = new(float32)
+	}
+	**vp = math.Float32frombits(v)
+	out.n = n
+	return out, nil
+}
+
+var coderFloatPtr = pointerCoderFuncs{
+	size:      sizeFloatPtr,
+	marshal:   appendFloatPtr,
+	unmarshal: consumeFloatPtr,
+	merge:     mergeFloat32Ptr,
+}
+
+// sizeFloatSlice returns the size of wire encoding a []float32 pointer as a repeated Float.
+func sizeFloatSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Float32Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendFloatSlice encodes a []float32 pointer as a repeated Float.
+func appendFloatSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Float32Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed32(b, math.Float32bits(v))
+	}
+	return b, nil
+}
+
+// consumeFloatSlice wire decodes a []float32 pointer as a repeated Float.
+func consumeFloatSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Float32Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, math.Float32frombits(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, math.Float32frombits(v))
+	out.n = n
+	return out, nil
+}
+
+var coderFloatSlice = pointerCoderFuncs{
+	size:      sizeFloatSlice,
+	marshal:   appendFloatSlice,
+	unmarshal: consumeFloatSlice,
+	merge:     mergeFloat32Slice,
+}
+
+// sizeFloatPackedSlice returns the size of wire encoding a []float32 pointer as a packed repeated Float.
+func sizeFloatPackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Float32Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed32()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendFloatPackedSlice encodes a []float32 pointer as a packed repeated Float.
+func appendFloatPackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Float32Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed32(b, math.Float32bits(v))
+	}
+	return b, nil
+}
+
+var coderFloatPackedSlice = pointerCoderFuncs{
+	size:      sizeFloatPackedSlice,
+	marshal:   appendFloatPackedSlice,
+	unmarshal: consumeFloatSlice,
+	merge:     mergeFloat32Slice,
+}
+
+// sizeFloatValue returns the size of wire encoding a float32 value as a Float.
+func sizeFloatValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed32()
+}
+
+// appendFloatValue encodes a float32 value as a Float.
+func appendFloatValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed32(b, math.Float32bits(float32(v.Float())))
+	return b, nil
+}
+
+// consumeFloatValue decodes a float32 value as a Float.
+func consumeFloatValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))), out, nil
+}
+
+var coderFloatValue = valueCoderFuncs{
+	size:      sizeFloatValue,
+	marshal:   appendFloatValue,
+	unmarshal: consumeFloatValue,
+	merge:     mergeScalarValue,
+}
+
+// sizeFloatSliceValue returns the size of wire encoding a []float32 value as a repeated Float.
+func sizeFloatSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed32())
+	return size
+}
+
+// appendFloatSliceValue encodes a []float32 value as a repeated Float.
+func appendFloatSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed32(b, math.Float32bits(float32(v.Float())))
+	}
+	return b, nil
+}
+
+// consumeFloatSliceValue wire decodes a []float32 value as a repeated Float.
+func consumeFloatSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed32(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed32Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed32(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderFloatSliceValue = valueCoderFuncs{
+	size:      sizeFloatSliceValue,
+	marshal:   appendFloatSliceValue,
+	unmarshal: consumeFloatSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFloatPackedSliceValue returns the size of wire encoding a []float32 value as a packed repeated Float.
+func sizeFloatPackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed32()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendFloatPackedSliceValue encodes a []float32 value as a packed repeated Float.
+func appendFloatPackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed32()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed32(b, math.Float32bits(float32(v.Float())))
+	}
+	return b, nil
+}
+
+var coderFloatPackedSliceValue = valueCoderFuncs{
+	size:      sizeFloatPackedSliceValue,
+	marshal:   appendFloatPackedSliceValue,
+	unmarshal: consumeFloatSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSfixed64 returns the size of wire encoding a int64 pointer as a Sfixed64.
+func sizeSfixed64(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendSfixed64 wire encodes a int64 pointer as a Sfixed64.
+func appendSfixed64(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, uint64(v))
+	return b, nil
+}
+
+// consumeSfixed64 wire decodes a int64 pointer as a Sfixed64.
+func consumeSfixed64(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Int64() = int64(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed64 = pointerCoderFuncs{
+	size:      sizeSfixed64,
+	marshal:   appendSfixed64,
+	unmarshal: consumeSfixed64,
+	merge:     mergeInt64,
+}
+
+// sizeSfixed64NoZero returns the size of wire encoding a int64 pointer as a Sfixed64.
+// The zero value is not encoded.
+func sizeSfixed64NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Int64()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendSfixed64NoZero wire encodes a int64 pointer as a Sfixed64.
+// The zero value is not encoded.
+func appendSfixed64NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Int64()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, uint64(v))
+	return b, nil
+}
+
+var coderSfixed64NoZero = pointerCoderFuncs{
+	size:      sizeSfixed64NoZero,
+	marshal:   appendSfixed64NoZero,
+	unmarshal: consumeSfixed64,
+	merge:     mergeInt64NoZero,
+}
+
+// sizeSfixed64Ptr returns the size of wire encoding a *int64 pointer as a Sfixed64.
+// It panics if the pointer is nil.
+func sizeSfixed64Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendSfixed64Ptr wire encodes a *int64 pointer as a Sfixed64.
+// It panics if the pointer is nil.
+func appendSfixed64Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Int64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, uint64(v))
+	return b, nil
+}
+
+// consumeSfixed64Ptr wire decodes a *int64 pointer as a Sfixed64.
+func consumeSfixed64Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Int64Ptr()
+	if *vp == nil {
+		*vp = new(int64)
+	}
+	**vp = int64(v)
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed64Ptr = pointerCoderFuncs{
+	size:      sizeSfixed64Ptr,
+	marshal:   appendSfixed64Ptr,
+	unmarshal: consumeSfixed64Ptr,
+	merge:     mergeInt64Ptr,
+}
+
+// sizeSfixed64Slice returns the size of wire encoding a []int64 pointer as a repeated Sfixed64.
+func sizeSfixed64Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendSfixed64Slice encodes a []int64 pointer as a repeated Sfixed64.
+func appendSfixed64Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed64(b, uint64(v))
+	}
+	return b, nil
+}
+
+// consumeSfixed64Slice wire decodes a []int64 pointer as a repeated Sfixed64.
+func consumeSfixed64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Int64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, int64(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, int64(v))
+	out.n = n
+	return out, nil
+}
+
+var coderSfixed64Slice = pointerCoderFuncs{
+	size:      sizeSfixed64Slice,
+	marshal:   appendSfixed64Slice,
+	unmarshal: consumeSfixed64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeSfixed64PackedSlice returns the size of wire encoding a []int64 pointer as a packed repeated Sfixed64.
+func sizeSfixed64PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed64()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendSfixed64PackedSlice encodes a []int64 pointer as a packed repeated Sfixed64.
+func appendSfixed64PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Int64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed64(b, uint64(v))
+	}
+	return b, nil
+}
+
+var coderSfixed64PackedSlice = pointerCoderFuncs{
+	size:      sizeSfixed64PackedSlice,
+	marshal:   appendSfixed64PackedSlice,
+	unmarshal: consumeSfixed64Slice,
+	merge:     mergeInt64Slice,
+}
+
+// sizeSfixed64Value returns the size of wire encoding a int64 value as a Sfixed64.
+func sizeSfixed64Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed64()
+}
+
+// appendSfixed64Value encodes a int64 value as a Sfixed64.
+func appendSfixed64Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed64(b, uint64(v.Int()))
+	return b, nil
+}
+
+// consumeSfixed64Value decodes a int64 value as a Sfixed64.
+func consumeSfixed64Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfInt64(int64(v)), out, nil
+}
+
+var coderSfixed64Value = valueCoderFuncs{
+	size:      sizeSfixed64Value,
+	marshal:   appendSfixed64Value,
+	unmarshal: consumeSfixed64Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeSfixed64SliceValue returns the size of wire encoding a []int64 value as a repeated Sfixed64.
+func sizeSfixed64SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendSfixed64SliceValue encodes a []int64 value as a repeated Sfixed64.
+func appendSfixed64SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed64(b, uint64(v.Int()))
+	}
+	return b, nil
+}
+
+// consumeSfixed64SliceValue wire decodes a []int64 value as a repeated Sfixed64.
+func consumeSfixed64SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfInt64(int64(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfInt64(int64(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderSfixed64SliceValue = valueCoderFuncs{
+	size:      sizeSfixed64SliceValue,
+	marshal:   appendSfixed64SliceValue,
+	unmarshal: consumeSfixed64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeSfixed64PackedSliceValue returns the size of wire encoding a []int64 value as a packed repeated Sfixed64.
+func sizeSfixed64PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed64()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendSfixed64PackedSliceValue encodes a []int64 value as a packed repeated Sfixed64.
+func appendSfixed64PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed64(b, uint64(v.Int()))
+	}
+	return b, nil
+}
+
+var coderSfixed64PackedSliceValue = valueCoderFuncs{
+	size:      sizeSfixed64PackedSliceValue,
+	marshal:   appendSfixed64PackedSliceValue,
+	unmarshal: consumeSfixed64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFixed64 returns the size of wire encoding a uint64 pointer as a Fixed64.
+func sizeFixed64(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendFixed64 wire encodes a uint64 pointer as a Fixed64.
+func appendFixed64(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, v)
+	return b, nil
+}
+
+// consumeFixed64 wire decodes a uint64 pointer as a Fixed64.
+func consumeFixed64(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Uint64() = v
+	out.n = n
+	return out, nil
+}
+
+var coderFixed64 = pointerCoderFuncs{
+	size:      sizeFixed64,
+	marshal:   appendFixed64,
+	unmarshal: consumeFixed64,
+	merge:     mergeUint64,
+}
+
+// sizeFixed64NoZero returns the size of wire encoding a uint64 pointer as a Fixed64.
+// The zero value is not encoded.
+func sizeFixed64NoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Uint64()
+	if v == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendFixed64NoZero wire encodes a uint64 pointer as a Fixed64.
+// The zero value is not encoded.
+func appendFixed64NoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Uint64()
+	if v == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, v)
+	return b, nil
+}
+
+var coderFixed64NoZero = pointerCoderFuncs{
+	size:      sizeFixed64NoZero,
+	marshal:   appendFixed64NoZero,
+	unmarshal: consumeFixed64,
+	merge:     mergeUint64NoZero,
+}
+
+// sizeFixed64Ptr returns the size of wire encoding a *uint64 pointer as a Fixed64.
+// It panics if the pointer is nil.
+func sizeFixed64Ptr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendFixed64Ptr wire encodes a *uint64 pointer as a Fixed64.
+// It panics if the pointer is nil.
+func appendFixed64Ptr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Uint64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, v)
+	return b, nil
+}
+
+// consumeFixed64Ptr wire decodes a *uint64 pointer as a Fixed64.
+func consumeFixed64Ptr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Uint64Ptr()
+	if *vp == nil {
+		*vp = new(uint64)
+	}
+	**vp = v
+	out.n = n
+	return out, nil
+}
+
+var coderFixed64Ptr = pointerCoderFuncs{
+	size:      sizeFixed64Ptr,
+	marshal:   appendFixed64Ptr,
+	unmarshal: consumeFixed64Ptr,
+	merge:     mergeUint64Ptr,
+}
+
+// sizeFixed64Slice returns the size of wire encoding a []uint64 pointer as a repeated Fixed64.
+func sizeFixed64Slice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint64Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendFixed64Slice encodes a []uint64 pointer as a repeated Fixed64.
+func appendFixed64Slice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed64(b, v)
+	}
+	return b, nil
+}
+
+// consumeFixed64Slice wire decodes a []uint64 pointer as a repeated Fixed64.
+func consumeFixed64Slice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Uint64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, v)
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, v)
+	out.n = n
+	return out, nil
+}
+
+var coderFixed64Slice = pointerCoderFuncs{
+	size:      sizeFixed64Slice,
+	marshal:   appendFixed64Slice,
+	unmarshal: consumeFixed64Slice,
+	merge:     mergeUint64Slice,
+}
+
+// sizeFixed64PackedSlice returns the size of wire encoding a []uint64 pointer as a packed repeated Fixed64.
+func sizeFixed64PackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Uint64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed64()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendFixed64PackedSlice encodes a []uint64 pointer as a packed repeated Fixed64.
+func appendFixed64PackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Uint64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed64(b, v)
+	}
+	return b, nil
+}
+
+var coderFixed64PackedSlice = pointerCoderFuncs{
+	size:      sizeFixed64PackedSlice,
+	marshal:   appendFixed64PackedSlice,
+	unmarshal: consumeFixed64Slice,
+	merge:     mergeUint64Slice,
+}
+
+// sizeFixed64Value returns the size of wire encoding a uint64 value as a Fixed64.
+func sizeFixed64Value(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed64()
+}
+
+// appendFixed64Value encodes a uint64 value as a Fixed64.
+func appendFixed64Value(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed64(b, v.Uint())
+	return b, nil
+}
+
+// consumeFixed64Value decodes a uint64 value as a Fixed64.
+func consumeFixed64Value(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfUint64(v), out, nil
+}
+
+var coderFixed64Value = valueCoderFuncs{
+	size:      sizeFixed64Value,
+	marshal:   appendFixed64Value,
+	unmarshal: consumeFixed64Value,
+	merge:     mergeScalarValue,
+}
+
+// sizeFixed64SliceValue returns the size of wire encoding a []uint64 value as a repeated Fixed64.
+func sizeFixed64SliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendFixed64SliceValue encodes a []uint64 value as a repeated Fixed64.
+func appendFixed64SliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed64(b, v.Uint())
+	}
+	return b, nil
+}
+
+// consumeFixed64SliceValue wire decodes a []uint64 value as a repeated Fixed64.
+func consumeFixed64SliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfUint64(v))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfUint64(v))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderFixed64SliceValue = valueCoderFuncs{
+	size:      sizeFixed64SliceValue,
+	marshal:   appendFixed64SliceValue,
+	unmarshal: consumeFixed64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeFixed64PackedSliceValue returns the size of wire encoding a []uint64 value as a packed repeated Fixed64.
+func sizeFixed64PackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed64()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendFixed64PackedSliceValue encodes a []uint64 value as a packed repeated Fixed64.
+func appendFixed64PackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed64(b, v.Uint())
+	}
+	return b, nil
+}
+
+var coderFixed64PackedSliceValue = valueCoderFuncs{
+	size:      sizeFixed64PackedSliceValue,
+	marshal:   appendFixed64PackedSliceValue,
+	unmarshal: consumeFixed64SliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeDouble returns the size of wire encoding a float64 pointer as a Double.
+func sizeDouble(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendDouble wire encodes a float64 pointer as a Double.
+func appendDouble(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Float64()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, math.Float64bits(v))
+	return b, nil
+}
+
+// consumeDouble wire decodes a float64 pointer as a Double.
+func consumeDouble(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Float64() = math.Float64frombits(v)
+	out.n = n
+	return out, nil
+}
+
+var coderDouble = pointerCoderFuncs{
+	size:      sizeDouble,
+	marshal:   appendDouble,
+	unmarshal: consumeDouble,
+	merge:     mergeFloat64,
+}
+
+// sizeDoubleNoZero returns the size of wire encoding a float64 pointer as a Double.
+// The zero value is not encoded.
+func sizeDoubleNoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Float64()
+	if v == 0 && !math.Signbit(float64(v)) {
+		return 0
+	}
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendDoubleNoZero wire encodes a float64 pointer as a Double.
+// The zero value is not encoded.
+func appendDoubleNoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Float64()
+	if v == 0 && !math.Signbit(float64(v)) {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, math.Float64bits(v))
+	return b, nil
+}
+
+var coderDoubleNoZero = pointerCoderFuncs{
+	size:      sizeDoubleNoZero,
+	marshal:   appendDoubleNoZero,
+	unmarshal: consumeDouble,
+	merge:     mergeFloat64NoZero,
+}
+
+// sizeDoublePtr returns the size of wire encoding a *float64 pointer as a Double.
+// It panics if the pointer is nil.
+func sizeDoublePtr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	return f.tagsize + protowire.SizeFixed64()
+}
+
+// appendDoublePtr wire encodes a *float64 pointer as a Double.
+// It panics if the pointer is nil.
+func appendDoublePtr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.Float64Ptr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendFixed64(b, math.Float64bits(v))
+	return b, nil
+}
+
+// consumeDoublePtr wire decodes a *float64 pointer as a Double.
+func consumeDoublePtr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.Float64Ptr()
+	if *vp == nil {
+		*vp = new(float64)
+	}
+	**vp = math.Float64frombits(v)
+	out.n = n
+	return out, nil
+}
+
+var coderDoublePtr = pointerCoderFuncs{
+	size:      sizeDoublePtr,
+	marshal:   appendDoublePtr,
+	unmarshal: consumeDoublePtr,
+	merge:     mergeFloat64Ptr,
+}
+
+// sizeDoubleSlice returns the size of wire encoding a []float64 pointer as a repeated Double.
+func sizeDoubleSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Float64Slice()
+	size = len(s) * (f.tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendDoubleSlice encodes a []float64 pointer as a repeated Double.
+func appendDoubleSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Float64Slice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendFixed64(b, math.Float64bits(v))
+	}
+	return b, nil
+}
+
+// consumeDoubleSlice wire decodes a []float64 pointer as a repeated Double.
+func consumeDoubleSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.Float64Slice()
+	if wtyp == protowire.BytesType {
+		s := *sp
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			s = append(s, math.Float64frombits(v))
+			b = b[n:]
+		}
+		*sp = s
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, math.Float64frombits(v))
+	out.n = n
+	return out, nil
+}
+
+var coderDoubleSlice = pointerCoderFuncs{
+	size:      sizeDoubleSlice,
+	marshal:   appendDoubleSlice,
+	unmarshal: consumeDoubleSlice,
+	merge:     mergeFloat64Slice,
+}
+
+// sizeDoublePackedSlice returns the size of wire encoding a []float64 pointer as a packed repeated Double.
+func sizeDoublePackedSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.Float64Slice()
+	if len(s) == 0 {
+		return 0
+	}
+	n := len(s) * protowire.SizeFixed64()
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+// appendDoublePackedSlice encodes a []float64 pointer as a packed repeated Double.
+func appendDoublePackedSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.Float64Slice()
+	if len(s) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := len(s) * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for _, v := range s {
+		b = protowire.AppendFixed64(b, math.Float64bits(v))
+	}
+	return b, nil
+}
+
+var coderDoublePackedSlice = pointerCoderFuncs{
+	size:      sizeDoublePackedSlice,
+	marshal:   appendDoublePackedSlice,
+	unmarshal: consumeDoubleSlice,
+	merge:     mergeFloat64Slice,
+}
+
+// sizeDoubleValue returns the size of wire encoding a float64 value as a Double.
+func sizeDoubleValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeFixed64()
+}
+
+// appendDoubleValue encodes a float64 value as a Double.
+func appendDoubleValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendFixed64(b, math.Float64bits(v.Float()))
+	return b, nil
+}
+
+// consumeDoubleValue decodes a float64 value as a Double.
+func consumeDoubleValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfFloat64(math.Float64frombits(v)), out, nil
+}
+
+var coderDoubleValue = valueCoderFuncs{
+	size:      sizeDoubleValue,
+	marshal:   appendDoubleValue,
+	unmarshal: consumeDoubleValue,
+	merge:     mergeScalarValue,
+}
+
+// sizeDoubleSliceValue returns the size of wire encoding a []float64 value as a repeated Double.
+func sizeDoubleSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	size = list.Len() * (tagsize + protowire.SizeFixed64())
+	return size
+}
+
+// appendDoubleSliceValue encodes a []float64 value as a repeated Double.
+func appendDoubleSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendFixed64(b, math.Float64bits(v.Float()))
+	}
+	return b, nil
+}
+
+// consumeDoubleSliceValue wire decodes a []float64 value as a repeated Double.
+func consumeDoubleSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return protoreflect.Value{}, out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeFixed64(b)
+			if n < 0 {
+				return protoreflect.Value{}, out, protowire.ParseError(n)
+			}
+			list.Append(protoreflect.ValueOfFloat64(math.Float64frombits(v)))
+			b = b[n:]
+		}
+		out.n = n
+		return listv, out, nil
+	}
+	if wtyp != protowire.Fixed64Type {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeFixed64(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfFloat64(math.Float64frombits(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderDoubleSliceValue = valueCoderFuncs{
+	size:      sizeDoubleSliceValue,
+	marshal:   appendDoubleSliceValue,
+	unmarshal: consumeDoubleSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeDoublePackedSliceValue returns the size of wire encoding a []float64 value as a packed repeated Double.
+func sizeDoublePackedSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := llen * protowire.SizeFixed64()
+	return tagsize + protowire.SizeBytes(n)
+}
+
+// appendDoublePackedSliceValue encodes a []float64 value as a packed repeated Double.
+func appendDoublePackedSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	llen := list.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, wiretag)
+	n := llen * protowire.SizeFixed64()
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendFixed64(b, math.Float64bits(v.Float()))
+	}
+	return b, nil
+}
+
+var coderDoublePackedSliceValue = valueCoderFuncs{
+	size:      sizeDoublePackedSliceValue,
+	marshal:   appendDoublePackedSliceValue,
+	unmarshal: consumeDoubleSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeString returns the size of wire encoding a string pointer as a String.
+func sizeString(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.String()
+	return f.tagsize + protowire.SizeBytes(len(v))
+}
+
+// appendString wire encodes a string pointer as a String.
+func appendString(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.String()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	return b, nil
+}
+
+// consumeString wire decodes a string pointer as a String.
+func consumeString(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.String() = v
+	out.n = n
+	return out, nil
+}
+
+var coderString = pointerCoderFuncs{
+	size:      sizeString,
+	marshal:   appendString,
+	unmarshal: consumeString,
+	merge:     mergeString,
+}
+
+// appendStringValidateUTF8 wire encodes a string pointer as a String.
+func appendStringValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.String()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	if !utf8.ValidString(v) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+// consumeStringValidateUTF8 wire decodes a string pointer as a String.
+func consumeStringValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.ValidString(v) {
+		return out, errInvalidUTF8{}
+	}
+	*p.String() = v
+	out.n = n
+	return out, nil
+}
+
+var coderStringValidateUTF8 = pointerCoderFuncs{
+	size:      sizeString,
+	marshal:   appendStringValidateUTF8,
+	unmarshal: consumeStringValidateUTF8,
+	merge:     mergeString,
+}
+
+// sizeStringNoZero returns the size of wire encoding a string pointer as a String.
+// The zero value is not encoded.
+func sizeStringNoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.String()
+	if len(v) == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeBytes(len(v))
+}
+
+// appendStringNoZero wire encodes a string pointer as a String.
+// The zero value is not encoded.
+func appendStringNoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.String()
+	if len(v) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	return b, nil
+}
+
+var coderStringNoZero = pointerCoderFuncs{
+	size:      sizeStringNoZero,
+	marshal:   appendStringNoZero,
+	unmarshal: consumeString,
+	merge:     mergeStringNoZero,
+}
+
+// appendStringNoZeroValidateUTF8 wire encodes a string pointer as a String.
+// The zero value is not encoded.
+func appendStringNoZeroValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.String()
+	if len(v) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	if !utf8.ValidString(v) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+var coderStringNoZeroValidateUTF8 = pointerCoderFuncs{
+	size:      sizeStringNoZero,
+	marshal:   appendStringNoZeroValidateUTF8,
+	unmarshal: consumeStringValidateUTF8,
+	merge:     mergeStringNoZero,
+}
+
+// sizeStringPtr returns the size of wire encoding a *string pointer as a String.
+// It panics if the pointer is nil.
+func sizeStringPtr(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := **p.StringPtr()
+	return f.tagsize + protowire.SizeBytes(len(v))
+}
+
+// appendStringPtr wire encodes a *string pointer as a String.
+// It panics if the pointer is nil.
+func appendStringPtr(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.StringPtr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	return b, nil
+}
+
+// consumeStringPtr wire decodes a *string pointer as a String.
+func consumeStringPtr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	vp := p.StringPtr()
+	if *vp == nil {
+		*vp = new(string)
+	}
+	**vp = v
+	out.n = n
+	return out, nil
+}
+
+var coderStringPtr = pointerCoderFuncs{
+	size:      sizeStringPtr,
+	marshal:   appendStringPtr,
+	unmarshal: consumeStringPtr,
+	merge:     mergeStringPtr,
+}
+
+// appendStringPtrValidateUTF8 wire encodes a *string pointer as a String.
+// It panics if the pointer is nil.
+func appendStringPtrValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := **p.StringPtr()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendString(b, v)
+	if !utf8.ValidString(v) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+// consumeStringPtrValidateUTF8 wire decodes a *string pointer as a String.
+func consumeStringPtrValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.ValidString(v) {
+		return out, errInvalidUTF8{}
+	}
+	vp := p.StringPtr()
+	if *vp == nil {
+		*vp = new(string)
+	}
+	**vp = v
+	out.n = n
+	return out, nil
+}
+
+var coderStringPtrValidateUTF8 = pointerCoderFuncs{
+	size:      sizeStringPtr,
+	marshal:   appendStringPtrValidateUTF8,
+	unmarshal: consumeStringPtrValidateUTF8,
+	merge:     mergeStringPtr,
+}
+
+// sizeStringSlice returns the size of wire encoding a []string pointer as a repeated String.
+func sizeStringSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.StringSlice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeBytes(len(v))
+	}
+	return size
+}
+
+// appendStringSlice encodes a []string pointer as a repeated String.
+func appendStringSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.StringSlice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendString(b, v)
+	}
+	return b, nil
+}
+
+// consumeStringSlice wire decodes a []string pointer as a repeated String.
+func consumeStringSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.StringSlice()
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, v)
+	out.n = n
+	return out, nil
+}
+
+var coderStringSlice = pointerCoderFuncs{
+	size:      sizeStringSlice,
+	marshal:   appendStringSlice,
+	unmarshal: consumeStringSlice,
+	merge:     mergeStringSlice,
+}
+
+// appendStringSliceValidateUTF8 encodes a []string pointer as a repeated String.
+func appendStringSliceValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.StringSlice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendString(b, v)
+		if !utf8.ValidString(v) {
+			return b, errInvalidUTF8{}
+		}
+	}
+	return b, nil
+}
+
+// consumeStringSliceValidateUTF8 wire decodes a []string pointer as a repeated String.
+func consumeStringSliceValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.StringSlice()
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.ValidString(v) {
+		return out, errInvalidUTF8{}
+	}
+	*sp = append(*sp, v)
+	out.n = n
+	return out, nil
+}
+
+var coderStringSliceValidateUTF8 = pointerCoderFuncs{
+	size:      sizeStringSlice,
+	marshal:   appendStringSliceValidateUTF8,
+	unmarshal: consumeStringSliceValidateUTF8,
+	merge:     mergeStringSlice,
+}
+
+// sizeStringValue returns the size of wire encoding a string value as a String.
+func sizeStringValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeBytes(len(v.String()))
+}
+
+// appendStringValue encodes a string value as a String.
+func appendStringValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendString(b, v.String())
+	return b, nil
+}
+
+// consumeStringValue decodes a string value as a String.
+func consumeStringValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfString(string(v)), out, nil
+}
+
+var coderStringValue = valueCoderFuncs{
+	size:      sizeStringValue,
+	marshal:   appendStringValue,
+	unmarshal: consumeStringValue,
+	merge:     mergeScalarValue,
+}
+
+// appendStringValueValidateUTF8 encodes a string value as a String.
+func appendStringValueValidateUTF8(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendString(b, v.String())
+	if !utf8.ValidString(v.String()) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+// consumeStringValueValidateUTF8 decodes a string value as a String.
+func consumeStringValueValidateUTF8(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	if !utf8.ValidString(v) {
+		return protoreflect.Value{}, out, errInvalidUTF8{}
+	}
+	out.n = n
+	return protoreflect.ValueOfString(string(v)), out, nil
+}
+
+var coderStringValueValidateUTF8 = valueCoderFuncs{
+	size:      sizeStringValue,
+	marshal:   appendStringValueValidateUTF8,
+	unmarshal: consumeStringValueValidateUTF8,
+	merge:     mergeScalarValue,
+}
+
+// sizeStringSliceValue returns the size of wire encoding a []string value as a repeated String.
+func sizeStringSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeBytes(len(v.String()))
+	}
+	return size
+}
+
+// appendStringSliceValue encodes a []string value as a repeated String.
+func appendStringSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendString(b, v.String())
+	}
+	return b, nil
+}
+
+// consumeStringSliceValue wire decodes a []string value as a repeated String.
+func consumeStringSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp != protowire.BytesType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeString(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfString(string(v)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderStringSliceValue = valueCoderFuncs{
+	size:      sizeStringSliceValue,
+	marshal:   appendStringSliceValue,
+	unmarshal: consumeStringSliceValue,
+	merge:     mergeListValue,
+}
+
+// sizeBytes returns the size of wire encoding a []byte pointer as a Bytes.
+func sizeBytes(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Bytes()
+	return f.tagsize + protowire.SizeBytes(len(v))
+}
+
+// appendBytes wire encodes a []byte pointer as a Bytes.
+func appendBytes(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bytes()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendBytes(b, v)
+	return b, nil
+}
+
+// consumeBytes wire decodes a []byte pointer as a Bytes.
+func consumeBytes(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Bytes() = append(emptyBuf[:], v...)
+	out.n = n
+	return out, nil
+}
+
+var coderBytes = pointerCoderFuncs{
+	size:      sizeBytes,
+	marshal:   appendBytes,
+	unmarshal: consumeBytes,
+	merge:     mergeBytes,
+}
+
+// appendBytesValidateUTF8 wire encodes a []byte pointer as a Bytes.
+func appendBytesValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bytes()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendBytes(b, v)
+	if !utf8.Valid(v) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+// consumeBytesValidateUTF8 wire decodes a []byte pointer as a Bytes.
+func consumeBytesValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.Valid(v) {
+		return out, errInvalidUTF8{}
+	}
+	*p.Bytes() = append(emptyBuf[:], v...)
+	out.n = n
+	return out, nil
+}
+
+var coderBytesValidateUTF8 = pointerCoderFuncs{
+	size:      sizeBytes,
+	marshal:   appendBytesValidateUTF8,
+	unmarshal: consumeBytesValidateUTF8,
+	merge:     mergeBytes,
+}
+
+// sizeBytesNoZero returns the size of wire encoding a []byte pointer as a Bytes.
+// The zero value is not encoded.
+func sizeBytesNoZero(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := *p.Bytes()
+	if len(v) == 0 {
+		return 0
+	}
+	return f.tagsize + protowire.SizeBytes(len(v))
+}
+
+// appendBytesNoZero wire encodes a []byte pointer as a Bytes.
+// The zero value is not encoded.
+func appendBytesNoZero(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bytes()
+	if len(v) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendBytes(b, v)
+	return b, nil
+}
+
+// consumeBytesNoZero wire decodes a []byte pointer as a Bytes.
+// The zero value is not decoded.
+func consumeBytesNoZero(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*p.Bytes() = append(([]byte)(nil), v...)
+	out.n = n
+	return out, nil
+}
+
+var coderBytesNoZero = pointerCoderFuncs{
+	size:      sizeBytesNoZero,
+	marshal:   appendBytesNoZero,
+	unmarshal: consumeBytesNoZero,
+	merge:     mergeBytesNoZero,
+}
+
+// appendBytesNoZeroValidateUTF8 wire encodes a []byte pointer as a Bytes.
+// The zero value is not encoded.
+func appendBytesNoZeroValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	v := *p.Bytes()
+	if len(v) == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendBytes(b, v)
+	if !utf8.Valid(v) {
+		return b, errInvalidUTF8{}
+	}
+	return b, nil
+}
+
+// consumeBytesNoZeroValidateUTF8 wire decodes a []byte pointer as a Bytes.
+func consumeBytesNoZeroValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.Valid(v) {
+		return out, errInvalidUTF8{}
+	}
+	*p.Bytes() = append(([]byte)(nil), v...)
+	out.n = n
+	return out, nil
+}
+
+var coderBytesNoZeroValidateUTF8 = pointerCoderFuncs{
+	size:      sizeBytesNoZero,
+	marshal:   appendBytesNoZeroValidateUTF8,
+	unmarshal: consumeBytesNoZeroValidateUTF8,
+	merge:     mergeBytesNoZero,
+}
+
+// sizeBytesSlice returns the size of wire encoding a [][]byte pointer as a repeated Bytes.
+func sizeBytesSlice(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	s := *p.BytesSlice()
+	for _, v := range s {
+		size += f.tagsize + protowire.SizeBytes(len(v))
+	}
+	return size
+}
+
+// appendBytesSlice encodes a [][]byte pointer as a repeated Bytes.
+func appendBytesSlice(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.BytesSlice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendBytes(b, v)
+	}
+	return b, nil
+}
+
+// consumeBytesSlice wire decodes a [][]byte pointer as a repeated Bytes.
+func consumeBytesSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.BytesSlice()
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	*sp = append(*sp, append(emptyBuf[:], v...))
+	out.n = n
+	return out, nil
+}
+
+var coderBytesSlice = pointerCoderFuncs{
+	size:      sizeBytesSlice,
+	marshal:   appendBytesSlice,
+	unmarshal: consumeBytesSlice,
+	merge:     mergeBytesSlice,
+}
+
+// appendBytesSliceValidateUTF8 encodes a [][]byte pointer as a repeated Bytes.
+func appendBytesSliceValidateUTF8(b []byte, p pointer, f *coderFieldInfo, _ marshalOptions) ([]byte, error) {
+	s := *p.BytesSlice()
+	for _, v := range s {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendBytes(b, v)
+		if !utf8.Valid(v) {
+			return b, errInvalidUTF8{}
+		}
+	}
+	return b, nil
+}
+
+// consumeBytesSliceValidateUTF8 wire decodes a [][]byte pointer as a repeated Bytes.
+func consumeBytesSliceValidateUTF8(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	sp := p.BytesSlice()
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	if !utf8.Valid(v) {
+		return out, errInvalidUTF8{}
+	}
+	*sp = append(*sp, append(emptyBuf[:], v...))
+	out.n = n
+	return out, nil
+}
+
+var coderBytesSliceValidateUTF8 = pointerCoderFuncs{
+	size:      sizeBytesSlice,
+	marshal:   appendBytesSliceValidateUTF8,
+	unmarshal: consumeBytesSliceValidateUTF8,
+	merge:     mergeBytesSlice,
+}
+
+// sizeBytesValue returns the size of wire encoding a []byte value as a Bytes.
+func sizeBytesValue(v protoreflect.Value, tagsize int, _ marshalOptions) int {
+	return tagsize + protowire.SizeBytes(len(v.Bytes()))
+}
+
+// appendBytesValue encodes a []byte value as a Bytes.
+func appendBytesValue(b []byte, v protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	b = protowire.AppendVarint(b, wiretag)
+	b = protowire.AppendBytes(b, v.Bytes())
+	return b, nil
+}
+
+// consumeBytesValue decodes a []byte value as a Bytes.
+func consumeBytesValue(b []byte, _ protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	out.n = n
+	return protoreflect.ValueOfBytes(append(emptyBuf[:], v...)), out, nil
+}
+
+var coderBytesValue = valueCoderFuncs{
+	size:      sizeBytesValue,
+	marshal:   appendBytesValue,
+	unmarshal: consumeBytesValue,
+	merge:     mergeBytesValue,
+}
+
+// sizeBytesSliceValue returns the size of wire encoding a [][]byte value as a repeated Bytes.
+func sizeBytesSliceValue(listv protoreflect.Value, tagsize int, _ marshalOptions) (size int) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		size += tagsize + protowire.SizeBytes(len(v.Bytes()))
+	}
+	return size
+}
+
+// appendBytesSliceValue encodes a [][]byte value as a repeated Bytes.
+func appendBytesSliceValue(b []byte, listv protoreflect.Value, wiretag uint64, _ marshalOptions) ([]byte, error) {
+	list := listv.List()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		v := list.Get(i)
+		b = protowire.AppendVarint(b, wiretag)
+		b = protowire.AppendBytes(b, v.Bytes())
+	}
+	return b, nil
+}
+
+// consumeBytesSliceValue wire decodes a [][]byte value as a repeated Bytes.
+func consumeBytesSliceValue(b []byte, listv protoreflect.Value, _ protowire.Number, wtyp protowire.Type, _ unmarshalOptions) (_ protoreflect.Value, out unmarshalOutput, err error) {
+	list := listv.List()
+	if wtyp != protowire.BytesType {
+		return protoreflect.Value{}, out, errUnknown
+	}
+	v, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return protoreflect.Value{}, out, protowire.ParseError(n)
+	}
+	list.Append(protoreflect.ValueOfBytes(append(emptyBuf[:], v...)))
+	out.n = n
+	return listv, out, nil
+}
+
+var coderBytesSliceValue = valueCoderFuncs{
+	size:      sizeBytesSliceValue,
+	marshal:   appendBytesSliceValue,
+	unmarshal: consumeBytesSliceValue,
+	merge:     mergeBytesListValue,
+}
+
+// We append to an empty array rather than a nil []byte to get non-nil zero-length byte slices.
+var emptyBuf [0]byte
+
+var wireTypes = map[protoreflect.Kind]protowire.Type{
+	protoreflect.BoolKind:     protowire.VarintType,
+	protoreflect.EnumKind:     protowire.VarintType,
+	protoreflect.Int32Kind:    protowire.VarintType,
+	protoreflect.Sint32Kind:   protowire.VarintType,
+	protoreflect.Uint32Kind:   protowire.VarintType,
+	protoreflect.Int64Kind:    protowire.VarintType,
+	protoreflect.Sint64Kind:   protowire.VarintType,
+	protoreflect.Uint64Kind:   protowire.VarintType,
+	protoreflect.Sfixed32Kind: protowire.Fixed32Type,
+	protoreflect.Fixed32Kind:  protowire.Fixed32Type,
+	protoreflect.FloatKind:    protowire.Fixed32Type,
+	protoreflect.Sfixed64Kind: protowire.Fixed64Type,
+	protoreflect.Fixed64Kind:  protowire.Fixed64Type,
+	protoreflect.DoubleKind:   protowire.Fixed64Type,
+	protoreflect.StringKind:   protowire.BytesType,
+	protoreflect.BytesKind:    protowire.BytesType,
+	protoreflect.MessageKind:  protowire.BytesType,
+	protoreflect.GroupKind:    protowire.StartGroupType,
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_map.go b/vendor/google.golang.org/protobuf/internal/impl/codec_map.go
new file mode 100644
index 0000000..44885a7
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_map.go
@@ -0,0 +1,389 @@
+// 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 impl
+
+import (
+	"errors"
+	"reflect"
+	"sort"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/genid"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type mapInfo struct {
+	goType     reflect.Type
+	keyWiretag uint64
+	valWiretag uint64
+	keyFuncs   valueCoderFuncs
+	valFuncs   valueCoderFuncs
+	keyZero    pref.Value
+	keyKind    pref.Kind
+	conv       *mapConverter
+}
+
+func encoderFuncsForMap(fd pref.FieldDescriptor, ft reflect.Type) (valueMessage *MessageInfo, funcs pointerCoderFuncs) {
+	// TODO: Consider generating specialized map coders.
+	keyField := fd.MapKey()
+	valField := fd.MapValue()
+	keyWiretag := protowire.EncodeTag(1, wireTypes[keyField.Kind()])
+	valWiretag := protowire.EncodeTag(2, wireTypes[valField.Kind()])
+	keyFuncs := encoderFuncsForValue(keyField)
+	valFuncs := encoderFuncsForValue(valField)
+	conv := newMapConverter(ft, fd)
+
+	mapi := &mapInfo{
+		goType:     ft,
+		keyWiretag: keyWiretag,
+		valWiretag: valWiretag,
+		keyFuncs:   keyFuncs,
+		valFuncs:   valFuncs,
+		keyZero:    keyField.Default(),
+		keyKind:    keyField.Kind(),
+		conv:       conv,
+	}
+	if valField.Kind() == pref.MessageKind {
+		valueMessage = getMessageInfo(ft.Elem())
+	}
+
+	funcs = pointerCoderFuncs{
+		size: func(p pointer, f *coderFieldInfo, opts marshalOptions) int {
+			return sizeMap(p.AsValueOf(ft).Elem(), mapi, f, opts)
+		},
+		marshal: func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+			return appendMap(b, p.AsValueOf(ft).Elem(), mapi, f, opts)
+		},
+		unmarshal: func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error) {
+			mp := p.AsValueOf(ft)
+			if mp.Elem().IsNil() {
+				mp.Elem().Set(reflect.MakeMap(mapi.goType))
+			}
+			if f.mi == nil {
+				return consumeMap(b, mp.Elem(), wtyp, mapi, f, opts)
+			} else {
+				return consumeMapOfMessage(b, mp.Elem(), wtyp, mapi, f, opts)
+			}
+		},
+	}
+	switch valField.Kind() {
+	case pref.MessageKind:
+		funcs.merge = mergeMapOfMessage
+	case pref.BytesKind:
+		funcs.merge = mergeMapOfBytes
+	default:
+		funcs.merge = mergeMap
+	}
+	if valFuncs.isInit != nil {
+		funcs.isInit = func(p pointer, f *coderFieldInfo) error {
+			return isInitMap(p.AsValueOf(ft).Elem(), mapi, f)
+		}
+	}
+	return valueMessage, funcs
+}
+
+const (
+	mapKeyTagSize = 1 // field 1, tag size 1.
+	mapValTagSize = 1 // field 2, tag size 2.
+)
+
+func sizeMap(mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) int {
+	if mapv.Len() == 0 {
+		return 0
+	}
+	n := 0
+	iter := mapRange(mapv)
+	for iter.Next() {
+		key := mapi.conv.keyConv.PBValueOf(iter.Key()).MapKey()
+		keySize := mapi.keyFuncs.size(key.Value(), mapKeyTagSize, opts)
+		var valSize int
+		value := mapi.conv.valConv.PBValueOf(iter.Value())
+		if f.mi == nil {
+			valSize = mapi.valFuncs.size(value, mapValTagSize, opts)
+		} else {
+			p := pointerOfValue(iter.Value())
+			valSize += mapValTagSize
+			valSize += protowire.SizeBytes(f.mi.sizePointer(p, opts))
+		}
+		n += f.tagsize + protowire.SizeBytes(keySize+valSize)
+	}
+	return n
+}
+
+func consumeMap(b []byte, mapv reflect.Value, wtyp protowire.Type, mapi *mapInfo, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	b, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	var (
+		key = mapi.keyZero
+		val = mapi.conv.valConv.New()
+	)
+	for len(b) > 0 {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		if num > protowire.MaxValidNumber {
+			return out, errors.New("invalid field number")
+		}
+		b = b[n:]
+		err := errUnknown
+		switch num {
+		case genid.MapEntry_Key_field_number:
+			var v pref.Value
+			var o unmarshalOutput
+			v, o, err = mapi.keyFuncs.unmarshal(b, key, num, wtyp, opts)
+			if err != nil {
+				break
+			}
+			key = v
+			n = o.n
+		case genid.MapEntry_Value_field_number:
+			var v pref.Value
+			var o unmarshalOutput
+			v, o, err = mapi.valFuncs.unmarshal(b, val, num, wtyp, opts)
+			if err != nil {
+				break
+			}
+			val = v
+			n = o.n
+		}
+		if err == errUnknown {
+			n = protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+		} else if err != nil {
+			return out, err
+		}
+		b = b[n:]
+	}
+	mapv.SetMapIndex(mapi.conv.keyConv.GoValueOf(key), mapi.conv.valConv.GoValueOf(val))
+	out.n = n
+	return out, nil
+}
+
+func consumeMapOfMessage(b []byte, mapv reflect.Value, wtyp protowire.Type, mapi *mapInfo, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.BytesType {
+		return out, errUnknown
+	}
+	b, n := protowire.ConsumeBytes(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	var (
+		key = mapi.keyZero
+		val = reflect.New(f.mi.GoReflectType.Elem())
+	)
+	for len(b) > 0 {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		if num > protowire.MaxValidNumber {
+			return out, errors.New("invalid field number")
+		}
+		b = b[n:]
+		err := errUnknown
+		switch num {
+		case 1:
+			var v pref.Value
+			var o unmarshalOutput
+			v, o, err = mapi.keyFuncs.unmarshal(b, key, num, wtyp, opts)
+			if err != nil {
+				break
+			}
+			key = v
+			n = o.n
+		case 2:
+			if wtyp != protowire.BytesType {
+				break
+			}
+			var v []byte
+			v, n = protowire.ConsumeBytes(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			var o unmarshalOutput
+			o, err = f.mi.unmarshalPointer(v, pointerOfValue(val), 0, opts)
+			if o.initialized {
+				// Consider this map item initialized so long as we see
+				// an initialized value.
+				out.initialized = true
+			}
+		}
+		if err == errUnknown {
+			n = protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+		} else if err != nil {
+			return out, err
+		}
+		b = b[n:]
+	}
+	mapv.SetMapIndex(mapi.conv.keyConv.GoValueOf(key), val)
+	out.n = n
+	return out, nil
+}
+
+func appendMapItem(b []byte, keyrv, valrv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	if f.mi == nil {
+		key := mapi.conv.keyConv.PBValueOf(keyrv).MapKey()
+		val := mapi.conv.valConv.PBValueOf(valrv)
+		size := 0
+		size += mapi.keyFuncs.size(key.Value(), mapKeyTagSize, opts)
+		size += mapi.valFuncs.size(val, mapValTagSize, opts)
+		b = protowire.AppendVarint(b, uint64(size))
+		b, err := mapi.keyFuncs.marshal(b, key.Value(), mapi.keyWiretag, opts)
+		if err != nil {
+			return nil, err
+		}
+		return mapi.valFuncs.marshal(b, val, mapi.valWiretag, opts)
+	} else {
+		key := mapi.conv.keyConv.PBValueOf(keyrv).MapKey()
+		val := pointerOfValue(valrv)
+		valSize := f.mi.sizePointer(val, opts)
+		size := 0
+		size += mapi.keyFuncs.size(key.Value(), mapKeyTagSize, opts)
+		size += mapValTagSize + protowire.SizeBytes(valSize)
+		b = protowire.AppendVarint(b, uint64(size))
+		b, err := mapi.keyFuncs.marshal(b, key.Value(), mapi.keyWiretag, opts)
+		if err != nil {
+			return nil, err
+		}
+		b = protowire.AppendVarint(b, mapi.valWiretag)
+		b = protowire.AppendVarint(b, uint64(valSize))
+		return f.mi.marshalAppendPointer(b, val, opts)
+	}
+}
+
+func appendMap(b []byte, mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	if mapv.Len() == 0 {
+		return b, nil
+	}
+	if opts.Deterministic() {
+		return appendMapDeterministic(b, mapv, mapi, f, opts)
+	}
+	iter := mapRange(mapv)
+	for iter.Next() {
+		var err error
+		b = protowire.AppendVarint(b, f.wiretag)
+		b, err = appendMapItem(b, iter.Key(), iter.Value(), mapi, f, opts)
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func appendMapDeterministic(b []byte, mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	keys := mapv.MapKeys()
+	sort.Slice(keys, func(i, j int) bool {
+		switch keys[i].Kind() {
+		case reflect.Bool:
+			return !keys[i].Bool() && keys[j].Bool()
+		case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
+			return keys[i].Int() < keys[j].Int()
+		case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
+			return keys[i].Uint() < keys[j].Uint()
+		case reflect.Float32, reflect.Float64:
+			return keys[i].Float() < keys[j].Float()
+		case reflect.String:
+			return keys[i].String() < keys[j].String()
+		default:
+			panic("invalid kind: " + keys[i].Kind().String())
+		}
+	})
+	for _, key := range keys {
+		var err error
+		b = protowire.AppendVarint(b, f.wiretag)
+		b, err = appendMapItem(b, key, mapv.MapIndex(key), mapi, f, opts)
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func isInitMap(mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo) error {
+	if mi := f.mi; mi != nil {
+		mi.init()
+		if !mi.needsInitCheck {
+			return nil
+		}
+		iter := mapRange(mapv)
+		for iter.Next() {
+			val := pointerOfValue(iter.Value())
+			if err := mi.checkInitializedPointer(val); err != nil {
+				return err
+			}
+		}
+	} else {
+		iter := mapRange(mapv)
+		for iter.Next() {
+			val := mapi.conv.valConv.PBValueOf(iter.Value())
+			if err := mapi.valFuncs.isInit(val); err != nil {
+				return err
+			}
+		}
+	}
+	return nil
+}
+
+func mergeMap(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+	dstm := dst.AsValueOf(f.ft).Elem()
+	srcm := src.AsValueOf(f.ft).Elem()
+	if srcm.Len() == 0 {
+		return
+	}
+	if dstm.IsNil() {
+		dstm.Set(reflect.MakeMap(f.ft))
+	}
+	iter := mapRange(srcm)
+	for iter.Next() {
+		dstm.SetMapIndex(iter.Key(), iter.Value())
+	}
+}
+
+func mergeMapOfBytes(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+	dstm := dst.AsValueOf(f.ft).Elem()
+	srcm := src.AsValueOf(f.ft).Elem()
+	if srcm.Len() == 0 {
+		return
+	}
+	if dstm.IsNil() {
+		dstm.Set(reflect.MakeMap(f.ft))
+	}
+	iter := mapRange(srcm)
+	for iter.Next() {
+		dstm.SetMapIndex(iter.Key(), reflect.ValueOf(append(emptyBuf[:], iter.Value().Bytes()...)))
+	}
+}
+
+func mergeMapOfMessage(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+	dstm := dst.AsValueOf(f.ft).Elem()
+	srcm := src.AsValueOf(f.ft).Elem()
+	if srcm.Len() == 0 {
+		return
+	}
+	if dstm.IsNil() {
+		dstm.Set(reflect.MakeMap(f.ft))
+	}
+	iter := mapRange(srcm)
+	for iter.Next() {
+		val := reflect.New(f.ft.Elem().Elem())
+		if f.mi != nil {
+			f.mi.mergePointer(pointerOfValue(val), pointerOfValue(iter.Value()), opts)
+		} else {
+			opts.Merge(asMessage(val), asMessage(iter.Value()))
+		}
+		dstm.SetMapIndex(iter.Key(), val)
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go b/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
new file mode 100644
index 0000000..2706bb6
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go
@@ -0,0 +1,37 @@
+// 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 !go1.12
+
+package impl
+
+import "reflect"
+
+type mapIter struct {
+	v    reflect.Value
+	keys []reflect.Value
+}
+
+// mapRange provides a less-efficient equivalent to
+// the Go 1.12 reflect.Value.MapRange method.
+func mapRange(v reflect.Value) *mapIter {
+	return &mapIter{v: v}
+}
+
+func (i *mapIter) Next() bool {
+	if i.keys == nil {
+		i.keys = i.v.MapKeys()
+	} else {
+		i.keys = i.keys[1:]
+	}
+	return len(i.keys) > 0
+}
+
+func (i *mapIter) Key() reflect.Value {
+	return i.keys[0]
+}
+
+func (i *mapIter) Value() reflect.Value {
+	return i.v.MapIndex(i.keys[0])
+}
diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go b/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
similarity index 54%
rename from vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
rename to vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
index 0e3f25a..1533ef6 100644
--- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go
@@ -2,10 +2,10 @@
 // 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
+// +build go1.12
 
-package unix
+package impl
 
-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
-	return 0, ENOSYS
-}
+import "reflect"
+
+func mapRange(v reflect.Value) *reflect.MapIter { return v.MapRange() }
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_message.go b/vendor/google.golang.org/protobuf/internal/impl/codec_message.go
new file mode 100644
index 0000000..0e176d5
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_message.go
@@ -0,0 +1,159 @@
+// 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 impl
+
+import (
+	"fmt"
+	"reflect"
+	"sort"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/fieldsort"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// coderMessageInfo contains per-message information used by the fast-path functions.
+// This is a different type from MessageInfo to keep MessageInfo as general-purpose as
+// possible.
+type coderMessageInfo struct {
+	methods piface.Methods
+
+	orderedCoderFields []*coderFieldInfo
+	denseCoderFields   []*coderFieldInfo
+	coderFields        map[protowire.Number]*coderFieldInfo
+	sizecacheOffset    offset
+	unknownOffset      offset
+	extensionOffset    offset
+	needsInitCheck     bool
+	isMessageSet       bool
+	numRequiredFields  uint8
+}
+
+type coderFieldInfo struct {
+	funcs      pointerCoderFuncs // fast-path per-field functions
+	mi         *MessageInfo      // field's message
+	ft         reflect.Type
+	validation validationInfo   // information used by message validation
+	num        pref.FieldNumber // field number
+	offset     offset           // struct field offset
+	wiretag    uint64           // field tag (number + wire type)
+	tagsize    int              // size of the varint-encoded tag
+	isPointer  bool             // true if IsNil may be called on the struct field
+	isRequired bool             // true if field is required
+}
+
+func (mi *MessageInfo) makeCoderMethods(t reflect.Type, si structInfo) {
+	mi.sizecacheOffset = si.sizecacheOffset
+	mi.unknownOffset = si.unknownOffset
+	mi.extensionOffset = si.extensionOffset
+
+	mi.coderFields = make(map[protowire.Number]*coderFieldInfo)
+	fields := mi.Desc.Fields()
+	preallocFields := make([]coderFieldInfo, fields.Len())
+	for i := 0; i < fields.Len(); i++ {
+		fd := fields.Get(i)
+
+		fs := si.fieldsByNumber[fd.Number()]
+		isOneof := fd.ContainingOneof() != nil && !fd.ContainingOneof().IsSynthetic()
+		if isOneof {
+			fs = si.oneofsByName[fd.ContainingOneof().Name()]
+		}
+		ft := fs.Type
+		var wiretag uint64
+		if !fd.IsPacked() {
+			wiretag = protowire.EncodeTag(fd.Number(), wireTypes[fd.Kind()])
+		} else {
+			wiretag = protowire.EncodeTag(fd.Number(), protowire.BytesType)
+		}
+		var fieldOffset offset
+		var funcs pointerCoderFuncs
+		var childMessage *MessageInfo
+		switch {
+		case isOneof:
+			fieldOffset = offsetOf(fs, mi.Exporter)
+		case fd.IsWeak():
+			fieldOffset = si.weakOffset
+			funcs = makeWeakMessageFieldCoder(fd)
+		default:
+			fieldOffset = offsetOf(fs, mi.Exporter)
+			childMessage, funcs = fieldCoder(fd, ft)
+		}
+		cf := &preallocFields[i]
+		*cf = coderFieldInfo{
+			num:        fd.Number(),
+			offset:     fieldOffset,
+			wiretag:    wiretag,
+			ft:         ft,
+			tagsize:    protowire.SizeVarint(wiretag),
+			funcs:      funcs,
+			mi:         childMessage,
+			validation: newFieldValidationInfo(mi, si, fd, ft),
+			isPointer:  fd.Cardinality() == pref.Repeated || fd.HasPresence(),
+			isRequired: fd.Cardinality() == pref.Required,
+		}
+		mi.orderedCoderFields = append(mi.orderedCoderFields, cf)
+		mi.coderFields[cf.num] = cf
+	}
+	for i, oneofs := 0, mi.Desc.Oneofs(); i < oneofs.Len(); i++ {
+		if od := oneofs.Get(i); !od.IsSynthetic() {
+			mi.initOneofFieldCoders(od, si)
+		}
+	}
+	if messageset.IsMessageSet(mi.Desc) {
+		if !mi.extensionOffset.IsValid() {
+			panic(fmt.Sprintf("%v: MessageSet with no extensions field", mi.Desc.FullName()))
+		}
+		if !mi.unknownOffset.IsValid() {
+			panic(fmt.Sprintf("%v: MessageSet with no unknown field", mi.Desc.FullName()))
+		}
+		mi.isMessageSet = true
+	}
+	sort.Slice(mi.orderedCoderFields, func(i, j int) bool {
+		return mi.orderedCoderFields[i].num < mi.orderedCoderFields[j].num
+	})
+
+	var maxDense pref.FieldNumber
+	for _, cf := range mi.orderedCoderFields {
+		if cf.num >= 16 && cf.num >= 2*maxDense {
+			break
+		}
+		maxDense = cf.num
+	}
+	mi.denseCoderFields = make([]*coderFieldInfo, maxDense+1)
+	for _, cf := range mi.orderedCoderFields {
+		if int(cf.num) >= len(mi.denseCoderFields) {
+			break
+		}
+		mi.denseCoderFields[cf.num] = cf
+	}
+
+	// To preserve compatibility with historic wire output, marshal oneofs last.
+	if mi.Desc.Oneofs().Len() > 0 {
+		sort.Slice(mi.orderedCoderFields, func(i, j int) bool {
+			fi := fields.ByNumber(mi.orderedCoderFields[i].num)
+			fj := fields.ByNumber(mi.orderedCoderFields[j].num)
+			return fieldsort.Less(fi, fj)
+		})
+	}
+
+	mi.needsInitCheck = needsInitCheck(mi.Desc)
+	if mi.methods.Marshal == nil && mi.methods.Size == nil {
+		mi.methods.Flags |= piface.SupportMarshalDeterministic
+		mi.methods.Marshal = mi.marshal
+		mi.methods.Size = mi.size
+	}
+	if mi.methods.Unmarshal == nil {
+		mi.methods.Flags |= piface.SupportUnmarshalDiscardUnknown
+		mi.methods.Unmarshal = mi.unmarshal
+	}
+	if mi.methods.CheckInitialized == nil {
+		mi.methods.CheckInitialized = mi.checkInitialized
+	}
+	if mi.methods.Merge == nil {
+		mi.methods.Merge = mi.merge
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go b/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go
new file mode 100644
index 0000000..cfb68e1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go
@@ -0,0 +1,120 @@
+// 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 impl
+
+import (
+	"sort"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+)
+
+func sizeMessageSet(mi *MessageInfo, p pointer, opts marshalOptions) (size int) {
+	if !flags.ProtoLegacy {
+		return 0
+	}
+
+	ext := *p.Apply(mi.extensionOffset).Extensions()
+	for _, x := range ext {
+		xi := getExtensionFieldInfo(x.Type())
+		if xi.funcs.size == nil {
+			continue
+		}
+		num, _ := protowire.DecodeTag(xi.wiretag)
+		size += messageset.SizeField(num)
+		size += xi.funcs.size(x.Value(), protowire.SizeTag(messageset.FieldMessage), opts)
+	}
+
+	unknown := *p.Apply(mi.unknownOffset).Bytes()
+	size += messageset.SizeUnknown(unknown)
+
+	return size
+}
+
+func marshalMessageSet(mi *MessageInfo, b []byte, p pointer, opts marshalOptions) ([]byte, error) {
+	if !flags.ProtoLegacy {
+		return b, errors.New("no support for message_set_wire_format")
+	}
+
+	ext := *p.Apply(mi.extensionOffset).Extensions()
+	switch len(ext) {
+	case 0:
+	case 1:
+		// Fast-path for one extension: Don't bother sorting the keys.
+		for _, x := range ext {
+			var err error
+			b, err = marshalMessageSetField(mi, b, x, opts)
+			if err != nil {
+				return b, err
+			}
+		}
+	default:
+		// Sort the keys to provide a deterministic encoding.
+		// Not sure this is required, but the old code does it.
+		keys := make([]int, 0, len(ext))
+		for k := range ext {
+			keys = append(keys, int(k))
+		}
+		sort.Ints(keys)
+		for _, k := range keys {
+			var err error
+			b, err = marshalMessageSetField(mi, b, ext[int32(k)], opts)
+			if err != nil {
+				return b, err
+			}
+		}
+	}
+
+	unknown := *p.Apply(mi.unknownOffset).Bytes()
+	b, err := messageset.AppendUnknown(b, unknown)
+	if err != nil {
+		return b, err
+	}
+
+	return b, nil
+}
+
+func marshalMessageSetField(mi *MessageInfo, b []byte, x ExtensionField, opts marshalOptions) ([]byte, error) {
+	xi := getExtensionFieldInfo(x.Type())
+	num, _ := protowire.DecodeTag(xi.wiretag)
+	b = messageset.AppendFieldStart(b, num)
+	b, err := xi.funcs.marshal(b, x.Value(), protowire.EncodeTag(messageset.FieldMessage, protowire.BytesType), opts)
+	if err != nil {
+		return b, err
+	}
+	b = messageset.AppendFieldEnd(b)
+	return b, nil
+}
+
+func unmarshalMessageSet(mi *MessageInfo, b []byte, p pointer, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if !flags.ProtoLegacy {
+		return out, errors.New("no support for message_set_wire_format")
+	}
+
+	ep := p.Apply(mi.extensionOffset).Extensions()
+	if *ep == nil {
+		*ep = make(map[int32]ExtensionField)
+	}
+	ext := *ep
+	unknown := p.Apply(mi.unknownOffset).Bytes()
+	initialized := true
+	err = messageset.Unmarshal(b, true, func(num protowire.Number, v []byte) error {
+		o, err := mi.unmarshalExtension(v, num, protowire.BytesType, ext, opts)
+		if err == errUnknown {
+			*unknown = protowire.AppendTag(*unknown, num, protowire.BytesType)
+			*unknown = append(*unknown, v...)
+			return nil
+		}
+		if !o.initialized {
+			initialized = false
+		}
+		return err
+	})
+	out.n = len(b)
+	out.initialized = initialized
+	return out, err
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go b/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go
new file mode 100644
index 0000000..86f7dc3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go
@@ -0,0 +1,209 @@
+// 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 purego appengine
+
+package impl
+
+import (
+	"reflect"
+
+	"google.golang.org/protobuf/encoding/protowire"
+)
+
+func sizeEnum(p pointer, f *coderFieldInfo, _ marshalOptions) (size int) {
+	v := p.v.Elem().Int()
+	return f.tagsize + protowire.SizeVarint(uint64(v))
+}
+
+func appendEnum(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	v := p.v.Elem().Int()
+	b = protowire.AppendVarint(b, f.wiretag)
+	b = protowire.AppendVarint(b, uint64(v))
+	return b, nil
+}
+
+func consumeEnum(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, _ unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeVarint(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	p.v.Elem().SetInt(int64(v))
+	out.n = n
+	return out, nil
+}
+
+func mergeEnum(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	dst.v.Elem().Set(src.v.Elem())
+}
+
+var coderEnum = pointerCoderFuncs{
+	size:      sizeEnum,
+	marshal:   appendEnum,
+	unmarshal: consumeEnum,
+	merge:     mergeEnum,
+}
+
+func sizeEnumNoZero(p pointer, f *coderFieldInfo, opts marshalOptions) (size int) {
+	if p.v.Elem().Int() == 0 {
+		return 0
+	}
+	return sizeEnum(p, f, opts)
+}
+
+func appendEnumNoZero(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	if p.v.Elem().Int() == 0 {
+		return b, nil
+	}
+	return appendEnum(b, p, f, opts)
+}
+
+func mergeEnumNoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	if src.v.Elem().Int() != 0 {
+		dst.v.Elem().Set(src.v.Elem())
+	}
+}
+
+var coderEnumNoZero = pointerCoderFuncs{
+	size:      sizeEnumNoZero,
+	marshal:   appendEnumNoZero,
+	unmarshal: consumeEnum,
+	merge:     mergeEnumNoZero,
+}
+
+func sizeEnumPtr(p pointer, f *coderFieldInfo, opts marshalOptions) (size int) {
+	return sizeEnum(pointer{p.v.Elem()}, f, opts)
+}
+
+func appendEnumPtr(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	return appendEnum(b, pointer{p.v.Elem()}, f, opts)
+}
+
+func consumeEnumPtr(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	if p.v.Elem().IsNil() {
+		p.v.Elem().Set(reflect.New(p.v.Elem().Type().Elem()))
+	}
+	return consumeEnum(b, pointer{p.v.Elem()}, wtyp, f, opts)
+}
+
+func mergeEnumPtr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	if !src.v.Elem().IsNil() {
+		v := reflect.New(dst.v.Type().Elem().Elem())
+		v.Elem().Set(src.v.Elem().Elem())
+		dst.v.Elem().Set(v)
+	}
+}
+
+var coderEnumPtr = pointerCoderFuncs{
+	size:      sizeEnumPtr,
+	marshal:   appendEnumPtr,
+	unmarshal: consumeEnumPtr,
+	merge:     mergeEnumPtr,
+}
+
+func sizeEnumSlice(p pointer, f *coderFieldInfo, opts marshalOptions) (size int) {
+	s := p.v.Elem()
+	for i, llen := 0, s.Len(); i < llen; i++ {
+		size += protowire.SizeVarint(uint64(s.Index(i).Int())) + f.tagsize
+	}
+	return size
+}
+
+func appendEnumSlice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	s := p.v.Elem()
+	for i, llen := 0, s.Len(); i < llen; i++ {
+		b = protowire.AppendVarint(b, f.wiretag)
+		b = protowire.AppendVarint(b, uint64(s.Index(i).Int()))
+	}
+	return b, nil
+}
+
+func consumeEnumSlice(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	s := p.v.Elem()
+	if wtyp == protowire.BytesType {
+		b, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, protowire.ParseError(n)
+		}
+		for len(b) > 0 {
+			v, n := protowire.ConsumeVarint(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			rv := reflect.New(s.Type().Elem()).Elem()
+			rv.SetInt(int64(v))
+			s.Set(reflect.Append(s, rv))
+			b = b[n:]
+		}
+		out.n = n
+		return out, nil
+	}
+	if wtyp != protowire.VarintType {
+		return out, errUnknown
+	}
+	v, n := protowire.ConsumeVarint(b)
+	if n < 0 {
+		return out, protowire.ParseError(n)
+	}
+	rv := reflect.New(s.Type().Elem()).Elem()
+	rv.SetInt(int64(v))
+	s.Set(reflect.Append(s, rv))
+	out.n = n
+	return out, nil
+}
+
+func mergeEnumSlice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	dst.v.Elem().Set(reflect.AppendSlice(dst.v.Elem(), src.v.Elem()))
+}
+
+var coderEnumSlice = pointerCoderFuncs{
+	size:      sizeEnumSlice,
+	marshal:   appendEnumSlice,
+	unmarshal: consumeEnumSlice,
+	merge:     mergeEnumSlice,
+}
+
+func sizeEnumPackedSlice(p pointer, f *coderFieldInfo, opts marshalOptions) (size int) {
+	s := p.v.Elem()
+	llen := s.Len()
+	if llen == 0 {
+		return 0
+	}
+	n := 0
+	for i := 0; i < llen; i++ {
+		n += protowire.SizeVarint(uint64(s.Index(i).Int()))
+	}
+	return f.tagsize + protowire.SizeBytes(n)
+}
+
+func appendEnumPackedSlice(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
+	s := p.v.Elem()
+	llen := s.Len()
+	if llen == 0 {
+		return b, nil
+	}
+	b = protowire.AppendVarint(b, f.wiretag)
+	n := 0
+	for i := 0; i < llen; i++ {
+		n += protowire.SizeVarint(uint64(s.Index(i).Int()))
+	}
+	b = protowire.AppendVarint(b, uint64(n))
+	for i := 0; i < llen; i++ {
+		b = protowire.AppendVarint(b, uint64(s.Index(i).Int()))
+	}
+	return b, nil
+}
+
+var coderEnumPackedSlice = pointerCoderFuncs{
+	size:      sizeEnumPackedSlice,
+	marshal:   appendEnumPackedSlice,
+	unmarshal: consumeEnumSlice,
+	merge:     mergeEnumSlice,
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go b/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go
new file mode 100644
index 0000000..e899712
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go
@@ -0,0 +1,557 @@
+// 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 impl
+
+import (
+	"fmt"
+	"reflect"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/strs"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// pointerCoderFuncs is a set of pointer encoding functions.
+type pointerCoderFuncs struct {
+	mi        *MessageInfo
+	size      func(p pointer, f *coderFieldInfo, opts marshalOptions) int
+	marshal   func(b []byte, p pointer, f *coderFieldInfo, opts marshalOptions) ([]byte, error)
+	unmarshal func(b []byte, p pointer, wtyp protowire.Type, f *coderFieldInfo, opts unmarshalOptions) (unmarshalOutput, error)
+	isInit    func(p pointer, f *coderFieldInfo) error
+	merge     func(dst, src pointer, f *coderFieldInfo, opts mergeOptions)
+}
+
+// valueCoderFuncs is a set of protoreflect.Value encoding functions.
+type valueCoderFuncs struct {
+	size      func(v pref.Value, tagsize int, opts marshalOptions) int
+	marshal   func(b []byte, v pref.Value, wiretag uint64, opts marshalOptions) ([]byte, error)
+	unmarshal func(b []byte, v pref.Value, num protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (pref.Value, unmarshalOutput, error)
+	isInit    func(v pref.Value) error
+	merge     func(dst, src pref.Value, opts mergeOptions) pref.Value
+}
+
+// fieldCoder returns pointer functions for a field, used for operating on
+// struct fields.
+func fieldCoder(fd pref.FieldDescriptor, ft reflect.Type) (*MessageInfo, pointerCoderFuncs) {
+	switch {
+	case fd.IsMap():
+		return encoderFuncsForMap(fd, ft)
+	case fd.Cardinality() == pref.Repeated && !fd.IsPacked():
+		// Repeated fields (not packed).
+		if ft.Kind() != reflect.Slice {
+			break
+		}
+		ft := ft.Elem()
+		switch fd.Kind() {
+		case pref.BoolKind:
+			if ft.Kind() == reflect.Bool {
+				return nil, coderBoolSlice
+			}
+		case pref.EnumKind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderEnumSlice
+			}
+		case pref.Int32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderInt32Slice
+			}
+		case pref.Sint32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSint32Slice
+			}
+		case pref.Uint32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderUint32Slice
+			}
+		case pref.Int64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderInt64Slice
+			}
+		case pref.Sint64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSint64Slice
+			}
+		case pref.Uint64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderUint64Slice
+			}
+		case pref.Sfixed32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSfixed32Slice
+			}
+		case pref.Fixed32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderFixed32Slice
+			}
+		case pref.FloatKind:
+			if ft.Kind() == reflect.Float32 {
+				return nil, coderFloatSlice
+			}
+		case pref.Sfixed64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSfixed64Slice
+			}
+		case pref.Fixed64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderFixed64Slice
+			}
+		case pref.DoubleKind:
+			if ft.Kind() == reflect.Float64 {
+				return nil, coderDoubleSlice
+			}
+		case pref.StringKind:
+			if ft.Kind() == reflect.String && strs.EnforceUTF8(fd) {
+				return nil, coderStringSliceValidateUTF8
+			}
+			if ft.Kind() == reflect.String {
+				return nil, coderStringSlice
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 && strs.EnforceUTF8(fd) {
+				return nil, coderBytesSliceValidateUTF8
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytesSlice
+			}
+		case pref.BytesKind:
+			if ft.Kind() == reflect.String {
+				return nil, coderStringSlice
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytesSlice
+			}
+		case pref.MessageKind:
+			return getMessageInfo(ft), makeMessageSliceFieldCoder(fd, ft)
+		case pref.GroupKind:
+			return getMessageInfo(ft), makeGroupSliceFieldCoder(fd, ft)
+		}
+	case fd.Cardinality() == pref.Repeated && fd.IsPacked():
+		// Packed repeated fields.
+		//
+		// Only repeated fields of primitive numeric types
+		// (Varint, Fixed32, or Fixed64 wire type) can be packed.
+		if ft.Kind() != reflect.Slice {
+			break
+		}
+		ft := ft.Elem()
+		switch fd.Kind() {
+		case pref.BoolKind:
+			if ft.Kind() == reflect.Bool {
+				return nil, coderBoolPackedSlice
+			}
+		case pref.EnumKind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderEnumPackedSlice
+			}
+		case pref.Int32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderInt32PackedSlice
+			}
+		case pref.Sint32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSint32PackedSlice
+			}
+		case pref.Uint32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderUint32PackedSlice
+			}
+		case pref.Int64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderInt64PackedSlice
+			}
+		case pref.Sint64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSint64PackedSlice
+			}
+		case pref.Uint64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderUint64PackedSlice
+			}
+		case pref.Sfixed32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSfixed32PackedSlice
+			}
+		case pref.Fixed32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderFixed32PackedSlice
+			}
+		case pref.FloatKind:
+			if ft.Kind() == reflect.Float32 {
+				return nil, coderFloatPackedSlice
+			}
+		case pref.Sfixed64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSfixed64PackedSlice
+			}
+		case pref.Fixed64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderFixed64PackedSlice
+			}
+		case pref.DoubleKind:
+			if ft.Kind() == reflect.Float64 {
+				return nil, coderDoublePackedSlice
+			}
+		}
+	case fd.Kind() == pref.MessageKind:
+		return getMessageInfo(ft), makeMessageFieldCoder(fd, ft)
+	case fd.Kind() == pref.GroupKind:
+		return getMessageInfo(ft), makeGroupFieldCoder(fd, ft)
+	case fd.Syntax() == pref.Proto3 && fd.ContainingOneof() == nil:
+		// Populated oneof fields always encode even if set to the zero value,
+		// which normally are not encoded in proto3.
+		switch fd.Kind() {
+		case pref.BoolKind:
+			if ft.Kind() == reflect.Bool {
+				return nil, coderBoolNoZero
+			}
+		case pref.EnumKind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderEnumNoZero
+			}
+		case pref.Int32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderInt32NoZero
+			}
+		case pref.Sint32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSint32NoZero
+			}
+		case pref.Uint32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderUint32NoZero
+			}
+		case pref.Int64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderInt64NoZero
+			}
+		case pref.Sint64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSint64NoZero
+			}
+		case pref.Uint64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderUint64NoZero
+			}
+		case pref.Sfixed32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSfixed32NoZero
+			}
+		case pref.Fixed32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderFixed32NoZero
+			}
+		case pref.FloatKind:
+			if ft.Kind() == reflect.Float32 {
+				return nil, coderFloatNoZero
+			}
+		case pref.Sfixed64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSfixed64NoZero
+			}
+		case pref.Fixed64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderFixed64NoZero
+			}
+		case pref.DoubleKind:
+			if ft.Kind() == reflect.Float64 {
+				return nil, coderDoubleNoZero
+			}
+		case pref.StringKind:
+			if ft.Kind() == reflect.String && strs.EnforceUTF8(fd) {
+				return nil, coderStringNoZeroValidateUTF8
+			}
+			if ft.Kind() == reflect.String {
+				return nil, coderStringNoZero
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 && strs.EnforceUTF8(fd) {
+				return nil, coderBytesNoZeroValidateUTF8
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytesNoZero
+			}
+		case pref.BytesKind:
+			if ft.Kind() == reflect.String {
+				return nil, coderStringNoZero
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytesNoZero
+			}
+		}
+	case ft.Kind() == reflect.Ptr:
+		ft := ft.Elem()
+		switch fd.Kind() {
+		case pref.BoolKind:
+			if ft.Kind() == reflect.Bool {
+				return nil, coderBoolPtr
+			}
+		case pref.EnumKind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderEnumPtr
+			}
+		case pref.Int32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderInt32Ptr
+			}
+		case pref.Sint32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSint32Ptr
+			}
+		case pref.Uint32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderUint32Ptr
+			}
+		case pref.Int64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderInt64Ptr
+			}
+		case pref.Sint64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSint64Ptr
+			}
+		case pref.Uint64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderUint64Ptr
+			}
+		case pref.Sfixed32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSfixed32Ptr
+			}
+		case pref.Fixed32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderFixed32Ptr
+			}
+		case pref.FloatKind:
+			if ft.Kind() == reflect.Float32 {
+				return nil, coderFloatPtr
+			}
+		case pref.Sfixed64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSfixed64Ptr
+			}
+		case pref.Fixed64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderFixed64Ptr
+			}
+		case pref.DoubleKind:
+			if ft.Kind() == reflect.Float64 {
+				return nil, coderDoublePtr
+			}
+		case pref.StringKind:
+			if ft.Kind() == reflect.String && strs.EnforceUTF8(fd) {
+				return nil, coderStringPtrValidateUTF8
+			}
+			if ft.Kind() == reflect.String {
+				return nil, coderStringPtr
+			}
+		case pref.BytesKind:
+			if ft.Kind() == reflect.String {
+				return nil, coderStringPtr
+			}
+		}
+	default:
+		switch fd.Kind() {
+		case pref.BoolKind:
+			if ft.Kind() == reflect.Bool {
+				return nil, coderBool
+			}
+		case pref.EnumKind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderEnum
+			}
+		case pref.Int32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderInt32
+			}
+		case pref.Sint32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSint32
+			}
+		case pref.Uint32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderUint32
+			}
+		case pref.Int64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderInt64
+			}
+		case pref.Sint64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSint64
+			}
+		case pref.Uint64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderUint64
+			}
+		case pref.Sfixed32Kind:
+			if ft.Kind() == reflect.Int32 {
+				return nil, coderSfixed32
+			}
+		case pref.Fixed32Kind:
+			if ft.Kind() == reflect.Uint32 {
+				return nil, coderFixed32
+			}
+		case pref.FloatKind:
+			if ft.Kind() == reflect.Float32 {
+				return nil, coderFloat
+			}
+		case pref.Sfixed64Kind:
+			if ft.Kind() == reflect.Int64 {
+				return nil, coderSfixed64
+			}
+		case pref.Fixed64Kind:
+			if ft.Kind() == reflect.Uint64 {
+				return nil, coderFixed64
+			}
+		case pref.DoubleKind:
+			if ft.Kind() == reflect.Float64 {
+				return nil, coderDouble
+			}
+		case pref.StringKind:
+			if ft.Kind() == reflect.String && strs.EnforceUTF8(fd) {
+				return nil, coderStringValidateUTF8
+			}
+			if ft.Kind() == reflect.String {
+				return nil, coderString
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 && strs.EnforceUTF8(fd) {
+				return nil, coderBytesValidateUTF8
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytes
+			}
+		case pref.BytesKind:
+			if ft.Kind() == reflect.String {
+				return nil, coderString
+			}
+			if ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8 {
+				return nil, coderBytes
+			}
+		}
+	}
+	panic(fmt.Sprintf("invalid type: no encoder for %v %v %v/%v", fd.FullName(), fd.Cardinality(), fd.Kind(), ft))
+}
+
+// encoderFuncsForValue returns value functions for a field, used for
+// extension values and map encoding.
+func encoderFuncsForValue(fd pref.FieldDescriptor) valueCoderFuncs {
+	switch {
+	case fd.Cardinality() == pref.Repeated && !fd.IsPacked():
+		switch fd.Kind() {
+		case pref.BoolKind:
+			return coderBoolSliceValue
+		case pref.EnumKind:
+			return coderEnumSliceValue
+		case pref.Int32Kind:
+			return coderInt32SliceValue
+		case pref.Sint32Kind:
+			return coderSint32SliceValue
+		case pref.Uint32Kind:
+			return coderUint32SliceValue
+		case pref.Int64Kind:
+			return coderInt64SliceValue
+		case pref.Sint64Kind:
+			return coderSint64SliceValue
+		case pref.Uint64Kind:
+			return coderUint64SliceValue
+		case pref.Sfixed32Kind:
+			return coderSfixed32SliceValue
+		case pref.Fixed32Kind:
+			return coderFixed32SliceValue
+		case pref.FloatKind:
+			return coderFloatSliceValue
+		case pref.Sfixed64Kind:
+			return coderSfixed64SliceValue
+		case pref.Fixed64Kind:
+			return coderFixed64SliceValue
+		case pref.DoubleKind:
+			return coderDoubleSliceValue
+		case pref.StringKind:
+			// We don't have a UTF-8 validating coder for repeated string fields.
+			// Value coders are used for extensions and maps.
+			// Extensions are never proto3, and maps never contain lists.
+			return coderStringSliceValue
+		case pref.BytesKind:
+			return coderBytesSliceValue
+		case pref.MessageKind:
+			return coderMessageSliceValue
+		case pref.GroupKind:
+			return coderGroupSliceValue
+		}
+	case fd.Cardinality() == pref.Repeated && fd.IsPacked():
+		switch fd.Kind() {
+		case pref.BoolKind:
+			return coderBoolPackedSliceValue
+		case pref.EnumKind:
+			return coderEnumPackedSliceValue
+		case pref.Int32Kind:
+			return coderInt32PackedSliceValue
+		case pref.Sint32Kind:
+			return coderSint32PackedSliceValue
+		case pref.Uint32Kind:
+			return coderUint32PackedSliceValue
+		case pref.Int64Kind:
+			return coderInt64PackedSliceValue
+		case pref.Sint64Kind:
+			return coderSint64PackedSliceValue
+		case pref.Uint64Kind:
+			return coderUint64PackedSliceValue
+		case pref.Sfixed32Kind:
+			return coderSfixed32PackedSliceValue
+		case pref.Fixed32Kind:
+			return coderFixed32PackedSliceValue
+		case pref.FloatKind:
+			return coderFloatPackedSliceValue
+		case pref.Sfixed64Kind:
+			return coderSfixed64PackedSliceValue
+		case pref.Fixed64Kind:
+			return coderFixed64PackedSliceValue
+		case pref.DoubleKind:
+			return coderDoublePackedSliceValue
+		}
+	default:
+		switch fd.Kind() {
+		default:
+		case pref.BoolKind:
+			return coderBoolValue
+		case pref.EnumKind:
+			return coderEnumValue
+		case pref.Int32Kind:
+			return coderInt32Value
+		case pref.Sint32Kind:
+			return coderSint32Value
+		case pref.Uint32Kind:
+			return coderUint32Value
+		case pref.Int64Kind:
+			return coderInt64Value
+		case pref.Sint64Kind:
+			return coderSint64Value
+		case pref.Uint64Kind:
+			return coderUint64Value
+		case pref.Sfixed32Kind:
+			return coderSfixed32Value
+		case pref.Fixed32Kind:
+			return coderFixed32Value
+		case pref.FloatKind:
+			return coderFloatValue
+		case pref.Sfixed64Kind:
+			return coderSfixed64Value
+		case pref.Fixed64Kind:
+			return coderFixed64Value
+		case pref.DoubleKind:
+			return coderDoubleValue
+		case pref.StringKind:
+			if strs.EnforceUTF8(fd) {
+				return coderStringValueValidateUTF8
+			}
+			return coderStringValue
+		case pref.BytesKind:
+			return coderBytesValue
+		case pref.MessageKind:
+			return coderMessageValue
+		case pref.GroupKind:
+			return coderGroupValue
+		}
+	}
+	panic(fmt.Sprintf("invalid field: no encoder for %v %v %v", fd.FullName(), fd.Cardinality(), fd.Kind()))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go b/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go
new file mode 100644
index 0000000..e118af1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go
@@ -0,0 +1,17 @@
+// 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 !purego,!appengine
+
+package impl
+
+// When using unsafe pointers, we can just treat enum values as int32s.
+
+var (
+	coderEnumNoZero      = coderInt32NoZero
+	coderEnum            = coderInt32
+	coderEnumPtr         = coderInt32Ptr
+	coderEnumSlice       = coderInt32Slice
+	coderEnumPackedSlice = coderInt32PackedSlice
+)
diff --git a/vendor/google.golang.org/protobuf/internal/impl/convert.go b/vendor/google.golang.org/protobuf/internal/impl/convert.go
new file mode 100644
index 0000000..36a90df
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/convert.go
@@ -0,0 +1,467 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// unwrapper unwraps the value to the underlying value.
+// This is implemented by List and Map.
+type unwrapper interface {
+	protoUnwrap() interface{}
+}
+
+// A Converter coverts to/from Go reflect.Value types and protobuf protoreflect.Value types.
+type Converter interface {
+	// PBValueOf converts a reflect.Value to a protoreflect.Value.
+	PBValueOf(reflect.Value) pref.Value
+
+	// GoValueOf converts a protoreflect.Value to a reflect.Value.
+	GoValueOf(pref.Value) reflect.Value
+
+	// IsValidPB returns whether a protoreflect.Value is compatible with this type.
+	IsValidPB(pref.Value) bool
+
+	// IsValidGo returns whether a reflect.Value is compatible with this type.
+	IsValidGo(reflect.Value) bool
+
+	// New returns a new field value.
+	// For scalars, it returns the default value of the field.
+	// For composite types, it returns a new mutable value.
+	New() pref.Value
+
+	// Zero returns a new field value.
+	// For scalars, it returns the default value of the field.
+	// For composite types, it returns an immutable, empty value.
+	Zero() pref.Value
+}
+
+// NewConverter matches a Go type with a protobuf field and returns a Converter
+// that converts between the two. Enums must be a named int32 kind that
+// implements protoreflect.Enum, and messages must be pointer to a named
+// struct type that implements protoreflect.ProtoMessage.
+//
+// This matcher deliberately supports a wider range of Go types than what
+// protoc-gen-go historically generated to be able to automatically wrap some
+// v1 messages generated by other forks of protoc-gen-go.
+func NewConverter(t reflect.Type, fd pref.FieldDescriptor) Converter {
+	switch {
+	case fd.IsList():
+		return newListConverter(t, fd)
+	case fd.IsMap():
+		return newMapConverter(t, fd)
+	default:
+		return newSingularConverter(t, fd)
+	}
+	panic(fmt.Sprintf("invalid Go type %v for field %v", t, fd.FullName()))
+}
+
+var (
+	boolType    = reflect.TypeOf(bool(false))
+	int32Type   = reflect.TypeOf(int32(0))
+	int64Type   = reflect.TypeOf(int64(0))
+	uint32Type  = reflect.TypeOf(uint32(0))
+	uint64Type  = reflect.TypeOf(uint64(0))
+	float32Type = reflect.TypeOf(float32(0))
+	float64Type = reflect.TypeOf(float64(0))
+	stringType  = reflect.TypeOf(string(""))
+	bytesType   = reflect.TypeOf([]byte(nil))
+	byteType    = reflect.TypeOf(byte(0))
+)
+
+var (
+	boolZero    = pref.ValueOfBool(false)
+	int32Zero   = pref.ValueOfInt32(0)
+	int64Zero   = pref.ValueOfInt64(0)
+	uint32Zero  = pref.ValueOfUint32(0)
+	uint64Zero  = pref.ValueOfUint64(0)
+	float32Zero = pref.ValueOfFloat32(0)
+	float64Zero = pref.ValueOfFloat64(0)
+	stringZero  = pref.ValueOfString("")
+	bytesZero   = pref.ValueOfBytes(nil)
+)
+
+func newSingularConverter(t reflect.Type, fd pref.FieldDescriptor) Converter {
+	defVal := func(fd pref.FieldDescriptor, zero pref.Value) pref.Value {
+		if fd.Cardinality() == pref.Repeated {
+			// Default isn't defined for repeated fields.
+			return zero
+		}
+		return fd.Default()
+	}
+	switch fd.Kind() {
+	case pref.BoolKind:
+		if t.Kind() == reflect.Bool {
+			return &boolConverter{t, defVal(fd, boolZero)}
+		}
+	case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
+		if t.Kind() == reflect.Int32 {
+			return &int32Converter{t, defVal(fd, int32Zero)}
+		}
+	case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
+		if t.Kind() == reflect.Int64 {
+			return &int64Converter{t, defVal(fd, int64Zero)}
+		}
+	case pref.Uint32Kind, pref.Fixed32Kind:
+		if t.Kind() == reflect.Uint32 {
+			return &uint32Converter{t, defVal(fd, uint32Zero)}
+		}
+	case pref.Uint64Kind, pref.Fixed64Kind:
+		if t.Kind() == reflect.Uint64 {
+			return &uint64Converter{t, defVal(fd, uint64Zero)}
+		}
+	case pref.FloatKind:
+		if t.Kind() == reflect.Float32 {
+			return &float32Converter{t, defVal(fd, float32Zero)}
+		}
+	case pref.DoubleKind:
+		if t.Kind() == reflect.Float64 {
+			return &float64Converter{t, defVal(fd, float64Zero)}
+		}
+	case pref.StringKind:
+		if t.Kind() == reflect.String || (t.Kind() == reflect.Slice && t.Elem() == byteType) {
+			return &stringConverter{t, defVal(fd, stringZero)}
+		}
+	case pref.BytesKind:
+		if t.Kind() == reflect.String || (t.Kind() == reflect.Slice && t.Elem() == byteType) {
+			return &bytesConverter{t, defVal(fd, bytesZero)}
+		}
+	case pref.EnumKind:
+		// Handle enums, which must be a named int32 type.
+		if t.Kind() == reflect.Int32 {
+			return newEnumConverter(t, fd)
+		}
+	case pref.MessageKind, pref.GroupKind:
+		return newMessageConverter(t)
+	}
+	panic(fmt.Sprintf("invalid Go type %v for field %v", t, fd.FullName()))
+}
+
+type boolConverter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *boolConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfBool(v.Bool())
+}
+func (c *boolConverter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(v.Bool()).Convert(c.goType)
+}
+func (c *boolConverter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(bool)
+	return ok
+}
+func (c *boolConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *boolConverter) New() pref.Value  { return c.def }
+func (c *boolConverter) Zero() pref.Value { return c.def }
+
+type int32Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *int32Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfInt32(int32(v.Int()))
+}
+func (c *int32Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(int32(v.Int())).Convert(c.goType)
+}
+func (c *int32Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(int32)
+	return ok
+}
+func (c *int32Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *int32Converter) New() pref.Value  { return c.def }
+func (c *int32Converter) Zero() pref.Value { return c.def }
+
+type int64Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *int64Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfInt64(int64(v.Int()))
+}
+func (c *int64Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(int64(v.Int())).Convert(c.goType)
+}
+func (c *int64Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(int64)
+	return ok
+}
+func (c *int64Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *int64Converter) New() pref.Value  { return c.def }
+func (c *int64Converter) Zero() pref.Value { return c.def }
+
+type uint32Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *uint32Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfUint32(uint32(v.Uint()))
+}
+func (c *uint32Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(uint32(v.Uint())).Convert(c.goType)
+}
+func (c *uint32Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(uint32)
+	return ok
+}
+func (c *uint32Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *uint32Converter) New() pref.Value  { return c.def }
+func (c *uint32Converter) Zero() pref.Value { return c.def }
+
+type uint64Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *uint64Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfUint64(uint64(v.Uint()))
+}
+func (c *uint64Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(uint64(v.Uint())).Convert(c.goType)
+}
+func (c *uint64Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(uint64)
+	return ok
+}
+func (c *uint64Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *uint64Converter) New() pref.Value  { return c.def }
+func (c *uint64Converter) Zero() pref.Value { return c.def }
+
+type float32Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *float32Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfFloat32(float32(v.Float()))
+}
+func (c *float32Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(float32(v.Float())).Convert(c.goType)
+}
+func (c *float32Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(float32)
+	return ok
+}
+func (c *float32Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *float32Converter) New() pref.Value  { return c.def }
+func (c *float32Converter) Zero() pref.Value { return c.def }
+
+type float64Converter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *float64Converter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfFloat64(float64(v.Float()))
+}
+func (c *float64Converter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(float64(v.Float())).Convert(c.goType)
+}
+func (c *float64Converter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(float64)
+	return ok
+}
+func (c *float64Converter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *float64Converter) New() pref.Value  { return c.def }
+func (c *float64Converter) Zero() pref.Value { return c.def }
+
+type stringConverter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *stringConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfString(v.Convert(stringType).String())
+}
+func (c *stringConverter) GoValueOf(v pref.Value) reflect.Value {
+	// pref.Value.String never panics, so we go through an interface
+	// conversion here to check the type.
+	s := v.Interface().(string)
+	if c.goType.Kind() == reflect.Slice && s == "" {
+		return reflect.Zero(c.goType) // ensure empty string is []byte(nil)
+	}
+	return reflect.ValueOf(s).Convert(c.goType)
+}
+func (c *stringConverter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(string)
+	return ok
+}
+func (c *stringConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *stringConverter) New() pref.Value  { return c.def }
+func (c *stringConverter) Zero() pref.Value { return c.def }
+
+type bytesConverter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func (c *bytesConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	if c.goType.Kind() == reflect.String && v.Len() == 0 {
+		return pref.ValueOfBytes(nil) // ensure empty string is []byte(nil)
+	}
+	return pref.ValueOfBytes(v.Convert(bytesType).Bytes())
+}
+func (c *bytesConverter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(v.Bytes()).Convert(c.goType)
+}
+func (c *bytesConverter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().([]byte)
+	return ok
+}
+func (c *bytesConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+func (c *bytesConverter) New() pref.Value  { return c.def }
+func (c *bytesConverter) Zero() pref.Value { return c.def }
+
+type enumConverter struct {
+	goType reflect.Type
+	def    pref.Value
+}
+
+func newEnumConverter(goType reflect.Type, fd pref.FieldDescriptor) Converter {
+	var def pref.Value
+	if fd.Cardinality() == pref.Repeated {
+		def = pref.ValueOfEnum(fd.Enum().Values().Get(0).Number())
+	} else {
+		def = fd.Default()
+	}
+	return &enumConverter{goType, def}
+}
+
+func (c *enumConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfEnum(pref.EnumNumber(v.Int()))
+}
+
+func (c *enumConverter) GoValueOf(v pref.Value) reflect.Value {
+	return reflect.ValueOf(v.Enum()).Convert(c.goType)
+}
+
+func (c *enumConverter) IsValidPB(v pref.Value) bool {
+	_, ok := v.Interface().(pref.EnumNumber)
+	return ok
+}
+
+func (c *enumConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+
+func (c *enumConverter) New() pref.Value {
+	return c.def
+}
+
+func (c *enumConverter) Zero() pref.Value {
+	return c.def
+}
+
+type messageConverter struct {
+	goType reflect.Type
+}
+
+func newMessageConverter(goType reflect.Type) Converter {
+	return &messageConverter{goType}
+}
+
+func (c *messageConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	if m, ok := v.Interface().(pref.ProtoMessage); ok {
+		return pref.ValueOfMessage(m.ProtoReflect())
+	}
+	return pref.ValueOfMessage(legacyWrapMessage(v))
+}
+
+func (c *messageConverter) GoValueOf(v pref.Value) reflect.Value {
+	m := v.Message()
+	var rv reflect.Value
+	if u, ok := m.(unwrapper); ok {
+		rv = reflect.ValueOf(u.protoUnwrap())
+	} else {
+		rv = reflect.ValueOf(m.Interface())
+	}
+	if rv.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", rv.Type(), c.goType))
+	}
+	return rv
+}
+
+func (c *messageConverter) IsValidPB(v pref.Value) bool {
+	m := v.Message()
+	var rv reflect.Value
+	if u, ok := m.(unwrapper); ok {
+		rv = reflect.ValueOf(u.protoUnwrap())
+	} else {
+		rv = reflect.ValueOf(m.Interface())
+	}
+	return rv.Type() == c.goType
+}
+
+func (c *messageConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+
+func (c *messageConverter) New() pref.Value {
+	return c.PBValueOf(reflect.New(c.goType.Elem()))
+}
+
+func (c *messageConverter) Zero() pref.Value {
+	return c.PBValueOf(reflect.Zero(c.goType))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/convert_list.go b/vendor/google.golang.org/protobuf/internal/impl/convert_list.go
new file mode 100644
index 0000000..6fccab5
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/convert_list.go
@@ -0,0 +1,141 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+func newListConverter(t reflect.Type, fd pref.FieldDescriptor) Converter {
+	switch {
+	case t.Kind() == reflect.Ptr && t.Elem().Kind() == reflect.Slice:
+		return &listPtrConverter{t, newSingularConverter(t.Elem().Elem(), fd)}
+	case t.Kind() == reflect.Slice:
+		return &listConverter{t, newSingularConverter(t.Elem(), fd)}
+	}
+	panic(fmt.Sprintf("invalid Go type %v for field %v", t, fd.FullName()))
+}
+
+type listConverter struct {
+	goType reflect.Type // []T
+	c      Converter
+}
+
+func (c *listConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	pv := reflect.New(c.goType)
+	pv.Elem().Set(v)
+	return pref.ValueOfList(&listReflect{pv, c.c})
+}
+
+func (c *listConverter) GoValueOf(v pref.Value) reflect.Value {
+	rv := v.List().(*listReflect).v
+	if rv.IsNil() {
+		return reflect.Zero(c.goType)
+	}
+	return rv.Elem()
+}
+
+func (c *listConverter) IsValidPB(v pref.Value) bool {
+	list, ok := v.Interface().(*listReflect)
+	if !ok {
+		return false
+	}
+	return list.v.Type().Elem() == c.goType
+}
+
+func (c *listConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+
+func (c *listConverter) New() pref.Value {
+	return pref.ValueOfList(&listReflect{reflect.New(c.goType), c.c})
+}
+
+func (c *listConverter) Zero() pref.Value {
+	return pref.ValueOfList(&listReflect{reflect.Zero(reflect.PtrTo(c.goType)), c.c})
+}
+
+type listPtrConverter struct {
+	goType reflect.Type // *[]T
+	c      Converter
+}
+
+func (c *listPtrConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfList(&listReflect{v, c.c})
+}
+
+func (c *listPtrConverter) GoValueOf(v pref.Value) reflect.Value {
+	return v.List().(*listReflect).v
+}
+
+func (c *listPtrConverter) IsValidPB(v pref.Value) bool {
+	list, ok := v.Interface().(*listReflect)
+	if !ok {
+		return false
+	}
+	return list.v.Type() == c.goType
+}
+
+func (c *listPtrConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+
+func (c *listPtrConverter) New() pref.Value {
+	return c.PBValueOf(reflect.New(c.goType.Elem()))
+}
+
+func (c *listPtrConverter) Zero() pref.Value {
+	return c.PBValueOf(reflect.Zero(c.goType))
+}
+
+type listReflect struct {
+	v    reflect.Value // *[]T
+	conv Converter
+}
+
+func (ls *listReflect) Len() int {
+	if ls.v.IsNil() {
+		return 0
+	}
+	return ls.v.Elem().Len()
+}
+func (ls *listReflect) Get(i int) pref.Value {
+	return ls.conv.PBValueOf(ls.v.Elem().Index(i))
+}
+func (ls *listReflect) Set(i int, v pref.Value) {
+	ls.v.Elem().Index(i).Set(ls.conv.GoValueOf(v))
+}
+func (ls *listReflect) Append(v pref.Value) {
+	ls.v.Elem().Set(reflect.Append(ls.v.Elem(), ls.conv.GoValueOf(v)))
+}
+func (ls *listReflect) AppendMutable() pref.Value {
+	if _, ok := ls.conv.(*messageConverter); !ok {
+		panic("invalid AppendMutable on list with non-message type")
+	}
+	v := ls.NewElement()
+	ls.Append(v)
+	return v
+}
+func (ls *listReflect) Truncate(i int) {
+	ls.v.Elem().Set(ls.v.Elem().Slice(0, i))
+}
+func (ls *listReflect) NewElement() pref.Value {
+	return ls.conv.New()
+}
+func (ls *listReflect) IsValid() bool {
+	return !ls.v.IsNil()
+}
+func (ls *listReflect) protoUnwrap() interface{} {
+	return ls.v.Interface()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/convert_map.go b/vendor/google.golang.org/protobuf/internal/impl/convert_map.go
new file mode 100644
index 0000000..de06b25
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/convert_map.go
@@ -0,0 +1,121 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type mapConverter struct {
+	goType           reflect.Type // map[K]V
+	keyConv, valConv Converter
+}
+
+func newMapConverter(t reflect.Type, fd pref.FieldDescriptor) *mapConverter {
+	if t.Kind() != reflect.Map {
+		panic(fmt.Sprintf("invalid Go type %v for field %v", t, fd.FullName()))
+	}
+	return &mapConverter{
+		goType:  t,
+		keyConv: newSingularConverter(t.Key(), fd.MapKey()),
+		valConv: newSingularConverter(t.Elem(), fd.MapValue()),
+	}
+}
+
+func (c *mapConverter) PBValueOf(v reflect.Value) pref.Value {
+	if v.Type() != c.goType {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", v.Type(), c.goType))
+	}
+	return pref.ValueOfMap(&mapReflect{v, c.keyConv, c.valConv})
+}
+
+func (c *mapConverter) GoValueOf(v pref.Value) reflect.Value {
+	return v.Map().(*mapReflect).v
+}
+
+func (c *mapConverter) IsValidPB(v pref.Value) bool {
+	mapv, ok := v.Interface().(*mapReflect)
+	if !ok {
+		return false
+	}
+	return mapv.v.Type() == c.goType
+}
+
+func (c *mapConverter) IsValidGo(v reflect.Value) bool {
+	return v.IsValid() && v.Type() == c.goType
+}
+
+func (c *mapConverter) New() pref.Value {
+	return c.PBValueOf(reflect.MakeMap(c.goType))
+}
+
+func (c *mapConverter) Zero() pref.Value {
+	return c.PBValueOf(reflect.Zero(c.goType))
+}
+
+type mapReflect struct {
+	v       reflect.Value // map[K]V
+	keyConv Converter
+	valConv Converter
+}
+
+func (ms *mapReflect) Len() int {
+	return ms.v.Len()
+}
+func (ms *mapReflect) Has(k pref.MapKey) bool {
+	rk := ms.keyConv.GoValueOf(k.Value())
+	rv := ms.v.MapIndex(rk)
+	return rv.IsValid()
+}
+func (ms *mapReflect) Get(k pref.MapKey) pref.Value {
+	rk := ms.keyConv.GoValueOf(k.Value())
+	rv := ms.v.MapIndex(rk)
+	if !rv.IsValid() {
+		return pref.Value{}
+	}
+	return ms.valConv.PBValueOf(rv)
+}
+func (ms *mapReflect) Set(k pref.MapKey, v pref.Value) {
+	rk := ms.keyConv.GoValueOf(k.Value())
+	rv := ms.valConv.GoValueOf(v)
+	ms.v.SetMapIndex(rk, rv)
+}
+func (ms *mapReflect) Clear(k pref.MapKey) {
+	rk := ms.keyConv.GoValueOf(k.Value())
+	ms.v.SetMapIndex(rk, reflect.Value{})
+}
+func (ms *mapReflect) Mutable(k pref.MapKey) pref.Value {
+	if _, ok := ms.valConv.(*messageConverter); !ok {
+		panic("invalid Mutable on map with non-message value type")
+	}
+	v := ms.Get(k)
+	if !v.IsValid() {
+		v = ms.NewValue()
+		ms.Set(k, v)
+	}
+	return v
+}
+func (ms *mapReflect) Range(f func(pref.MapKey, pref.Value) bool) {
+	iter := mapRange(ms.v)
+	for iter.Next() {
+		k := ms.keyConv.PBValueOf(iter.Key()).MapKey()
+		v := ms.valConv.PBValueOf(iter.Value())
+		if !f(k, v) {
+			return
+		}
+	}
+}
+func (ms *mapReflect) NewValue() pref.Value {
+	return ms.valConv.New()
+}
+func (ms *mapReflect) IsValid() bool {
+	return !ms.v.IsNil()
+}
+func (ms *mapReflect) protoUnwrap() interface{} {
+	return ms.v.Interface()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/decode.go b/vendor/google.golang.org/protobuf/internal/impl/decode.go
new file mode 100644
index 0000000..85ba1d3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/decode.go
@@ -0,0 +1,274 @@
+// 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 impl
+
+import (
+	"math/bits"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/proto"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+	"google.golang.org/protobuf/runtime/protoiface"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+type unmarshalOptions struct {
+	flags    protoiface.UnmarshalInputFlags
+	resolver interface {
+		FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
+		FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
+	}
+}
+
+func (o unmarshalOptions) Options() proto.UnmarshalOptions {
+	return proto.UnmarshalOptions{
+		Merge:          true,
+		AllowPartial:   true,
+		DiscardUnknown: o.DiscardUnknown(),
+		Resolver:       o.resolver,
+	}
+}
+
+func (o unmarshalOptions) DiscardUnknown() bool { return o.flags&piface.UnmarshalDiscardUnknown != 0 }
+
+func (o unmarshalOptions) IsDefault() bool {
+	return o.flags == 0 && o.resolver == preg.GlobalTypes
+}
+
+var lazyUnmarshalOptions = unmarshalOptions{
+	resolver: preg.GlobalTypes,
+}
+
+type unmarshalOutput struct {
+	n           int // number of bytes consumed
+	initialized bool
+}
+
+// unmarshal is protoreflect.Methods.Unmarshal.
+func (mi *MessageInfo) unmarshal(in piface.UnmarshalInput) (piface.UnmarshalOutput, error) {
+	var p pointer
+	if ms, ok := in.Message.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = in.Message.(*messageReflectWrapper).pointer()
+	}
+	out, err := mi.unmarshalPointer(in.Buf, p, 0, unmarshalOptions{
+		flags:    in.Flags,
+		resolver: in.Resolver,
+	})
+	var flags piface.UnmarshalOutputFlags
+	if out.initialized {
+		flags |= piface.UnmarshalInitialized
+	}
+	return piface.UnmarshalOutput{
+		Flags: flags,
+	}, err
+}
+
+// errUnknown is returned during unmarshaling to indicate a parse error that
+// should result in a field being placed in the unknown fields section (for example,
+// when the wire type doesn't match) as opposed to the entire unmarshal operation
+// failing (for example, when a field extends past the available input).
+//
+// This is a sentinel error which should never be visible to the user.
+var errUnknown = errors.New("unknown")
+
+func (mi *MessageInfo) unmarshalPointer(b []byte, p pointer, groupTag protowire.Number, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	mi.init()
+	if flags.ProtoLegacy && mi.isMessageSet {
+		return unmarshalMessageSet(mi, b, p, opts)
+	}
+	initialized := true
+	var requiredMask uint64
+	var exts *map[int32]ExtensionField
+	start := len(b)
+	for len(b) > 0 {
+		// Parse the tag (field number and wire type).
+		var tag uint64
+		if b[0] < 0x80 {
+			tag = uint64(b[0])
+			b = b[1:]
+		} else if len(b) >= 2 && b[1] < 128 {
+			tag = uint64(b[0]&0x7f) + uint64(b[1])<<7
+			b = b[2:]
+		} else {
+			var n int
+			tag, n = protowire.ConsumeVarint(b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			b = b[n:]
+		}
+		var num protowire.Number
+		if n := tag >> 3; n < uint64(protowire.MinValidNumber) || n > uint64(protowire.MaxValidNumber) {
+			return out, errors.New("invalid field number")
+		} else {
+			num = protowire.Number(n)
+		}
+		wtyp := protowire.Type(tag & 7)
+
+		if wtyp == protowire.EndGroupType {
+			if num != groupTag {
+				return out, errors.New("mismatching end group marker")
+			}
+			groupTag = 0
+			break
+		}
+
+		var f *coderFieldInfo
+		if int(num) < len(mi.denseCoderFields) {
+			f = mi.denseCoderFields[num]
+		} else {
+			f = mi.coderFields[num]
+		}
+		var n int
+		err := errUnknown
+		switch {
+		case f != nil:
+			if f.funcs.unmarshal == nil {
+				break
+			}
+			var o unmarshalOutput
+			o, err = f.funcs.unmarshal(b, p.Apply(f.offset), wtyp, f, opts)
+			n = o.n
+			if err != nil {
+				break
+			}
+			requiredMask |= f.validation.requiredBit
+			if f.funcs.isInit != nil && !o.initialized {
+				initialized = false
+			}
+		default:
+			// Possible extension.
+			if exts == nil && mi.extensionOffset.IsValid() {
+				exts = p.Apply(mi.extensionOffset).Extensions()
+				if *exts == nil {
+					*exts = make(map[int32]ExtensionField)
+				}
+			}
+			if exts == nil {
+				break
+			}
+			var o unmarshalOutput
+			o, err = mi.unmarshalExtension(b, num, wtyp, *exts, opts)
+			if err != nil {
+				break
+			}
+			n = o.n
+			if !o.initialized {
+				initialized = false
+			}
+		}
+		if err != nil {
+			if err != errUnknown {
+				return out, err
+			}
+			n = protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return out, protowire.ParseError(n)
+			}
+			if !opts.DiscardUnknown() && mi.unknownOffset.IsValid() {
+				u := p.Apply(mi.unknownOffset).Bytes()
+				*u = protowire.AppendTag(*u, num, wtyp)
+				*u = append(*u, b[:n]...)
+			}
+		}
+		b = b[n:]
+	}
+	if groupTag != 0 {
+		return out, errors.New("missing end group marker")
+	}
+	if mi.numRequiredFields > 0 && bits.OnesCount64(requiredMask) != int(mi.numRequiredFields) {
+		initialized = false
+	}
+	if initialized {
+		out.initialized = true
+	}
+	out.n = start - len(b)
+	return out, nil
+}
+
+func (mi *MessageInfo) unmarshalExtension(b []byte, num protowire.Number, wtyp protowire.Type, exts map[int32]ExtensionField, opts unmarshalOptions) (out unmarshalOutput, err error) {
+	x := exts[int32(num)]
+	xt := x.Type()
+	if xt == nil {
+		var err error
+		xt, err = opts.resolver.FindExtensionByNumber(mi.Desc.FullName(), num)
+		if err != nil {
+			if err == preg.NotFound {
+				return out, errUnknown
+			}
+			return out, errors.New("%v: unable to resolve extension %v: %v", mi.Desc.FullName(), num, err)
+		}
+	}
+	xi := getExtensionFieldInfo(xt)
+	if xi.funcs.unmarshal == nil {
+		return out, errUnknown
+	}
+	if flags.LazyUnmarshalExtensions {
+		if opts.IsDefault() && x.canLazy(xt) {
+			out, valid := skipExtension(b, xi, num, wtyp, opts)
+			switch valid {
+			case ValidationValid:
+				if out.initialized {
+					x.appendLazyBytes(xt, xi, num, wtyp, b[:out.n])
+					exts[int32(num)] = x
+					return out, nil
+				}
+			case ValidationInvalid:
+				return out, errors.New("invalid wire format")
+			case ValidationUnknown:
+			}
+		}
+	}
+	ival := x.Value()
+	if !ival.IsValid() && xi.unmarshalNeedsValue {
+		// Create a new message, list, or map value to fill in.
+		// For enums, create a prototype value to let the unmarshal func know the
+		// concrete type.
+		ival = xt.New()
+	}
+	v, out, err := xi.funcs.unmarshal(b, ival, num, wtyp, opts)
+	if err != nil {
+		return out, err
+	}
+	if xi.funcs.isInit == nil {
+		out.initialized = true
+	}
+	x.Set(xt, v)
+	exts[int32(num)] = x
+	return out, nil
+}
+
+func skipExtension(b []byte, xi *extensionFieldInfo, num protowire.Number, wtyp protowire.Type, opts unmarshalOptions) (out unmarshalOutput, _ ValidationStatus) {
+	if xi.validation.mi == nil {
+		return out, ValidationUnknown
+	}
+	xi.validation.mi.init()
+	switch xi.validation.typ {
+	case validationTypeMessage:
+		if wtyp != protowire.BytesType {
+			return out, ValidationUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return out, ValidationUnknown
+		}
+		out, st := xi.validation.mi.validate(v, 0, opts)
+		out.n = n
+		return out, st
+	case validationTypeGroup:
+		if wtyp != protowire.StartGroupType {
+			return out, ValidationUnknown
+		}
+		out, st := xi.validation.mi.validate(b, num, opts)
+		return out, st
+	default:
+		return out, ValidationUnknown
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/encode.go b/vendor/google.golang.org/protobuf/internal/impl/encode.go
new file mode 100644
index 0000000..8c8a794
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/encode.go
@@ -0,0 +1,199 @@
+// 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 impl
+
+import (
+	"math"
+	"sort"
+	"sync/atomic"
+
+	"google.golang.org/protobuf/internal/flags"
+	proto "google.golang.org/protobuf/proto"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+type marshalOptions struct {
+	flags piface.MarshalInputFlags
+}
+
+func (o marshalOptions) Options() proto.MarshalOptions {
+	return proto.MarshalOptions{
+		AllowPartial:  true,
+		Deterministic: o.Deterministic(),
+		UseCachedSize: o.UseCachedSize(),
+	}
+}
+
+func (o marshalOptions) Deterministic() bool { return o.flags&piface.MarshalDeterministic != 0 }
+func (o marshalOptions) UseCachedSize() bool { return o.flags&piface.MarshalUseCachedSize != 0 }
+
+// size is protoreflect.Methods.Size.
+func (mi *MessageInfo) size(in piface.SizeInput) piface.SizeOutput {
+	var p pointer
+	if ms, ok := in.Message.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = in.Message.(*messageReflectWrapper).pointer()
+	}
+	size := mi.sizePointer(p, marshalOptions{
+		flags: in.Flags,
+	})
+	return piface.SizeOutput{Size: size}
+}
+
+func (mi *MessageInfo) sizePointer(p pointer, opts marshalOptions) (size int) {
+	mi.init()
+	if p.IsNil() {
+		return 0
+	}
+	if opts.UseCachedSize() && mi.sizecacheOffset.IsValid() {
+		if size := atomic.LoadInt32(p.Apply(mi.sizecacheOffset).Int32()); size >= 0 {
+			return int(size)
+		}
+	}
+	return mi.sizePointerSlow(p, opts)
+}
+
+func (mi *MessageInfo) sizePointerSlow(p pointer, opts marshalOptions) (size int) {
+	if flags.ProtoLegacy && mi.isMessageSet {
+		size = sizeMessageSet(mi, p, opts)
+		if mi.sizecacheOffset.IsValid() {
+			atomic.StoreInt32(p.Apply(mi.sizecacheOffset).Int32(), int32(size))
+		}
+		return size
+	}
+	if mi.extensionOffset.IsValid() {
+		e := p.Apply(mi.extensionOffset).Extensions()
+		size += mi.sizeExtensions(e, opts)
+	}
+	for _, f := range mi.orderedCoderFields {
+		if f.funcs.size == nil {
+			continue
+		}
+		fptr := p.Apply(f.offset)
+		if f.isPointer && fptr.Elem().IsNil() {
+			continue
+		}
+		size += f.funcs.size(fptr, f, opts)
+	}
+	if mi.unknownOffset.IsValid() {
+		u := *p.Apply(mi.unknownOffset).Bytes()
+		size += len(u)
+	}
+	if mi.sizecacheOffset.IsValid() {
+		if size > math.MaxInt32 {
+			// The size is too large for the int32 sizecache field.
+			// We will need to recompute the size when encoding;
+			// unfortunately expensive, but better than invalid output.
+			atomic.StoreInt32(p.Apply(mi.sizecacheOffset).Int32(), -1)
+		} else {
+			atomic.StoreInt32(p.Apply(mi.sizecacheOffset).Int32(), int32(size))
+		}
+	}
+	return size
+}
+
+// marshal is protoreflect.Methods.Marshal.
+func (mi *MessageInfo) marshal(in piface.MarshalInput) (out piface.MarshalOutput, err error) {
+	var p pointer
+	if ms, ok := in.Message.(*messageState); ok {
+		p = ms.pointer()
+	} else {
+		p = in.Message.(*messageReflectWrapper).pointer()
+	}
+	b, err := mi.marshalAppendPointer(in.Buf, p, marshalOptions{
+		flags: in.Flags,
+	})
+	return piface.MarshalOutput{Buf: b}, err
+}
+
+func (mi *MessageInfo) marshalAppendPointer(b []byte, p pointer, opts marshalOptions) ([]byte, error) {
+	mi.init()
+	if p.IsNil() {
+		return b, nil
+	}
+	if flags.ProtoLegacy && mi.isMessageSet {
+		return marshalMessageSet(mi, b, p, opts)
+	}
+	var err error
+	// The old marshaler encodes extensions at beginning.
+	if mi.extensionOffset.IsValid() {
+		e := p.Apply(mi.extensionOffset).Extensions()
+		// TODO: Special handling for MessageSet?
+		b, err = mi.appendExtensions(b, e, opts)
+		if err != nil {
+			return b, err
+		}
+	}
+	for _, f := range mi.orderedCoderFields {
+		if f.funcs.marshal == nil {
+			continue
+		}
+		fptr := p.Apply(f.offset)
+		if f.isPointer && fptr.Elem().IsNil() {
+			continue
+		}
+		b, err = f.funcs.marshal(b, fptr, f, opts)
+		if err != nil {
+			return b, err
+		}
+	}
+	if mi.unknownOffset.IsValid() && !mi.isMessageSet {
+		u := *p.Apply(mi.unknownOffset).Bytes()
+		b = append(b, u...)
+	}
+	return b, nil
+}
+
+func (mi *MessageInfo) sizeExtensions(ext *map[int32]ExtensionField, opts marshalOptions) (n int) {
+	if ext == nil {
+		return 0
+	}
+	for _, x := range *ext {
+		xi := getExtensionFieldInfo(x.Type())
+		if xi.funcs.size == nil {
+			continue
+		}
+		n += xi.funcs.size(x.Value(), xi.tagsize, opts)
+	}
+	return n
+}
+
+func (mi *MessageInfo) appendExtensions(b []byte, ext *map[int32]ExtensionField, opts marshalOptions) ([]byte, error) {
+	if ext == nil {
+		return b, nil
+	}
+
+	switch len(*ext) {
+	case 0:
+		return b, nil
+	case 1:
+		// Fast-path for one extension: Don't bother sorting the keys.
+		var err error
+		for _, x := range *ext {
+			xi := getExtensionFieldInfo(x.Type())
+			b, err = xi.funcs.marshal(b, x.Value(), xi.wiretag, opts)
+		}
+		return b, err
+	default:
+		// Sort the keys to provide a deterministic encoding.
+		// Not sure this is required, but the old code does it.
+		keys := make([]int, 0, len(*ext))
+		for k := range *ext {
+			keys = append(keys, int(k))
+		}
+		sort.Ints(keys)
+		var err error
+		for _, k := range keys {
+			x := (*ext)[int32(k)]
+			xi := getExtensionFieldInfo(x.Type())
+			b, err = xi.funcs.marshal(b, x.Value(), xi.wiretag, opts)
+			if err != nil {
+				return b, err
+			}
+		}
+		return b, nil
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/enum.go b/vendor/google.golang.org/protobuf/internal/impl/enum.go
new file mode 100644
index 0000000..8c1eab4
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/enum.go
@@ -0,0 +1,21 @@
+// 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 impl
+
+import (
+	"reflect"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type EnumInfo struct {
+	GoReflectType reflect.Type // int32 kind
+	Desc          pref.EnumDescriptor
+}
+
+func (t *EnumInfo) New(n pref.EnumNumber) pref.Enum {
+	return reflect.ValueOf(n).Convert(t.GoReflectType).Interface().(pref.Enum)
+}
+func (t *EnumInfo) Descriptor() pref.EnumDescriptor { return t.Desc }
diff --git a/vendor/google.golang.org/protobuf/internal/impl/extension.go b/vendor/google.golang.org/protobuf/internal/impl/extension.go
new file mode 100644
index 0000000..e904fd9
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/extension.go
@@ -0,0 +1,156 @@
+// 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 impl
+
+import (
+	"reflect"
+	"sync"
+	"sync/atomic"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// ExtensionInfo implements ExtensionType.
+//
+// This type contains a number of exported fields for legacy compatibility.
+// The only non-deprecated use of this type is through the methods of the
+// ExtensionType interface.
+type ExtensionInfo struct {
+	// An ExtensionInfo may exist in several stages of initialization.
+	//
+	// extensionInfoUninitialized: Some or all of the legacy exported
+	// fields may be set, but none of the unexported fields have been
+	// initialized. This is the starting state for an ExtensionInfo
+	// in legacy generated code.
+	//
+	// extensionInfoDescInit: The desc field is set, but other unexported fields
+	// may not be initialized. Legacy exported fields may or may not be set.
+	// This is the starting state for an ExtensionInfo in newly generated code.
+	//
+	// extensionInfoFullInit: The ExtensionInfo is fully initialized.
+	// This state is only entered after lazy initialization is complete.
+	init uint32
+	mu   sync.Mutex
+
+	goType reflect.Type
+	desc   extensionTypeDescriptor
+	conv   Converter
+	info   *extensionFieldInfo // for fast-path method implementations
+
+	// ExtendedType is a typed nil-pointer to the parent message type that
+	// is being extended. It is possible for this to be unpopulated in v2
+	// since the message may no longer implement the MessageV1 interface.
+	//
+	// Deprecated: Use the ExtendedType method instead.
+	ExtendedType piface.MessageV1
+
+	// ExtensionType is the zero value of the extension type.
+	//
+	// For historical reasons, reflect.TypeOf(ExtensionType) and the
+	// type returned by InterfaceOf may not be identical.
+	//
+	// Deprecated: Use InterfaceOf(xt.Zero()) instead.
+	ExtensionType interface{}
+
+	// Field is the field number of the extension.
+	//
+	// Deprecated: Use the Descriptor().Number method instead.
+	Field int32
+
+	// Name is the fully qualified name of extension.
+	//
+	// Deprecated: Use the Descriptor().FullName method instead.
+	Name string
+
+	// Tag is the protobuf struct tag used in the v1 API.
+	//
+	// Deprecated: Do not use.
+	Tag string
+
+	// Filename is the proto filename in which the extension is defined.
+	//
+	// Deprecated: Use Descriptor().ParentFile().Path() instead.
+	Filename string
+}
+
+// Stages of initialization: See the ExtensionInfo.init field.
+const (
+	extensionInfoUninitialized = 0
+	extensionInfoDescInit      = 1
+	extensionInfoFullInit      = 2
+)
+
+func InitExtensionInfo(xi *ExtensionInfo, xd pref.ExtensionDescriptor, goType reflect.Type) {
+	xi.goType = goType
+	xi.desc = extensionTypeDescriptor{xd, xi}
+	xi.init = extensionInfoDescInit
+}
+
+func (xi *ExtensionInfo) New() pref.Value {
+	return xi.lazyInit().New()
+}
+func (xi *ExtensionInfo) Zero() pref.Value {
+	return xi.lazyInit().Zero()
+}
+func (xi *ExtensionInfo) ValueOf(v interface{}) pref.Value {
+	return xi.lazyInit().PBValueOf(reflect.ValueOf(v))
+}
+func (xi *ExtensionInfo) InterfaceOf(v pref.Value) interface{} {
+	return xi.lazyInit().GoValueOf(v).Interface()
+}
+func (xi *ExtensionInfo) IsValidValue(v pref.Value) bool {
+	return xi.lazyInit().IsValidPB(v)
+}
+func (xi *ExtensionInfo) IsValidInterface(v interface{}) bool {
+	return xi.lazyInit().IsValidGo(reflect.ValueOf(v))
+}
+func (xi *ExtensionInfo) TypeDescriptor() pref.ExtensionTypeDescriptor {
+	if atomic.LoadUint32(&xi.init) < extensionInfoDescInit {
+		xi.lazyInitSlow()
+	}
+	return &xi.desc
+}
+
+func (xi *ExtensionInfo) lazyInit() Converter {
+	if atomic.LoadUint32(&xi.init) < extensionInfoFullInit {
+		xi.lazyInitSlow()
+	}
+	return xi.conv
+}
+
+func (xi *ExtensionInfo) lazyInitSlow() {
+	xi.mu.Lock()
+	defer xi.mu.Unlock()
+
+	if xi.init == extensionInfoFullInit {
+		return
+	}
+	defer atomic.StoreUint32(&xi.init, extensionInfoFullInit)
+
+	if xi.desc.ExtensionDescriptor == nil {
+		xi.initFromLegacy()
+	}
+	if !xi.desc.ExtensionDescriptor.IsPlaceholder() {
+		if xi.ExtensionType == nil {
+			xi.initToLegacy()
+		}
+		xi.conv = NewConverter(xi.goType, xi.desc.ExtensionDescriptor)
+		xi.info = makeExtensionFieldInfo(xi.desc.ExtensionDescriptor)
+		xi.info.validation = newValidationInfo(xi.desc.ExtensionDescriptor, xi.goType)
+	}
+}
+
+type extensionTypeDescriptor struct {
+	pref.ExtensionDescriptor
+	xi *ExtensionInfo
+}
+
+func (xtd *extensionTypeDescriptor) Type() pref.ExtensionType {
+	return xtd.xi
+}
+func (xtd *extensionTypeDescriptor) Descriptor() pref.ExtensionDescriptor {
+	return xtd.ExtensionDescriptor
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go b/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go
new file mode 100644
index 0000000..f7d7ffb
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go
@@ -0,0 +1,219 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+	"strings"
+	"sync"
+
+	"google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// legacyEnumName returns the name of enums used in legacy code.
+// It is neither the protobuf full name nor the qualified Go name,
+// but rather an odd hybrid of both.
+func legacyEnumName(ed pref.EnumDescriptor) string {
+	var protoPkg string
+	enumName := string(ed.FullName())
+	if fd := ed.ParentFile(); fd != nil {
+		protoPkg = string(fd.Package())
+		enumName = strings.TrimPrefix(enumName, protoPkg+".")
+	}
+	if protoPkg == "" {
+		return strs.GoCamelCase(enumName)
+	}
+	return protoPkg + "." + strs.GoCamelCase(enumName)
+}
+
+// legacyWrapEnum wraps v as a protoreflect.Enum,
+// where v must be a int32 kind and not implement the v2 API already.
+func legacyWrapEnum(v reflect.Value) pref.Enum {
+	et := legacyLoadEnumType(v.Type())
+	return et.New(pref.EnumNumber(v.Int()))
+}
+
+var legacyEnumTypeCache sync.Map // map[reflect.Type]protoreflect.EnumType
+
+// legacyLoadEnumType dynamically loads a protoreflect.EnumType for t,
+// where t must be an int32 kind and not implement the v2 API already.
+func legacyLoadEnumType(t reflect.Type) pref.EnumType {
+	// Fast-path: check if a EnumType is cached for this concrete type.
+	if et, ok := legacyEnumTypeCache.Load(t); ok {
+		return et.(pref.EnumType)
+	}
+
+	// Slow-path: derive enum descriptor and initialize EnumType.
+	var et pref.EnumType
+	ed := LegacyLoadEnumDesc(t)
+	et = &legacyEnumType{
+		desc:   ed,
+		goType: t,
+	}
+	if et, ok := legacyEnumTypeCache.LoadOrStore(t, et); ok {
+		return et.(pref.EnumType)
+	}
+	return et
+}
+
+type legacyEnumType struct {
+	desc   pref.EnumDescriptor
+	goType reflect.Type
+	m      sync.Map // map[protoreflect.EnumNumber]proto.Enum
+}
+
+func (t *legacyEnumType) New(n pref.EnumNumber) pref.Enum {
+	if e, ok := t.m.Load(n); ok {
+		return e.(pref.Enum)
+	}
+	e := &legacyEnumWrapper{num: n, pbTyp: t, goTyp: t.goType}
+	t.m.Store(n, e)
+	return e
+}
+func (t *legacyEnumType) Descriptor() pref.EnumDescriptor {
+	return t.desc
+}
+
+type legacyEnumWrapper struct {
+	num   pref.EnumNumber
+	pbTyp pref.EnumType
+	goTyp reflect.Type
+}
+
+func (e *legacyEnumWrapper) Descriptor() pref.EnumDescriptor {
+	return e.pbTyp.Descriptor()
+}
+func (e *legacyEnumWrapper) Type() pref.EnumType {
+	return e.pbTyp
+}
+func (e *legacyEnumWrapper) Number() pref.EnumNumber {
+	return e.num
+}
+func (e *legacyEnumWrapper) ProtoReflect() pref.Enum {
+	return e
+}
+func (e *legacyEnumWrapper) protoUnwrap() interface{} {
+	v := reflect.New(e.goTyp).Elem()
+	v.SetInt(int64(e.num))
+	return v.Interface()
+}
+
+var (
+	_ pref.Enum = (*legacyEnumWrapper)(nil)
+	_ unwrapper = (*legacyEnumWrapper)(nil)
+)
+
+var legacyEnumDescCache sync.Map // map[reflect.Type]protoreflect.EnumDescriptor
+
+// LegacyLoadEnumDesc returns an EnumDescriptor derived from the Go type,
+// which must be an int32 kind and not implement the v2 API already.
+//
+// This is exported for testing purposes.
+func LegacyLoadEnumDesc(t reflect.Type) pref.EnumDescriptor {
+	// Fast-path: check if an EnumDescriptor is cached for this concrete type.
+	if ed, ok := legacyEnumDescCache.Load(t); ok {
+		return ed.(pref.EnumDescriptor)
+	}
+
+	// Slow-path: initialize EnumDescriptor from the raw descriptor.
+	ev := reflect.Zero(t).Interface()
+	if _, ok := ev.(pref.Enum); ok {
+		panic(fmt.Sprintf("%v already implements proto.Enum", t))
+	}
+	edV1, ok := ev.(enumV1)
+	if !ok {
+		return aberrantLoadEnumDesc(t)
+	}
+	b, idxs := edV1.EnumDescriptor()
+
+	var ed pref.EnumDescriptor
+	if len(idxs) == 1 {
+		ed = legacyLoadFileDesc(b).Enums().Get(idxs[0])
+	} else {
+		md := legacyLoadFileDesc(b).Messages().Get(idxs[0])
+		for _, i := range idxs[1 : len(idxs)-1] {
+			md = md.Messages().Get(i)
+		}
+		ed = md.Enums().Get(idxs[len(idxs)-1])
+	}
+	if ed, ok := legacyEnumDescCache.LoadOrStore(t, ed); ok {
+		return ed.(protoreflect.EnumDescriptor)
+	}
+	return ed
+}
+
+var aberrantEnumDescCache sync.Map // map[reflect.Type]protoreflect.EnumDescriptor
+
+// aberrantLoadEnumDesc returns an EnumDescriptor derived from the Go type,
+// which must not implement protoreflect.Enum or enumV1.
+//
+// If the type does not implement enumV1, then there is no reliable
+// way to derive the original protobuf type information.
+// We are unable to use the global enum registry since it is
+// unfortunately keyed by the protobuf full name, which we also do not know.
+// Thus, this produces some bogus enum descriptor based on the Go type name.
+func aberrantLoadEnumDesc(t reflect.Type) pref.EnumDescriptor {
+	// Fast-path: check if an EnumDescriptor is cached for this concrete type.
+	if ed, ok := aberrantEnumDescCache.Load(t); ok {
+		return ed.(pref.EnumDescriptor)
+	}
+
+	// Slow-path: construct a bogus, but unique EnumDescriptor.
+	ed := &filedesc.Enum{L2: new(filedesc.EnumL2)}
+	ed.L0.FullName = AberrantDeriveFullName(t) // e.g., github_com.user.repo.MyEnum
+	ed.L0.ParentFile = filedesc.SurrogateProto3
+	ed.L2.Values.List = append(ed.L2.Values.List, filedesc.EnumValue{})
+
+	// TODO: Use the presence of a UnmarshalJSON method to determine proto2?
+
+	vd := &ed.L2.Values.List[0]
+	vd.L0.FullName = ed.L0.FullName + "_UNKNOWN" // e.g., github_com.user.repo.MyEnum_UNKNOWN
+	vd.L0.ParentFile = ed.L0.ParentFile
+	vd.L0.Parent = ed
+
+	// TODO: We could use the String method to obtain some enum value names by
+	// starting at 0 and print the enum until it produces invalid identifiers.
+	// An exhaustive query is clearly impractical, but can be best-effort.
+
+	if ed, ok := aberrantEnumDescCache.LoadOrStore(t, ed); ok {
+		return ed.(pref.EnumDescriptor)
+	}
+	return ed
+}
+
+// AberrantDeriveFullName derives a fully qualified protobuf name for the given Go type
+// The provided name is not guaranteed to be stable nor universally unique.
+// It should be sufficiently unique within a program.
+//
+// This is exported for testing purposes.
+func AberrantDeriveFullName(t reflect.Type) pref.FullName {
+	sanitize := func(r rune) rune {
+		switch {
+		case r == '/':
+			return '.'
+		case 'a' <= r && r <= 'z', 'A' <= r && r <= 'Z', '0' <= r && r <= '9':
+			return r
+		default:
+			return '_'
+		}
+	}
+	prefix := strings.Map(sanitize, t.PkgPath())
+	suffix := strings.Map(sanitize, t.Name())
+	if suffix == "" {
+		suffix = fmt.Sprintf("UnknownX%X", reflect.ValueOf(t).Pointer())
+	}
+
+	ss := append(strings.Split(prefix, "."), suffix)
+	for i, s := range ss {
+		if s == "" || ('0' <= s[0] && s[0] <= '9') {
+			ss[i] = "x" + s
+		}
+	}
+	return pref.FullName(strings.Join(ss, "."))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go b/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go
new file mode 100644
index 0000000..c3d741c
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go
@@ -0,0 +1,92 @@
+// 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 impl
+
+import (
+	"encoding/binary"
+	"encoding/json"
+	"hash/crc32"
+	"math"
+	"reflect"
+
+	"google.golang.org/protobuf/internal/errors"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// These functions exist to support exported APIs in generated protobufs.
+// While these are deprecated, they cannot be removed for compatibility reasons.
+
+// LegacyEnumName returns the name of enums used in legacy code.
+func (Export) LegacyEnumName(ed pref.EnumDescriptor) string {
+	return legacyEnumName(ed)
+}
+
+// LegacyMessageTypeOf returns the protoreflect.MessageType for m,
+// with name used as the message name if necessary.
+func (Export) LegacyMessageTypeOf(m piface.MessageV1, name pref.FullName) pref.MessageType {
+	if mv := (Export{}).protoMessageV2Of(m); mv != nil {
+		return mv.ProtoReflect().Type()
+	}
+	return legacyLoadMessageInfo(reflect.TypeOf(m), name)
+}
+
+// UnmarshalJSONEnum unmarshals an enum from a JSON-encoded input.
+// The input can either be a string representing the enum value by name,
+// or a number representing the enum number itself.
+func (Export) UnmarshalJSONEnum(ed pref.EnumDescriptor, b []byte) (pref.EnumNumber, error) {
+	if b[0] == '"' {
+		var name pref.Name
+		if err := json.Unmarshal(b, &name); err != nil {
+			return 0, errors.New("invalid input for enum %v: %s", ed.FullName(), b)
+		}
+		ev := ed.Values().ByName(name)
+		if ev == nil {
+			return 0, errors.New("invalid value for enum %v: %s", ed.FullName(), name)
+		}
+		return ev.Number(), nil
+	} else {
+		var num pref.EnumNumber
+		if err := json.Unmarshal(b, &num); err != nil {
+			return 0, errors.New("invalid input for enum %v: %s", ed.FullName(), b)
+		}
+		return num, nil
+	}
+}
+
+// CompressGZIP compresses the input as a GZIP-encoded file.
+// The current implementation does no compression.
+func (Export) CompressGZIP(in []byte) (out []byte) {
+	// RFC 1952, section 2.3.1.
+	var gzipHeader = [10]byte{0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff}
+
+	// RFC 1951, section 3.2.4.
+	var blockHeader [5]byte
+	const maxBlockSize = math.MaxUint16
+	numBlocks := 1 + len(in)/maxBlockSize
+
+	// RFC 1952, section 2.3.1.
+	var gzipFooter [8]byte
+	binary.LittleEndian.PutUint32(gzipFooter[0:4], crc32.ChecksumIEEE(in))
+	binary.LittleEndian.PutUint32(gzipFooter[4:8], uint32(len(in)))
+
+	// Encode the input without compression using raw DEFLATE blocks.
+	out = make([]byte, 0, len(gzipHeader)+len(blockHeader)*numBlocks+len(in)+len(gzipFooter))
+	out = append(out, gzipHeader[:]...)
+	for blockHeader[0] == 0 {
+		blockSize := maxBlockSize
+		if blockSize > len(in) {
+			blockHeader[0] = 0x01 // final bit per RFC 1951, section 3.2.3.
+			blockSize = len(in)
+		}
+		binary.LittleEndian.PutUint16(blockHeader[1:3], uint16(blockSize)^0x0000)
+		binary.LittleEndian.PutUint16(blockHeader[3:5], uint16(blockSize)^0xffff)
+		out = append(out, blockHeader[:]...)
+		out = append(out, in[:blockSize]...)
+		in = in[blockSize:]
+	}
+	out = append(out, gzipFooter[:]...)
+	return out
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go b/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go
new file mode 100644
index 0000000..61757ce
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go
@@ -0,0 +1,175 @@
+// 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.
+
+package impl
+
+import (
+	"reflect"
+
+	"google.golang.org/protobuf/internal/descopts"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	ptag "google.golang.org/protobuf/internal/encoding/tag"
+	"google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/internal/pragma"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+func (xi *ExtensionInfo) initToLegacy() {
+	xd := xi.desc
+	var parent piface.MessageV1
+	messageName := xd.ContainingMessage().FullName()
+	if mt, _ := preg.GlobalTypes.FindMessageByName(messageName); mt != nil {
+		// Create a new parent message and unwrap it if possible.
+		mv := mt.New().Interface()
+		t := reflect.TypeOf(mv)
+		if mv, ok := mv.(unwrapper); ok {
+			t = reflect.TypeOf(mv.protoUnwrap())
+		}
+
+		// Check whether the message implements the legacy v1 Message interface.
+		mz := reflect.Zero(t).Interface()
+		if mz, ok := mz.(piface.MessageV1); ok {
+			parent = mz
+		}
+	}
+
+	// Determine the v1 extension type, which is unfortunately not the same as
+	// the v2 ExtensionType.GoType.
+	extType := xi.goType
+	switch extType.Kind() {
+	case reflect.Bool, reflect.Int32, reflect.Int64, reflect.Uint32, reflect.Uint64, reflect.Float32, reflect.Float64, reflect.String:
+		extType = reflect.PtrTo(extType) // T -> *T for singular scalar fields
+	}
+
+	// Reconstruct the legacy enum full name.
+	var enumName string
+	if xd.Kind() == pref.EnumKind {
+		enumName = legacyEnumName(xd.Enum())
+	}
+
+	// Derive the proto file that the extension was declared within.
+	var filename string
+	if fd := xd.ParentFile(); fd != nil {
+		filename = fd.Path()
+	}
+
+	// For MessageSet extensions, the name used is the parent message.
+	name := xd.FullName()
+	if messageset.IsMessageSetExtension(xd) {
+		name = name.Parent()
+	}
+
+	xi.ExtendedType = parent
+	xi.ExtensionType = reflect.Zero(extType).Interface()
+	xi.Field = int32(xd.Number())
+	xi.Name = string(name)
+	xi.Tag = ptag.Marshal(xd, enumName)
+	xi.Filename = filename
+}
+
+// initFromLegacy initializes an ExtensionInfo from
+// the contents of the deprecated exported fields of the type.
+func (xi *ExtensionInfo) initFromLegacy() {
+	// The v1 API returns "type incomplete" descriptors where only the
+	// field number is specified. In such a case, use a placeholder.
+	if xi.ExtendedType == nil || xi.ExtensionType == nil {
+		xd := placeholderExtension{
+			name:   pref.FullName(xi.Name),
+			number: pref.FieldNumber(xi.Field),
+		}
+		xi.desc = extensionTypeDescriptor{xd, xi}
+		return
+	}
+
+	// Resolve enum or message dependencies.
+	var ed pref.EnumDescriptor
+	var md pref.MessageDescriptor
+	t := reflect.TypeOf(xi.ExtensionType)
+	isOptional := t.Kind() == reflect.Ptr && t.Elem().Kind() != reflect.Struct
+	isRepeated := t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8
+	if isOptional || isRepeated {
+		t = t.Elem()
+	}
+	switch v := reflect.Zero(t).Interface().(type) {
+	case pref.Enum:
+		ed = v.Descriptor()
+	case enumV1:
+		ed = LegacyLoadEnumDesc(t)
+	case pref.ProtoMessage:
+		md = v.ProtoReflect().Descriptor()
+	case messageV1:
+		md = LegacyLoadMessageDesc(t)
+	}
+
+	// Derive basic field information from the struct tag.
+	var evs pref.EnumValueDescriptors
+	if ed != nil {
+		evs = ed.Values()
+	}
+	fd := ptag.Unmarshal(xi.Tag, t, evs).(*filedesc.Field)
+
+	// Construct a v2 ExtensionType.
+	xd := &filedesc.Extension{L2: new(filedesc.ExtensionL2)}
+	xd.L0.ParentFile = filedesc.SurrogateProto2
+	xd.L0.FullName = pref.FullName(xi.Name)
+	xd.L1.Number = pref.FieldNumber(xi.Field)
+	xd.L1.Cardinality = fd.L1.Cardinality
+	xd.L1.Kind = fd.L1.Kind
+	xd.L2.IsPacked = fd.L1.IsPacked
+	xd.L2.Default = fd.L1.Default
+	xd.L1.Extendee = Export{}.MessageDescriptorOf(xi.ExtendedType)
+	xd.L2.Enum = ed
+	xd.L2.Message = md
+
+	// Derive real extension field name for MessageSets.
+	if messageset.IsMessageSet(xd.L1.Extendee) && md.FullName() == xd.L0.FullName {
+		xd.L0.FullName = xd.L0.FullName.Append(messageset.ExtensionName)
+	}
+
+	tt := reflect.TypeOf(xi.ExtensionType)
+	if isOptional {
+		tt = tt.Elem()
+	}
+	xi.goType = tt
+	xi.desc = extensionTypeDescriptor{xd, xi}
+}
+
+type placeholderExtension struct {
+	name   pref.FullName
+	number pref.FieldNumber
+}
+
+func (x placeholderExtension) ParentFile() pref.FileDescriptor            { return nil }
+func (x placeholderExtension) Parent() pref.Descriptor                    { return nil }
+func (x placeholderExtension) Index() int                                 { return 0 }
+func (x placeholderExtension) Syntax() pref.Syntax                        { return 0 }
+func (x placeholderExtension) Name() pref.Name                            { return x.name.Name() }
+func (x placeholderExtension) FullName() pref.FullName                    { return x.name }
+func (x placeholderExtension) IsPlaceholder() bool                        { return true }
+func (x placeholderExtension) Options() pref.ProtoMessage                 { return descopts.Field }
+func (x placeholderExtension) Number() pref.FieldNumber                   { return x.number }
+func (x placeholderExtension) Cardinality() pref.Cardinality              { return 0 }
+func (x placeholderExtension) Kind() pref.Kind                            { return 0 }
+func (x placeholderExtension) HasJSONName() bool                          { return false }
+func (x placeholderExtension) JSONName() string                           { return "" }
+func (x placeholderExtension) HasPresence() bool                          { return false }
+func (x placeholderExtension) HasOptionalKeyword() bool                   { return false }
+func (x placeholderExtension) IsExtension() bool                          { return true }
+func (x placeholderExtension) IsWeak() bool                               { return false }
+func (x placeholderExtension) IsPacked() bool                             { return false }
+func (x placeholderExtension) IsList() bool                               { return false }
+func (x placeholderExtension) IsMap() bool                                { return false }
+func (x placeholderExtension) MapKey() pref.FieldDescriptor               { return nil }
+func (x placeholderExtension) MapValue() pref.FieldDescriptor             { return nil }
+func (x placeholderExtension) HasDefault() bool                           { return false }
+func (x placeholderExtension) Default() pref.Value                        { return pref.Value{} }
+func (x placeholderExtension) DefaultEnumValue() pref.EnumValueDescriptor { return nil }
+func (x placeholderExtension) ContainingOneof() pref.OneofDescriptor      { return nil }
+func (x placeholderExtension) ContainingMessage() pref.MessageDescriptor  { return nil }
+func (x placeholderExtension) Enum() pref.EnumDescriptor                  { return nil }
+func (x placeholderExtension) Message() pref.MessageDescriptor            { return nil }
+func (x placeholderExtension) ProtoType(pref.FieldDescriptor)             { return }
+func (x placeholderExtension) ProtoInternal(pragma.DoNotImplement)        { return }
diff --git a/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go b/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go
new file mode 100644
index 0000000..9ab0910
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go
@@ -0,0 +1,81 @@
+// 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.
+
+package impl
+
+import (
+	"bytes"
+	"compress/gzip"
+	"io/ioutil"
+	"sync"
+
+	"google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// Every enum and message type generated by protoc-gen-go since commit 2fc053c5
+// on February 25th, 2016 has had a method to get the raw descriptor.
+// Types that were not generated by protoc-gen-go or were generated prior
+// to that version are not supported.
+//
+// The []byte returned is the encoded form of a FileDescriptorProto message
+// compressed using GZIP. The []int is the path from the top-level file
+// to the specific message or enum declaration.
+type (
+	enumV1 interface {
+		EnumDescriptor() ([]byte, []int)
+	}
+	messageV1 interface {
+		Descriptor() ([]byte, []int)
+	}
+)
+
+var legacyFileDescCache sync.Map // map[*byte]protoreflect.FileDescriptor
+
+// legacyLoadFileDesc unmarshals b as a compressed FileDescriptorProto message.
+//
+// This assumes that b is immutable and that b does not refer to part of a
+// concatenated series of GZIP files (which would require shenanigans that
+// rely on the concatenation properties of both protobufs and GZIP).
+// File descriptors generated by protoc-gen-go do not rely on that property.
+func legacyLoadFileDesc(b []byte) protoreflect.FileDescriptor {
+	// Fast-path: check whether we already have a cached file descriptor.
+	if fd, ok := legacyFileDescCache.Load(&b[0]); ok {
+		return fd.(protoreflect.FileDescriptor)
+	}
+
+	// Slow-path: decompress and unmarshal the file descriptor proto.
+	zr, err := gzip.NewReader(bytes.NewReader(b))
+	if err != nil {
+		panic(err)
+	}
+	b2, err := ioutil.ReadAll(zr)
+	if err != nil {
+		panic(err)
+	}
+
+	fd := filedesc.Builder{
+		RawDescriptor: b2,
+		FileRegistry:  resolverOnly{protoregistry.GlobalFiles}, // do not register back to global registry
+	}.Build().File
+	if fd, ok := legacyFileDescCache.LoadOrStore(&b[0], fd); ok {
+		return fd.(protoreflect.FileDescriptor)
+	}
+	return fd
+}
+
+type resolverOnly struct {
+	reg *protoregistry.Files
+}
+
+func (r resolverOnly) FindFileByPath(path string) (protoreflect.FileDescriptor, error) {
+	return r.reg.FindFileByPath(path)
+}
+func (r resolverOnly) FindDescriptorByName(name protoreflect.FullName) (protoreflect.Descriptor, error) {
+	return r.reg.FindDescriptorByName(name)
+}
+func (resolverOnly) RegisterFile(protoreflect.FileDescriptor) error {
+	return nil
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go b/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
new file mode 100644
index 0000000..06c68e1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go
@@ -0,0 +1,502 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+	"strings"
+	"sync"
+
+	"google.golang.org/protobuf/internal/descopts"
+	ptag "google.golang.org/protobuf/internal/encoding/tag"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// legacyWrapMessage wraps v as a protoreflect.Message,
+// where v must be a *struct kind and not implement the v2 API already.
+func legacyWrapMessage(v reflect.Value) pref.Message {
+	typ := v.Type()
+	if typ.Kind() != reflect.Ptr || typ.Elem().Kind() != reflect.Struct {
+		return aberrantMessage{v: v}
+	}
+	mt := legacyLoadMessageInfo(typ, "")
+	return mt.MessageOf(v.Interface())
+}
+
+var legacyMessageTypeCache sync.Map // map[reflect.Type]*MessageInfo
+
+// legacyLoadMessageInfo dynamically loads a *MessageInfo for t,
+// where t must be a *struct kind and not implement the v2 API already.
+// The provided name is used if it cannot be determined from the message.
+func legacyLoadMessageInfo(t reflect.Type, name pref.FullName) *MessageInfo {
+	// Fast-path: check if a MessageInfo is cached for this concrete type.
+	if mt, ok := legacyMessageTypeCache.Load(t); ok {
+		return mt.(*MessageInfo)
+	}
+
+	// Slow-path: derive message descriptor and initialize MessageInfo.
+	mi := &MessageInfo{
+		Desc:          legacyLoadMessageDesc(t, name),
+		GoReflectType: t,
+	}
+
+	v := reflect.Zero(t).Interface()
+	if _, ok := v.(legacyMarshaler); ok {
+		mi.methods.Marshal = legacyMarshal
+
+		// We have no way to tell whether the type's Marshal method
+		// supports deterministic serialization or not, but this
+		// preserves the v1 implementation's behavior of always
+		// calling Marshal methods when present.
+		mi.methods.Flags |= piface.SupportMarshalDeterministic
+	}
+	if _, ok := v.(legacyUnmarshaler); ok {
+		mi.methods.Unmarshal = legacyUnmarshal
+	}
+	if _, ok := v.(legacyMerger); ok {
+		mi.methods.Merge = legacyMerge
+	}
+
+	if mi, ok := legacyMessageTypeCache.LoadOrStore(t, mi); ok {
+		return mi.(*MessageInfo)
+	}
+	return mi
+}
+
+var legacyMessageDescCache sync.Map // map[reflect.Type]protoreflect.MessageDescriptor
+
+// LegacyLoadMessageDesc returns an MessageDescriptor derived from the Go type,
+// which must be a *struct kind and not implement the v2 API already.
+//
+// This is exported for testing purposes.
+func LegacyLoadMessageDesc(t reflect.Type) pref.MessageDescriptor {
+	return legacyLoadMessageDesc(t, "")
+}
+func legacyLoadMessageDesc(t reflect.Type, name pref.FullName) pref.MessageDescriptor {
+	// Fast-path: check if a MessageDescriptor is cached for this concrete type.
+	if mi, ok := legacyMessageDescCache.Load(t); ok {
+		return mi.(pref.MessageDescriptor)
+	}
+
+	// Slow-path: initialize MessageDescriptor from the raw descriptor.
+	mv := reflect.Zero(t).Interface()
+	if _, ok := mv.(pref.ProtoMessage); ok {
+		panic(fmt.Sprintf("%v already implements proto.Message", t))
+	}
+	mdV1, ok := mv.(messageV1)
+	if !ok {
+		return aberrantLoadMessageDesc(t, name)
+	}
+
+	// If this is a dynamic message type where there isn't a 1-1 mapping between
+	// Go and protobuf types, calling the Descriptor method on the zero value of
+	// the message type isn't likely to work. If it panics, swallow the panic and
+	// continue as if the Descriptor method wasn't present.
+	b, idxs := func() ([]byte, []int) {
+		defer func() {
+			recover()
+		}()
+		return mdV1.Descriptor()
+	}()
+	if b == nil {
+		return aberrantLoadMessageDesc(t, name)
+	}
+
+	// If the Go type has no fields, then this might be a proto3 empty message
+	// from before the size cache was added. If there are any fields, check to
+	// see that at least one of them looks like something we generated.
+	if nfield := t.Elem().NumField(); nfield > 0 {
+		hasProtoField := false
+		for i := 0; i < nfield; i++ {
+			f := t.Elem().Field(i)
+			if f.Tag.Get("protobuf") != "" || f.Tag.Get("protobuf_oneof") != "" || strings.HasPrefix(f.Name, "XXX_") {
+				hasProtoField = true
+				break
+			}
+		}
+		if !hasProtoField {
+			return aberrantLoadMessageDesc(t, name)
+		}
+	}
+
+	md := legacyLoadFileDesc(b).Messages().Get(idxs[0])
+	for _, i := range idxs[1:] {
+		md = md.Messages().Get(i)
+	}
+	if name != "" && md.FullName() != name {
+		panic(fmt.Sprintf("mismatching message name: got %v, want %v", md.FullName(), name))
+	}
+	if md, ok := legacyMessageDescCache.LoadOrStore(t, md); ok {
+		return md.(protoreflect.MessageDescriptor)
+	}
+	return md
+}
+
+var (
+	aberrantMessageDescLock  sync.Mutex
+	aberrantMessageDescCache map[reflect.Type]protoreflect.MessageDescriptor
+)
+
+// aberrantLoadMessageDesc returns an MessageDescriptor derived from the Go type,
+// which must not implement protoreflect.ProtoMessage or messageV1.
+//
+// This is a best-effort derivation of the message descriptor using the protobuf
+// tags on the struct fields.
+func aberrantLoadMessageDesc(t reflect.Type, name pref.FullName) pref.MessageDescriptor {
+	aberrantMessageDescLock.Lock()
+	defer aberrantMessageDescLock.Unlock()
+	if aberrantMessageDescCache == nil {
+		aberrantMessageDescCache = make(map[reflect.Type]protoreflect.MessageDescriptor)
+	}
+	return aberrantLoadMessageDescReentrant(t, name)
+}
+func aberrantLoadMessageDescReentrant(t reflect.Type, name pref.FullName) pref.MessageDescriptor {
+	// Fast-path: check if an MessageDescriptor is cached for this concrete type.
+	if md, ok := aberrantMessageDescCache[t]; ok {
+		return md
+	}
+
+	// Slow-path: construct a descriptor from the Go struct type (best-effort).
+	// Cache the MessageDescriptor early on so that we can resolve internal
+	// cyclic references.
+	md := &filedesc.Message{L2: new(filedesc.MessageL2)}
+	md.L0.FullName = aberrantDeriveMessageName(t, name)
+	md.L0.ParentFile = filedesc.SurrogateProto2
+	aberrantMessageDescCache[t] = md
+
+	if t.Kind() != reflect.Ptr || t.Elem().Kind() != reflect.Struct {
+		return md
+	}
+
+	// Try to determine if the message is using proto3 by checking scalars.
+	for i := 0; i < t.Elem().NumField(); i++ {
+		f := t.Elem().Field(i)
+		if tag := f.Tag.Get("protobuf"); tag != "" {
+			switch f.Type.Kind() {
+			case reflect.Bool, reflect.Int32, reflect.Int64, reflect.Uint32, reflect.Uint64, reflect.Float32, reflect.Float64, reflect.String:
+				md.L0.ParentFile = filedesc.SurrogateProto3
+			}
+			for _, s := range strings.Split(tag, ",") {
+				if s == "proto3" {
+					md.L0.ParentFile = filedesc.SurrogateProto3
+				}
+			}
+		}
+	}
+
+	// Obtain a list of oneof wrapper types.
+	var oneofWrappers []reflect.Type
+	for _, method := range []string{"XXX_OneofFuncs", "XXX_OneofWrappers"} {
+		if fn, ok := t.MethodByName(method); ok {
+			for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
+				if vs, ok := v.Interface().([]interface{}); ok {
+					for _, v := range vs {
+						oneofWrappers = append(oneofWrappers, reflect.TypeOf(v))
+					}
+				}
+			}
+		}
+	}
+
+	// Obtain a list of the extension ranges.
+	if fn, ok := t.MethodByName("ExtensionRangeArray"); ok {
+		vs := fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))})[0]
+		for i := 0; i < vs.Len(); i++ {
+			v := vs.Index(i)
+			md.L2.ExtensionRanges.List = append(md.L2.ExtensionRanges.List, [2]pref.FieldNumber{
+				pref.FieldNumber(v.FieldByName("Start").Int()),
+				pref.FieldNumber(v.FieldByName("End").Int() + 1),
+			})
+			md.L2.ExtensionRangeOptions = append(md.L2.ExtensionRangeOptions, nil)
+		}
+	}
+
+	// Derive the message fields by inspecting the struct fields.
+	for i := 0; i < t.Elem().NumField(); i++ {
+		f := t.Elem().Field(i)
+		if tag := f.Tag.Get("protobuf"); tag != "" {
+			tagKey := f.Tag.Get("protobuf_key")
+			tagVal := f.Tag.Get("protobuf_val")
+			aberrantAppendField(md, f.Type, tag, tagKey, tagVal)
+		}
+		if tag := f.Tag.Get("protobuf_oneof"); tag != "" {
+			n := len(md.L2.Oneofs.List)
+			md.L2.Oneofs.List = append(md.L2.Oneofs.List, filedesc.Oneof{})
+			od := &md.L2.Oneofs.List[n]
+			od.L0.FullName = md.FullName().Append(pref.Name(tag))
+			od.L0.ParentFile = md.L0.ParentFile
+			od.L0.Parent = md
+			od.L0.Index = n
+
+			for _, t := range oneofWrappers {
+				if t.Implements(f.Type) {
+					f := t.Elem().Field(0)
+					if tag := f.Tag.Get("protobuf"); tag != "" {
+						aberrantAppendField(md, f.Type, tag, "", "")
+						fd := &md.L2.Fields.List[len(md.L2.Fields.List)-1]
+						fd.L1.ContainingOneof = od
+						od.L1.Fields.List = append(od.L1.Fields.List, fd)
+					}
+				}
+			}
+		}
+	}
+
+	return md
+}
+
+func aberrantDeriveMessageName(t reflect.Type, name pref.FullName) pref.FullName {
+	if name.IsValid() {
+		return name
+	}
+	func() {
+		defer func() { recover() }() // swallow possible nil panics
+		if m, ok := reflect.Zero(t).Interface().(interface{ XXX_MessageName() string }); ok {
+			name = pref.FullName(m.XXX_MessageName())
+		}
+	}()
+	if name.IsValid() {
+		return name
+	}
+	if t.Kind() == reflect.Ptr {
+		t = t.Elem()
+	}
+	return AberrantDeriveFullName(t)
+}
+
+func aberrantAppendField(md *filedesc.Message, goType reflect.Type, tag, tagKey, tagVal string) {
+	t := goType
+	isOptional := t.Kind() == reflect.Ptr && t.Elem().Kind() != reflect.Struct
+	isRepeated := t.Kind() == reflect.Slice && t.Elem().Kind() != reflect.Uint8
+	if isOptional || isRepeated {
+		t = t.Elem()
+	}
+	fd := ptag.Unmarshal(tag, t, placeholderEnumValues{}).(*filedesc.Field)
+
+	// Append field descriptor to the message.
+	n := len(md.L2.Fields.List)
+	md.L2.Fields.List = append(md.L2.Fields.List, *fd)
+	fd = &md.L2.Fields.List[n]
+	fd.L0.FullName = md.FullName().Append(fd.Name())
+	fd.L0.ParentFile = md.L0.ParentFile
+	fd.L0.Parent = md
+	fd.L0.Index = n
+
+	if fd.L1.IsWeak || fd.L1.HasPacked {
+		fd.L1.Options = func() pref.ProtoMessage {
+			opts := descopts.Field.ProtoReflect().New()
+			if fd.L1.IsWeak {
+				opts.Set(opts.Descriptor().Fields().ByName("weak"), protoreflect.ValueOfBool(true))
+			}
+			if fd.L1.HasPacked {
+				opts.Set(opts.Descriptor().Fields().ByName("packed"), protoreflect.ValueOfBool(fd.L1.IsPacked))
+			}
+			return opts.Interface()
+		}
+	}
+
+	// Populate Enum and Message.
+	if fd.Enum() == nil && fd.Kind() == pref.EnumKind {
+		switch v := reflect.Zero(t).Interface().(type) {
+		case pref.Enum:
+			fd.L1.Enum = v.Descriptor()
+		default:
+			fd.L1.Enum = LegacyLoadEnumDesc(t)
+		}
+	}
+	if fd.Message() == nil && (fd.Kind() == pref.MessageKind || fd.Kind() == pref.GroupKind) {
+		switch v := reflect.Zero(t).Interface().(type) {
+		case pref.ProtoMessage:
+			fd.L1.Message = v.ProtoReflect().Descriptor()
+		case messageV1:
+			fd.L1.Message = LegacyLoadMessageDesc(t)
+		default:
+			if t.Kind() == reflect.Map {
+				n := len(md.L1.Messages.List)
+				md.L1.Messages.List = append(md.L1.Messages.List, filedesc.Message{L2: new(filedesc.MessageL2)})
+				md2 := &md.L1.Messages.List[n]
+				md2.L0.FullName = md.FullName().Append(pref.Name(strs.MapEntryName(string(fd.Name()))))
+				md2.L0.ParentFile = md.L0.ParentFile
+				md2.L0.Parent = md
+				md2.L0.Index = n
+
+				md2.L1.IsMapEntry = true
+				md2.L2.Options = func() pref.ProtoMessage {
+					opts := descopts.Message.ProtoReflect().New()
+					opts.Set(opts.Descriptor().Fields().ByName("map_entry"), protoreflect.ValueOfBool(true))
+					return opts.Interface()
+				}
+
+				aberrantAppendField(md2, t.Key(), tagKey, "", "")
+				aberrantAppendField(md2, t.Elem(), tagVal, "", "")
+
+				fd.L1.Message = md2
+				break
+			}
+			fd.L1.Message = aberrantLoadMessageDescReentrant(t, "")
+		}
+	}
+}
+
+type placeholderEnumValues struct {
+	protoreflect.EnumValueDescriptors
+}
+
+func (placeholderEnumValues) ByNumber(n pref.EnumNumber) pref.EnumValueDescriptor {
+	return filedesc.PlaceholderEnumValue(pref.FullName(fmt.Sprintf("UNKNOWN_%d", n)))
+}
+
+// legacyMarshaler is the proto.Marshaler interface superseded by protoiface.Methoder.
+type legacyMarshaler interface {
+	Marshal() ([]byte, error)
+}
+
+// legacyUnmarshaler is the proto.Unmarshaler interface superseded by protoiface.Methoder.
+type legacyUnmarshaler interface {
+	Unmarshal([]byte) error
+}
+
+// legacyMerger is the proto.Merger interface superseded by protoiface.Methoder.
+type legacyMerger interface {
+	Merge(protoiface.MessageV1)
+}
+
+var legacyProtoMethods = &piface.Methods{
+	Marshal:   legacyMarshal,
+	Unmarshal: legacyUnmarshal,
+	Merge:     legacyMerge,
+
+	// We have no way to tell whether the type's Marshal method
+	// supports deterministic serialization or not, but this
+	// preserves the v1 implementation's behavior of always
+	// calling Marshal methods when present.
+	Flags: piface.SupportMarshalDeterministic,
+}
+
+func legacyMarshal(in piface.MarshalInput) (piface.MarshalOutput, error) {
+	v := in.Message.(unwrapper).protoUnwrap()
+	marshaler, ok := v.(legacyMarshaler)
+	if !ok {
+		return piface.MarshalOutput{}, errors.New("%T does not implement Marshal", v)
+	}
+	out, err := marshaler.Marshal()
+	if in.Buf != nil {
+		out = append(in.Buf, out...)
+	}
+	return piface.MarshalOutput{
+		Buf: out,
+	}, err
+}
+
+func legacyUnmarshal(in piface.UnmarshalInput) (piface.UnmarshalOutput, error) {
+	v := in.Message.(unwrapper).protoUnwrap()
+	unmarshaler, ok := v.(legacyUnmarshaler)
+	if !ok {
+		return piface.UnmarshalOutput{}, errors.New("%T does not implement Marshal", v)
+	}
+	return piface.UnmarshalOutput{}, unmarshaler.Unmarshal(in.Buf)
+}
+
+func legacyMerge(in piface.MergeInput) piface.MergeOutput {
+	dstv := in.Destination.(unwrapper).protoUnwrap()
+	merger, ok := dstv.(legacyMerger)
+	if !ok {
+		return piface.MergeOutput{}
+	}
+	merger.Merge(Export{}.ProtoMessageV1Of(in.Source))
+	return piface.MergeOutput{Flags: piface.MergeComplete}
+}
+
+// aberrantMessageType implements MessageType for all types other than pointer-to-struct.
+type aberrantMessageType struct {
+	t reflect.Type
+}
+
+func (mt aberrantMessageType) New() pref.Message {
+	return aberrantMessage{reflect.Zero(mt.t)}
+}
+func (mt aberrantMessageType) Zero() pref.Message {
+	return aberrantMessage{reflect.Zero(mt.t)}
+}
+func (mt aberrantMessageType) GoType() reflect.Type {
+	return mt.t
+}
+func (mt aberrantMessageType) Descriptor() pref.MessageDescriptor {
+	return LegacyLoadMessageDesc(mt.t)
+}
+
+// aberrantMessage implements Message for all types other than pointer-to-struct.
+//
+// When the underlying type implements legacyMarshaler or legacyUnmarshaler,
+// the aberrant Message can be marshaled or unmarshaled. Otherwise, there is
+// not much that can be done with values of this type.
+type aberrantMessage struct {
+	v reflect.Value
+}
+
+func (m aberrantMessage) ProtoReflect() pref.Message {
+	return m
+}
+
+func (m aberrantMessage) Descriptor() pref.MessageDescriptor {
+	return LegacyLoadMessageDesc(m.v.Type())
+}
+func (m aberrantMessage) Type() pref.MessageType {
+	return aberrantMessageType{m.v.Type()}
+}
+func (m aberrantMessage) New() pref.Message {
+	return aberrantMessage{reflect.Zero(m.v.Type())}
+}
+func (m aberrantMessage) Interface() pref.ProtoMessage {
+	return m
+}
+func (m aberrantMessage) Range(f func(pref.FieldDescriptor, pref.Value) bool) {
+}
+func (m aberrantMessage) Has(pref.FieldDescriptor) bool {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) Clear(pref.FieldDescriptor) {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) Get(pref.FieldDescriptor) pref.Value {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) Set(pref.FieldDescriptor, pref.Value) {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) Mutable(pref.FieldDescriptor) pref.Value {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) NewField(pref.FieldDescriptor) pref.Value {
+	panic("invalid field descriptor")
+}
+func (m aberrantMessage) WhichOneof(pref.OneofDescriptor) pref.FieldDescriptor {
+	panic("invalid oneof descriptor")
+}
+func (m aberrantMessage) GetUnknown() pref.RawFields {
+	return nil
+}
+func (m aberrantMessage) SetUnknown(pref.RawFields) {
+	// SetUnknown discards its input on messages which don't support unknown field storage.
+}
+func (m aberrantMessage) IsValid() bool {
+	// An invalid message is a read-only, empty message. Since we don't know anything
+	// about the alleged contents of this message, we can't say with confidence that
+	// it is invalid in this sense. Therefore, report it as valid.
+	return true
+}
+func (m aberrantMessage) ProtoMethods() *piface.Methods {
+	return legacyProtoMethods
+}
+func (m aberrantMessage) protoUnwrap() interface{} {
+	return m.v.Interface()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/merge.go b/vendor/google.golang.org/protobuf/internal/impl/merge.go
new file mode 100644
index 0000000..cdc4267
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/merge.go
@@ -0,0 +1,176 @@
+// 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 impl
+
+import (
+	"fmt"
+	"reflect"
+
+	"google.golang.org/protobuf/proto"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+type mergeOptions struct{}
+
+func (o mergeOptions) Merge(dst, src proto.Message) {
+	proto.Merge(dst, src)
+}
+
+// merge is protoreflect.Methods.Merge.
+func (mi *MessageInfo) merge(in piface.MergeInput) piface.MergeOutput {
+	dp, ok := mi.getPointer(in.Destination)
+	if !ok {
+		return piface.MergeOutput{}
+	}
+	sp, ok := mi.getPointer(in.Source)
+	if !ok {
+		return piface.MergeOutput{}
+	}
+	mi.mergePointer(dp, sp, mergeOptions{})
+	return piface.MergeOutput{Flags: piface.MergeComplete}
+}
+
+func (mi *MessageInfo) mergePointer(dst, src pointer, opts mergeOptions) {
+	mi.init()
+	if dst.IsNil() {
+		panic(fmt.Sprintf("invalid value: merging into nil message"))
+	}
+	if src.IsNil() {
+		return
+	}
+	for _, f := range mi.orderedCoderFields {
+		if f.funcs.merge == nil {
+			continue
+		}
+		sfptr := src.Apply(f.offset)
+		if f.isPointer && sfptr.Elem().IsNil() {
+			continue
+		}
+		f.funcs.merge(dst.Apply(f.offset), sfptr, f, opts)
+	}
+	if mi.extensionOffset.IsValid() {
+		sext := src.Apply(mi.extensionOffset).Extensions()
+		dext := dst.Apply(mi.extensionOffset).Extensions()
+		if *dext == nil {
+			*dext = make(map[int32]ExtensionField)
+		}
+		for num, sx := range *sext {
+			xt := sx.Type()
+			xi := getExtensionFieldInfo(xt)
+			if xi.funcs.merge == nil {
+				continue
+			}
+			dx := (*dext)[num]
+			var dv pref.Value
+			if dx.Type() == sx.Type() {
+				dv = dx.Value()
+			}
+			if !dv.IsValid() && xi.unmarshalNeedsValue {
+				dv = xt.New()
+			}
+			dv = xi.funcs.merge(dv, sx.Value(), opts)
+			dx.Set(sx.Type(), dv)
+			(*dext)[num] = dx
+		}
+	}
+	if mi.unknownOffset.IsValid() {
+		du := dst.Apply(mi.unknownOffset).Bytes()
+		su := src.Apply(mi.unknownOffset).Bytes()
+		if len(*su) > 0 {
+			*du = append(*du, *su...)
+		}
+	}
+}
+
+func mergeScalarValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	return src
+}
+
+func mergeBytesValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	return pref.ValueOfBytes(append(emptyBuf[:], src.Bytes()...))
+}
+
+func mergeListValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	dstl := dst.List()
+	srcl := src.List()
+	for i, llen := 0, srcl.Len(); i < llen; i++ {
+		dstl.Append(srcl.Get(i))
+	}
+	return dst
+}
+
+func mergeBytesListValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	dstl := dst.List()
+	srcl := src.List()
+	for i, llen := 0, srcl.Len(); i < llen; i++ {
+		sb := srcl.Get(i).Bytes()
+		db := append(emptyBuf[:], sb...)
+		dstl.Append(pref.ValueOfBytes(db))
+	}
+	return dst
+}
+
+func mergeMessageListValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	dstl := dst.List()
+	srcl := src.List()
+	for i, llen := 0, srcl.Len(); i < llen; i++ {
+		sm := srcl.Get(i).Message()
+		dm := proto.Clone(sm.Interface()).ProtoReflect()
+		dstl.Append(pref.ValueOfMessage(dm))
+	}
+	return dst
+}
+
+func mergeMessageValue(dst, src pref.Value, opts mergeOptions) pref.Value {
+	opts.Merge(dst.Message().Interface(), src.Message().Interface())
+	return dst
+}
+
+func mergeMessage(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+	if f.mi != nil {
+		if dst.Elem().IsNil() {
+			dst.SetPointer(pointerOfValue(reflect.New(f.mi.GoReflectType.Elem())))
+		}
+		f.mi.mergePointer(dst.Elem(), src.Elem(), opts)
+	} else {
+		dm := dst.AsValueOf(f.ft).Elem()
+		sm := src.AsValueOf(f.ft).Elem()
+		if dm.IsNil() {
+			dm.Set(reflect.New(f.ft.Elem()))
+		}
+		opts.Merge(asMessage(dm), asMessage(sm))
+	}
+}
+
+func mergeMessageSlice(dst, src pointer, f *coderFieldInfo, opts mergeOptions) {
+	for _, sp := range src.PointerSlice() {
+		dm := reflect.New(f.ft.Elem().Elem())
+		if f.mi != nil {
+			f.mi.mergePointer(pointerOfValue(dm), sp, opts)
+		} else {
+			opts.Merge(asMessage(dm), asMessage(sp.AsValueOf(f.ft.Elem().Elem())))
+		}
+		dst.AppendPointerSlice(pointerOfValue(dm))
+	}
+}
+
+func mergeBytes(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Bytes() = append(emptyBuf[:], *src.Bytes()...)
+}
+
+func mergeBytesNoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Bytes()
+	if len(v) > 0 {
+		*dst.Bytes() = append(emptyBuf[:], v...)
+	}
+}
+
+func mergeBytesSlice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.BytesSlice()
+	for _, v := range *src.BytesSlice() {
+		*ds = append(*ds, append(emptyBuf[:], v...))
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go b/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go
new file mode 100644
index 0000000..8816c27
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go
@@ -0,0 +1,209 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package impl
+
+import ()
+
+func mergeBool(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Bool() = *src.Bool()
+}
+
+func mergeBoolNoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Bool()
+	if v != false {
+		*dst.Bool() = v
+	}
+}
+
+func mergeBoolPtr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.BoolPtr()
+	if p != nil {
+		v := *p
+		*dst.BoolPtr() = &v
+	}
+}
+
+func mergeBoolSlice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.BoolSlice()
+	ss := src.BoolSlice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeInt32(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Int32() = *src.Int32()
+}
+
+func mergeInt32NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Int32()
+	if v != 0 {
+		*dst.Int32() = v
+	}
+}
+
+func mergeInt32Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Int32Ptr()
+	if p != nil {
+		v := *p
+		*dst.Int32Ptr() = &v
+	}
+}
+
+func mergeInt32Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Int32Slice()
+	ss := src.Int32Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeUint32(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Uint32() = *src.Uint32()
+}
+
+func mergeUint32NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Uint32()
+	if v != 0 {
+		*dst.Uint32() = v
+	}
+}
+
+func mergeUint32Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Uint32Ptr()
+	if p != nil {
+		v := *p
+		*dst.Uint32Ptr() = &v
+	}
+}
+
+func mergeUint32Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Uint32Slice()
+	ss := src.Uint32Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeInt64(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Int64() = *src.Int64()
+}
+
+func mergeInt64NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Int64()
+	if v != 0 {
+		*dst.Int64() = v
+	}
+}
+
+func mergeInt64Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Int64Ptr()
+	if p != nil {
+		v := *p
+		*dst.Int64Ptr() = &v
+	}
+}
+
+func mergeInt64Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Int64Slice()
+	ss := src.Int64Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeUint64(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Uint64() = *src.Uint64()
+}
+
+func mergeUint64NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Uint64()
+	if v != 0 {
+		*dst.Uint64() = v
+	}
+}
+
+func mergeUint64Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Uint64Ptr()
+	if p != nil {
+		v := *p
+		*dst.Uint64Ptr() = &v
+	}
+}
+
+func mergeUint64Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Uint64Slice()
+	ss := src.Uint64Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeFloat32(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Float32() = *src.Float32()
+}
+
+func mergeFloat32NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Float32()
+	if v != 0 {
+		*dst.Float32() = v
+	}
+}
+
+func mergeFloat32Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Float32Ptr()
+	if p != nil {
+		v := *p
+		*dst.Float32Ptr() = &v
+	}
+}
+
+func mergeFloat32Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Float32Slice()
+	ss := src.Float32Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeFloat64(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.Float64() = *src.Float64()
+}
+
+func mergeFloat64NoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.Float64()
+	if v != 0 {
+		*dst.Float64() = v
+	}
+}
+
+func mergeFloat64Ptr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.Float64Ptr()
+	if p != nil {
+		v := *p
+		*dst.Float64Ptr() = &v
+	}
+}
+
+func mergeFloat64Slice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.Float64Slice()
+	ss := src.Float64Slice()
+	*ds = append(*ds, *ss...)
+}
+
+func mergeString(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	*dst.String() = *src.String()
+}
+
+func mergeStringNoZero(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	v := *src.String()
+	if v != "" {
+		*dst.String() = v
+	}
+}
+
+func mergeStringPtr(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	p := *src.StringPtr()
+	if p != nil {
+		v := *p
+		*dst.StringPtr() = &v
+	}
+}
+
+func mergeStringSlice(dst, src pointer, _ *coderFieldInfo, _ mergeOptions) {
+	ds := dst.StringSlice()
+	ss := src.StringSlice()
+	*ds = append(*ds, *ss...)
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/message.go b/vendor/google.golang.org/protobuf/internal/impl/message.go
new file mode 100644
index 0000000..c026a98
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/message.go
@@ -0,0 +1,215 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+	"strconv"
+	"strings"
+	"sync"
+	"sync/atomic"
+
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// MessageInfo provides protobuf related functionality for a given Go type
+// that represents a message. A given instance of MessageInfo is tied to
+// exactly one Go type, which must be a pointer to a struct type.
+//
+// The exported fields must be populated before any methods are called
+// and cannot be mutated after set.
+type MessageInfo struct {
+	// GoReflectType is the underlying message Go type and must be populated.
+	GoReflectType reflect.Type // pointer to struct
+
+	// Desc is the underlying message descriptor type and must be populated.
+	Desc pref.MessageDescriptor
+
+	// Exporter must be provided in a purego environment in order to provide
+	// access to unexported fields.
+	Exporter exporter
+
+	// OneofWrappers is list of pointers to oneof wrapper struct types.
+	OneofWrappers []interface{}
+
+	initMu   sync.Mutex // protects all unexported fields
+	initDone uint32
+
+	reflectMessageInfo // for reflection implementation
+	coderMessageInfo   // for fast-path method implementations
+}
+
+// exporter is a function that returns a reference to the ith field of v,
+// where v is a pointer to a struct. It returns nil if it does not support
+// exporting the requested field (e.g., already exported).
+type exporter func(v interface{}, i int) interface{}
+
+// getMessageInfo returns the MessageInfo for any message type that
+// is generated by our implementation of protoc-gen-go (for v2 and on).
+// If it is unable to obtain a MessageInfo, it returns nil.
+func getMessageInfo(mt reflect.Type) *MessageInfo {
+	m, ok := reflect.Zero(mt).Interface().(pref.ProtoMessage)
+	if !ok {
+		return nil
+	}
+	mr, ok := m.ProtoReflect().(interface{ ProtoMessageInfo() *MessageInfo })
+	if !ok {
+		return nil
+	}
+	return mr.ProtoMessageInfo()
+}
+
+func (mi *MessageInfo) init() {
+	// This function is called in the hot path. Inline the sync.Once logic,
+	// since allocating a closure for Once.Do is expensive.
+	// Keep init small to ensure that it can be inlined.
+	if atomic.LoadUint32(&mi.initDone) == 0 {
+		mi.initOnce()
+	}
+}
+
+func (mi *MessageInfo) initOnce() {
+	mi.initMu.Lock()
+	defer mi.initMu.Unlock()
+	if mi.initDone == 1 {
+		return
+	}
+
+	t := mi.GoReflectType
+	if t.Kind() != reflect.Ptr && t.Elem().Kind() != reflect.Struct {
+		panic(fmt.Sprintf("got %v, want *struct kind", t))
+	}
+	t = t.Elem()
+
+	si := mi.makeStructInfo(t)
+	mi.makeReflectFuncs(t, si)
+	mi.makeCoderMethods(t, si)
+
+	atomic.StoreUint32(&mi.initDone, 1)
+}
+
+// getPointer returns the pointer for a message, which should be of
+// the type of the MessageInfo. If the message is of a different type,
+// it returns ok==false.
+func (mi *MessageInfo) getPointer(m pref.Message) (p pointer, ok bool) {
+	switch m := m.(type) {
+	case *messageState:
+		return m.pointer(), m.messageInfo() == mi
+	case *messageReflectWrapper:
+		return m.pointer(), m.messageInfo() == mi
+	}
+	return pointer{}, false
+}
+
+type (
+	SizeCache       = int32
+	WeakFields      = map[int32]protoreflect.ProtoMessage
+	UnknownFields   = []byte
+	ExtensionFields = map[int32]ExtensionField
+)
+
+var (
+	sizecacheType       = reflect.TypeOf(SizeCache(0))
+	weakFieldsType      = reflect.TypeOf(WeakFields(nil))
+	unknownFieldsType   = reflect.TypeOf(UnknownFields(nil))
+	extensionFieldsType = reflect.TypeOf(ExtensionFields(nil))
+)
+
+type structInfo struct {
+	sizecacheOffset offset
+	weakOffset      offset
+	unknownOffset   offset
+	extensionOffset offset
+
+	fieldsByNumber        map[pref.FieldNumber]reflect.StructField
+	oneofsByName          map[pref.Name]reflect.StructField
+	oneofWrappersByType   map[reflect.Type]pref.FieldNumber
+	oneofWrappersByNumber map[pref.FieldNumber]reflect.Type
+}
+
+func (mi *MessageInfo) makeStructInfo(t reflect.Type) structInfo {
+	si := structInfo{
+		sizecacheOffset: invalidOffset,
+		weakOffset:      invalidOffset,
+		unknownOffset:   invalidOffset,
+		extensionOffset: invalidOffset,
+
+		fieldsByNumber:        map[pref.FieldNumber]reflect.StructField{},
+		oneofsByName:          map[pref.Name]reflect.StructField{},
+		oneofWrappersByType:   map[reflect.Type]pref.FieldNumber{},
+		oneofWrappersByNumber: map[pref.FieldNumber]reflect.Type{},
+	}
+
+fieldLoop:
+	for i := 0; i < t.NumField(); i++ {
+		switch f := t.Field(i); f.Name {
+		case genid.SizeCache_goname, genid.SizeCacheA_goname:
+			if f.Type == sizecacheType {
+				si.sizecacheOffset = offsetOf(f, mi.Exporter)
+			}
+		case genid.WeakFields_goname, genid.WeakFieldsA_goname:
+			if f.Type == weakFieldsType {
+				si.weakOffset = offsetOf(f, mi.Exporter)
+			}
+		case genid.UnknownFields_goname, genid.UnknownFieldsA_goname:
+			if f.Type == unknownFieldsType {
+				si.unknownOffset = offsetOf(f, mi.Exporter)
+			}
+		case genid.ExtensionFields_goname, genid.ExtensionFieldsA_goname, genid.ExtensionFieldsB_goname:
+			if f.Type == extensionFieldsType {
+				si.extensionOffset = offsetOf(f, mi.Exporter)
+			}
+		default:
+			for _, s := range strings.Split(f.Tag.Get("protobuf"), ",") {
+				if len(s) > 0 && strings.Trim(s, "0123456789") == "" {
+					n, _ := strconv.ParseUint(s, 10, 64)
+					si.fieldsByNumber[pref.FieldNumber(n)] = f
+					continue fieldLoop
+				}
+			}
+			if s := f.Tag.Get("protobuf_oneof"); len(s) > 0 {
+				si.oneofsByName[pref.Name(s)] = f
+				continue fieldLoop
+			}
+		}
+	}
+
+	// Derive a mapping of oneof wrappers to fields.
+	oneofWrappers := mi.OneofWrappers
+	for _, method := range []string{"XXX_OneofFuncs", "XXX_OneofWrappers"} {
+		if fn, ok := reflect.PtrTo(t).MethodByName(method); ok {
+			for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
+				if vs, ok := v.Interface().([]interface{}); ok {
+					oneofWrappers = vs
+				}
+			}
+		}
+	}
+	for _, v := range oneofWrappers {
+		tf := reflect.TypeOf(v).Elem()
+		f := tf.Field(0)
+		for _, s := range strings.Split(f.Tag.Get("protobuf"), ",") {
+			if len(s) > 0 && strings.Trim(s, "0123456789") == "" {
+				n, _ := strconv.ParseUint(s, 10, 64)
+				si.oneofWrappersByType[tf] = pref.FieldNumber(n)
+				si.oneofWrappersByNumber[pref.FieldNumber(n)] = tf
+				break
+			}
+		}
+	}
+
+	return si
+}
+
+func (mi *MessageInfo) New() protoreflect.Message {
+	return mi.MessageOf(reflect.New(mi.GoReflectType.Elem()).Interface())
+}
+func (mi *MessageInfo) Zero() protoreflect.Message {
+	return mi.MessageOf(reflect.Zero(mi.GoReflectType).Interface())
+}
+func (mi *MessageInfo) Descriptor() protoreflect.MessageDescriptor { return mi.Desc }
diff --git a/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go b/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go
new file mode 100644
index 0000000..0f4b8db
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go
@@ -0,0 +1,364 @@
+// 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 impl
+
+import (
+	"fmt"
+	"reflect"
+
+	"google.golang.org/protobuf/internal/pragma"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type reflectMessageInfo struct {
+	fields map[pref.FieldNumber]*fieldInfo
+	oneofs map[pref.Name]*oneofInfo
+
+	// denseFields is a subset of fields where:
+	//	0 < fieldDesc.Number() < len(denseFields)
+	// It provides faster access to the fieldInfo, but may be incomplete.
+	denseFields []*fieldInfo
+
+	// rangeInfos is a list of all fields (not belonging to a oneof) and oneofs.
+	rangeInfos []interface{} // either *fieldInfo or *oneofInfo
+
+	getUnknown   func(pointer) pref.RawFields
+	setUnknown   func(pointer, pref.RawFields)
+	extensionMap func(pointer) *extensionMap
+
+	nilMessage atomicNilMessage
+}
+
+// makeReflectFuncs generates the set of functions to support reflection.
+func (mi *MessageInfo) makeReflectFuncs(t reflect.Type, si structInfo) {
+	mi.makeKnownFieldsFunc(si)
+	mi.makeUnknownFieldsFunc(t, si)
+	mi.makeExtensionFieldsFunc(t, si)
+}
+
+// makeKnownFieldsFunc generates functions for operations that can be performed
+// on each protobuf message field. It takes in a reflect.Type representing the
+// Go struct and matches message fields with struct fields.
+//
+// This code assumes that the struct is well-formed and panics if there are
+// any discrepancies.
+func (mi *MessageInfo) makeKnownFieldsFunc(si structInfo) {
+	mi.fields = map[pref.FieldNumber]*fieldInfo{}
+	md := mi.Desc
+	fds := md.Fields()
+	for i := 0; i < fds.Len(); i++ {
+		fd := fds.Get(i)
+		fs := si.fieldsByNumber[fd.Number()]
+		var fi fieldInfo
+		switch {
+		case fd.ContainingOneof() != nil && !fd.ContainingOneof().IsSynthetic():
+			fi = fieldInfoForOneof(fd, si.oneofsByName[fd.ContainingOneof().Name()], mi.Exporter, si.oneofWrappersByNumber[fd.Number()])
+		case fd.IsMap():
+			fi = fieldInfoForMap(fd, fs, mi.Exporter)
+		case fd.IsList():
+			fi = fieldInfoForList(fd, fs, mi.Exporter)
+		case fd.IsWeak():
+			fi = fieldInfoForWeakMessage(fd, si.weakOffset)
+		case fd.Kind() == pref.MessageKind || fd.Kind() == pref.GroupKind:
+			fi = fieldInfoForMessage(fd, fs, mi.Exporter)
+		default:
+			fi = fieldInfoForScalar(fd, fs, mi.Exporter)
+		}
+		mi.fields[fd.Number()] = &fi
+	}
+
+	mi.oneofs = map[pref.Name]*oneofInfo{}
+	for i := 0; i < md.Oneofs().Len(); i++ {
+		od := md.Oneofs().Get(i)
+		mi.oneofs[od.Name()] = makeOneofInfo(od, si, mi.Exporter)
+	}
+
+	mi.denseFields = make([]*fieldInfo, fds.Len()*2)
+	for i := 0; i < fds.Len(); i++ {
+		if fd := fds.Get(i); int(fd.Number()) < len(mi.denseFields) {
+			mi.denseFields[fd.Number()] = mi.fields[fd.Number()]
+		}
+	}
+
+	for i := 0; i < fds.Len(); {
+		fd := fds.Get(i)
+		if od := fd.ContainingOneof(); od != nil && !od.IsSynthetic() {
+			mi.rangeInfos = append(mi.rangeInfos, mi.oneofs[od.Name()])
+			i += od.Fields().Len()
+		} else {
+			mi.rangeInfos = append(mi.rangeInfos, mi.fields[fd.Number()])
+			i++
+		}
+	}
+}
+
+func (mi *MessageInfo) makeUnknownFieldsFunc(t reflect.Type, si structInfo) {
+	mi.getUnknown = func(pointer) pref.RawFields { return nil }
+	mi.setUnknown = func(pointer, pref.RawFields) { return }
+	if si.unknownOffset.IsValid() {
+		mi.getUnknown = func(p pointer) pref.RawFields {
+			if p.IsNil() {
+				return nil
+			}
+			rv := p.Apply(si.unknownOffset).AsValueOf(unknownFieldsType)
+			return pref.RawFields(*rv.Interface().(*[]byte))
+		}
+		mi.setUnknown = func(p pointer, b pref.RawFields) {
+			if p.IsNil() {
+				panic("invalid SetUnknown on nil Message")
+			}
+			rv := p.Apply(si.unknownOffset).AsValueOf(unknownFieldsType)
+			*rv.Interface().(*[]byte) = []byte(b)
+		}
+	} else {
+		mi.getUnknown = func(pointer) pref.RawFields {
+			return nil
+		}
+		mi.setUnknown = func(p pointer, _ pref.RawFields) {
+			if p.IsNil() {
+				panic("invalid SetUnknown on nil Message")
+			}
+		}
+	}
+}
+
+func (mi *MessageInfo) makeExtensionFieldsFunc(t reflect.Type, si structInfo) {
+	if si.extensionOffset.IsValid() {
+		mi.extensionMap = func(p pointer) *extensionMap {
+			if p.IsNil() {
+				return (*extensionMap)(nil)
+			}
+			v := p.Apply(si.extensionOffset).AsValueOf(extensionFieldsType)
+			return (*extensionMap)(v.Interface().(*map[int32]ExtensionField))
+		}
+	} else {
+		mi.extensionMap = func(pointer) *extensionMap {
+			return (*extensionMap)(nil)
+		}
+	}
+}
+
+type extensionMap map[int32]ExtensionField
+
+func (m *extensionMap) Range(f func(pref.FieldDescriptor, pref.Value) bool) {
+	if m != nil {
+		for _, x := range *m {
+			xd := x.Type().TypeDescriptor()
+			v := x.Value()
+			if xd.IsList() && v.List().Len() == 0 {
+				continue
+			}
+			if !f(xd, v) {
+				return
+			}
+		}
+	}
+}
+func (m *extensionMap) Has(xt pref.ExtensionType) (ok bool) {
+	if m == nil {
+		return false
+	}
+	xd := xt.TypeDescriptor()
+	x, ok := (*m)[int32(xd.Number())]
+	if !ok {
+		return false
+	}
+	switch {
+	case xd.IsList():
+		return x.Value().List().Len() > 0
+	case xd.IsMap():
+		return x.Value().Map().Len() > 0
+	case xd.Message() != nil:
+		return x.Value().Message().IsValid()
+	}
+	return true
+}
+func (m *extensionMap) Clear(xt pref.ExtensionType) {
+	delete(*m, int32(xt.TypeDescriptor().Number()))
+}
+func (m *extensionMap) Get(xt pref.ExtensionType) pref.Value {
+	xd := xt.TypeDescriptor()
+	if m != nil {
+		if x, ok := (*m)[int32(xd.Number())]; ok {
+			return x.Value()
+		}
+	}
+	return xt.Zero()
+}
+func (m *extensionMap) Set(xt pref.ExtensionType, v pref.Value) {
+	xd := xt.TypeDescriptor()
+	isValid := true
+	switch {
+	case !xt.IsValidValue(v):
+		isValid = false
+	case xd.IsList():
+		isValid = v.List().IsValid()
+	case xd.IsMap():
+		isValid = v.Map().IsValid()
+	case xd.Message() != nil:
+		isValid = v.Message().IsValid()
+	}
+	if !isValid {
+		panic(fmt.Sprintf("%v: assigning invalid value", xt.TypeDescriptor().FullName()))
+	}
+
+	if *m == nil {
+		*m = make(map[int32]ExtensionField)
+	}
+	var x ExtensionField
+	x.Set(xt, v)
+	(*m)[int32(xd.Number())] = x
+}
+func (m *extensionMap) Mutable(xt pref.ExtensionType) pref.Value {
+	xd := xt.TypeDescriptor()
+	if xd.Kind() != pref.MessageKind && xd.Kind() != pref.GroupKind && !xd.IsList() && !xd.IsMap() {
+		panic("invalid Mutable on field with non-composite type")
+	}
+	if x, ok := (*m)[int32(xd.Number())]; ok {
+		return x.Value()
+	}
+	v := xt.New()
+	m.Set(xt, v)
+	return v
+}
+
+// MessageState is a data structure that is nested as the first field in a
+// concrete message. It provides a way to implement the ProtoReflect method
+// in an allocation-free way without needing to have a shadow Go type generated
+// for every message type. This technique only works using unsafe.
+//
+//
+// Example generated code:
+//
+//	type M struct {
+//		state protoimpl.MessageState
+//
+//		Field1 int32
+//		Field2 string
+//		Field3 *BarMessage
+//		...
+//	}
+//
+//	func (m *M) ProtoReflect() protoreflect.Message {
+//		mi := &file_fizz_buzz_proto_msgInfos[5]
+//		if protoimpl.UnsafeEnabled && m != nil {
+//			ms := protoimpl.X.MessageStateOf(Pointer(m))
+//			if ms.LoadMessageInfo() == nil {
+//				ms.StoreMessageInfo(mi)
+//			}
+//			return ms
+//		}
+//		return mi.MessageOf(m)
+//	}
+//
+// The MessageState type holds a *MessageInfo, which must be atomically set to
+// the message info associated with a given message instance.
+// By unsafely converting a *M into a *MessageState, the MessageState object
+// has access to all the information needed to implement protobuf reflection.
+// It has access to the message info as its first field, and a pointer to the
+// MessageState is identical to a pointer to the concrete message value.
+//
+//
+// Requirements:
+//	• The type M must implement protoreflect.ProtoMessage.
+//	• The address of m must not be nil.
+//	• The address of m and the address of m.state must be equal,
+//	even though they are different Go types.
+type MessageState struct {
+	pragma.NoUnkeyedLiterals
+	pragma.DoNotCompare
+	pragma.DoNotCopy
+
+	atomicMessageInfo *MessageInfo
+}
+
+type messageState MessageState
+
+var (
+	_ pref.Message = (*messageState)(nil)
+	_ unwrapper    = (*messageState)(nil)
+)
+
+// messageDataType is a tuple of a pointer to the message data and
+// a pointer to the message type. It is a generalized way of providing a
+// reflective view over a message instance. The disadvantage of this approach
+// is the need to allocate this tuple of 16B.
+type messageDataType struct {
+	p  pointer
+	mi *MessageInfo
+}
+
+type (
+	messageReflectWrapper messageDataType
+	messageIfaceWrapper   messageDataType
+)
+
+var (
+	_ pref.Message      = (*messageReflectWrapper)(nil)
+	_ unwrapper         = (*messageReflectWrapper)(nil)
+	_ pref.ProtoMessage = (*messageIfaceWrapper)(nil)
+	_ unwrapper         = (*messageIfaceWrapper)(nil)
+)
+
+// MessageOf returns a reflective view over a message. The input must be a
+// pointer to a named Go struct. If the provided type has a ProtoReflect method,
+// it must be implemented by calling this method.
+func (mi *MessageInfo) MessageOf(m interface{}) pref.Message {
+	// TODO: Switch the input to be an opaque Pointer.
+	if reflect.TypeOf(m) != mi.GoReflectType {
+		panic(fmt.Sprintf("type mismatch: got %T, want %v", m, mi.GoReflectType))
+	}
+	p := pointerOfIface(m)
+	if p.IsNil() {
+		return mi.nilMessage.Init(mi)
+	}
+	return &messageReflectWrapper{p, mi}
+}
+
+func (m *messageReflectWrapper) pointer() pointer          { return m.p }
+func (m *messageReflectWrapper) messageInfo() *MessageInfo { return m.mi }
+
+func (m *messageIfaceWrapper) ProtoReflect() pref.Message {
+	return (*messageReflectWrapper)(m)
+}
+func (m *messageIfaceWrapper) protoUnwrap() interface{} {
+	return m.p.AsIfaceOf(m.mi.GoReflectType.Elem())
+}
+
+// checkField verifies that the provided field descriptor is valid.
+// Exactly one of the returned values is populated.
+func (mi *MessageInfo) checkField(fd pref.FieldDescriptor) (*fieldInfo, pref.ExtensionType) {
+	var fi *fieldInfo
+	if n := fd.Number(); 0 < n && int(n) < len(mi.denseFields) {
+		fi = mi.denseFields[n]
+	} else {
+		fi = mi.fields[n]
+	}
+	if fi != nil {
+		if fi.fieldDesc != fd {
+			if got, want := fd.FullName(), fi.fieldDesc.FullName(); got != want {
+				panic(fmt.Sprintf("mismatching field: got %v, want %v", got, want))
+			}
+			panic(fmt.Sprintf("mismatching field: %v", fd.FullName()))
+		}
+		return fi, nil
+	}
+
+	if fd.IsExtension() {
+		if got, want := fd.ContainingMessage().FullName(), mi.Desc.FullName(); got != want {
+			// TODO: Should this be exact containing message descriptor match?
+			panic(fmt.Sprintf("extension %v has mismatching containing message: got %v, want %v", fd.FullName(), got, want))
+		}
+		if !mi.Desc.ExtensionRanges().Has(fd.Number()) {
+			panic(fmt.Sprintf("extension %v extends %v outside the extension range", fd.FullName(), mi.Desc.FullName()))
+		}
+		xtd, ok := fd.(pref.ExtensionTypeDescriptor)
+		if !ok {
+			panic(fmt.Sprintf("extension %v does not implement protoreflect.ExtensionTypeDescriptor", fd.FullName()))
+		}
+		return nil, xtd.Type()
+	}
+	panic(fmt.Sprintf("field %v is invalid", fd.FullName()))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go b/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
new file mode 100644
index 0000000..23124a8
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go
@@ -0,0 +1,466 @@
+// 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.
+
+package impl
+
+import (
+	"fmt"
+	"math"
+	"reflect"
+	"sync"
+
+	"google.golang.org/protobuf/internal/flags"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+)
+
+type fieldInfo struct {
+	fieldDesc pref.FieldDescriptor
+
+	// These fields are used for protobuf reflection support.
+	has        func(pointer) bool
+	clear      func(pointer)
+	get        func(pointer) pref.Value
+	set        func(pointer, pref.Value)
+	mutable    func(pointer) pref.Value
+	newMessage func() pref.Message
+	newField   func() pref.Value
+}
+
+func fieldInfoForOneof(fd pref.FieldDescriptor, fs reflect.StructField, x exporter, ot reflect.Type) fieldInfo {
+	ft := fs.Type
+	if ft.Kind() != reflect.Interface {
+		panic(fmt.Sprintf("field %v has invalid type: got %v, want interface kind", fd.FullName(), ft))
+	}
+	if ot.Kind() != reflect.Struct {
+		panic(fmt.Sprintf("field %v has invalid type: got %v, want struct kind", fd.FullName(), ot))
+	}
+	if !reflect.PtrTo(ot).Implements(ft) {
+		panic(fmt.Sprintf("field %v has invalid type: %v does not implement %v", fd.FullName(), ot, ft))
+	}
+	conv := NewConverter(ot.Field(0).Type, fd)
+	isMessage := fd.Message() != nil
+
+	// TODO: Implement unsafe fast path?
+	fieldOffset := offsetOf(fs, x)
+	return fieldInfo{
+		// NOTE: The logic below intentionally assumes that oneof fields are
+		// well-formatted. That is, the oneof interface never contains a
+		// typed nil pointer to one of the wrapper structs.
+
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() || rv.Elem().Type().Elem() != ot || rv.Elem().IsNil() {
+				return false
+			}
+			return true
+		},
+		clear: func(p pointer) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() || rv.Elem().Type().Elem() != ot {
+				// NOTE: We intentionally don't check for rv.Elem().IsNil()
+				// so that (*OneofWrapperType)(nil) gets cleared to nil.
+				return
+			}
+			rv.Set(reflect.Zero(rv.Type()))
+		},
+		get: func(p pointer) pref.Value {
+			if p.IsNil() {
+				return conv.Zero()
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() || rv.Elem().Type().Elem() != ot || rv.Elem().IsNil() {
+				return conv.Zero()
+			}
+			rv = rv.Elem().Elem().Field(0)
+			return conv.PBValueOf(rv)
+		},
+		set: func(p pointer, v pref.Value) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() || rv.Elem().Type().Elem() != ot || rv.Elem().IsNil() {
+				rv.Set(reflect.New(ot))
+			}
+			rv = rv.Elem().Elem().Field(0)
+			rv.Set(conv.GoValueOf(v))
+		},
+		mutable: func(p pointer) pref.Value {
+			if !isMessage {
+				panic(fmt.Sprintf("field %v with invalid Mutable call on field with non-composite type", fd.FullName()))
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() || rv.Elem().Type().Elem() != ot || rv.Elem().IsNil() {
+				rv.Set(reflect.New(ot))
+			}
+			rv = rv.Elem().Elem().Field(0)
+			if rv.IsNil() {
+				rv.Set(conv.GoValueOf(pref.ValueOfMessage(conv.New().Message())))
+			}
+			return conv.PBValueOf(rv)
+		},
+		newMessage: func() pref.Message {
+			return conv.New().Message()
+		},
+		newField: func() pref.Value {
+			return conv.New()
+		},
+	}
+}
+
+func fieldInfoForMap(fd pref.FieldDescriptor, fs reflect.StructField, x exporter) fieldInfo {
+	ft := fs.Type
+	if ft.Kind() != reflect.Map {
+		panic(fmt.Sprintf("field %v has invalid type: got %v, want map kind", fd.FullName(), ft))
+	}
+	conv := NewConverter(ft, fd)
+
+	// TODO: Implement unsafe fast path?
+	fieldOffset := offsetOf(fs, x)
+	return fieldInfo{
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			return rv.Len() > 0
+		},
+		clear: func(p pointer) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			rv.Set(reflect.Zero(rv.Type()))
+		},
+		get: func(p pointer) pref.Value {
+			if p.IsNil() {
+				return conv.Zero()
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.Len() == 0 {
+				return conv.Zero()
+			}
+			return conv.PBValueOf(rv)
+		},
+		set: func(p pointer, v pref.Value) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			pv := conv.GoValueOf(v)
+			if pv.IsNil() {
+				panic(fmt.Sprintf("map field %v cannot be set with read-only value", fd.FullName()))
+			}
+			rv.Set(pv)
+		},
+		mutable: func(p pointer) pref.Value {
+			v := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if v.IsNil() {
+				v.Set(reflect.MakeMap(fs.Type))
+			}
+			return conv.PBValueOf(v)
+		},
+		newField: func() pref.Value {
+			return conv.New()
+		},
+	}
+}
+
+func fieldInfoForList(fd pref.FieldDescriptor, fs reflect.StructField, x exporter) fieldInfo {
+	ft := fs.Type
+	if ft.Kind() != reflect.Slice {
+		panic(fmt.Sprintf("field %v has invalid type: got %v, want slice kind", fd.FullName(), ft))
+	}
+	conv := NewConverter(reflect.PtrTo(ft), fd)
+
+	// TODO: Implement unsafe fast path?
+	fieldOffset := offsetOf(fs, x)
+	return fieldInfo{
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			return rv.Len() > 0
+		},
+		clear: func(p pointer) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			rv.Set(reflect.Zero(rv.Type()))
+		},
+		get: func(p pointer) pref.Value {
+			if p.IsNil() {
+				return conv.Zero()
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type)
+			if rv.Elem().Len() == 0 {
+				return conv.Zero()
+			}
+			return conv.PBValueOf(rv)
+		},
+		set: func(p pointer, v pref.Value) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			pv := conv.GoValueOf(v)
+			if pv.IsNil() {
+				panic(fmt.Sprintf("list field %v cannot be set with read-only value", fd.FullName()))
+			}
+			rv.Set(pv.Elem())
+		},
+		mutable: func(p pointer) pref.Value {
+			v := p.Apply(fieldOffset).AsValueOf(fs.Type)
+			return conv.PBValueOf(v)
+		},
+		newField: func() pref.Value {
+			return conv.New()
+		},
+	}
+}
+
+var (
+	nilBytes   = reflect.ValueOf([]byte(nil))
+	emptyBytes = reflect.ValueOf([]byte{})
+)
+
+func fieldInfoForScalar(fd pref.FieldDescriptor, fs reflect.StructField, x exporter) fieldInfo {
+	ft := fs.Type
+	nullable := fd.HasPresence()
+	isBytes := ft.Kind() == reflect.Slice && ft.Elem().Kind() == reflect.Uint8
+	if nullable {
+		if ft.Kind() != reflect.Ptr && ft.Kind() != reflect.Slice {
+			panic(fmt.Sprintf("field %v has invalid type: got %v, want pointer", fd.FullName(), ft))
+		}
+		if ft.Kind() == reflect.Ptr {
+			ft = ft.Elem()
+		}
+	}
+	conv := NewConverter(ft, fd)
+
+	// TODO: Implement unsafe fast path?
+	fieldOffset := offsetOf(fs, x)
+	return fieldInfo{
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if nullable {
+				return !rv.IsNil()
+			}
+			switch rv.Kind() {
+			case reflect.Bool:
+				return rv.Bool()
+			case reflect.Int32, reflect.Int64:
+				return rv.Int() != 0
+			case reflect.Uint32, reflect.Uint64:
+				return rv.Uint() != 0
+			case reflect.Float32, reflect.Float64:
+				return rv.Float() != 0 || math.Signbit(rv.Float())
+			case reflect.String, reflect.Slice:
+				return rv.Len() > 0
+			default:
+				panic(fmt.Sprintf("field %v has invalid type: %v", fd.FullName(), rv.Type())) // should never happen
+			}
+		},
+		clear: func(p pointer) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			rv.Set(reflect.Zero(rv.Type()))
+		},
+		get: func(p pointer) pref.Value {
+			if p.IsNil() {
+				return conv.Zero()
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if nullable {
+				if rv.IsNil() {
+					return conv.Zero()
+				}
+				if rv.Kind() == reflect.Ptr {
+					rv = rv.Elem()
+				}
+			}
+			return conv.PBValueOf(rv)
+		},
+		set: func(p pointer, v pref.Value) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if nullable && rv.Kind() == reflect.Ptr {
+				if rv.IsNil() {
+					rv.Set(reflect.New(ft))
+				}
+				rv = rv.Elem()
+			}
+			rv.Set(conv.GoValueOf(v))
+			if isBytes && rv.Len() == 0 {
+				if nullable {
+					rv.Set(emptyBytes) // preserve presence
+				} else {
+					rv.Set(nilBytes) // do not preserve presence
+				}
+			}
+		},
+		newField: func() pref.Value {
+			return conv.New()
+		},
+	}
+}
+
+func fieldInfoForWeakMessage(fd pref.FieldDescriptor, weakOffset offset) fieldInfo {
+	if !flags.ProtoLegacy {
+		panic("no support for proto1 weak fields")
+	}
+
+	var once sync.Once
+	var messageType pref.MessageType
+	lazyInit := func() {
+		once.Do(func() {
+			messageName := fd.Message().FullName()
+			messageType, _ = preg.GlobalTypes.FindMessageByName(messageName)
+			if messageType == nil {
+				panic(fmt.Sprintf("weak message %v for field %v is not linked in", messageName, fd.FullName()))
+			}
+		})
+	}
+
+	num := fd.Number()
+	return fieldInfo{
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			_, ok := p.Apply(weakOffset).WeakFields().get(num)
+			return ok
+		},
+		clear: func(p pointer) {
+			p.Apply(weakOffset).WeakFields().clear(num)
+		},
+		get: func(p pointer) pref.Value {
+			lazyInit()
+			if p.IsNil() {
+				return pref.ValueOfMessage(messageType.Zero())
+			}
+			m, ok := p.Apply(weakOffset).WeakFields().get(num)
+			if !ok {
+				return pref.ValueOfMessage(messageType.Zero())
+			}
+			return pref.ValueOfMessage(m.ProtoReflect())
+		},
+		set: func(p pointer, v pref.Value) {
+			lazyInit()
+			m := v.Message()
+			if m.Descriptor() != messageType.Descriptor() {
+				if got, want := m.Descriptor().FullName(), messageType.Descriptor().FullName(); got != want {
+					panic(fmt.Sprintf("field %v has mismatching message descriptor: got %v, want %v", fd.FullName(), got, want))
+				}
+				panic(fmt.Sprintf("field %v has mismatching message descriptor: %v", fd.FullName(), m.Descriptor().FullName()))
+			}
+			p.Apply(weakOffset).WeakFields().set(num, m.Interface())
+		},
+		mutable: func(p pointer) pref.Value {
+			lazyInit()
+			fs := p.Apply(weakOffset).WeakFields()
+			m, ok := fs.get(num)
+			if !ok {
+				m = messageType.New().Interface()
+				fs.set(num, m)
+			}
+			return pref.ValueOfMessage(m.ProtoReflect())
+		},
+		newMessage: func() pref.Message {
+			lazyInit()
+			return messageType.New()
+		},
+		newField: func() pref.Value {
+			lazyInit()
+			return pref.ValueOfMessage(messageType.New())
+		},
+	}
+}
+
+func fieldInfoForMessage(fd pref.FieldDescriptor, fs reflect.StructField, x exporter) fieldInfo {
+	ft := fs.Type
+	conv := NewConverter(ft, fd)
+
+	// TODO: Implement unsafe fast path?
+	fieldOffset := offsetOf(fs, x)
+	return fieldInfo{
+		fieldDesc: fd,
+		has: func(p pointer) bool {
+			if p.IsNil() {
+				return false
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			return !rv.IsNil()
+		},
+		clear: func(p pointer) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			rv.Set(reflect.Zero(rv.Type()))
+		},
+		get: func(p pointer) pref.Value {
+			if p.IsNil() {
+				return conv.Zero()
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			return conv.PBValueOf(rv)
+		},
+		set: func(p pointer, v pref.Value) {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			rv.Set(conv.GoValueOf(v))
+			if rv.IsNil() {
+				panic(fmt.Sprintf("field %v has invalid nil pointer", fd.FullName()))
+			}
+		},
+		mutable: func(p pointer) pref.Value {
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() {
+				rv.Set(conv.GoValueOf(conv.New()))
+			}
+			return conv.PBValueOf(rv)
+		},
+		newMessage: func() pref.Message {
+			return conv.New().Message()
+		},
+		newField: func() pref.Value {
+			return conv.New()
+		},
+	}
+}
+
+type oneofInfo struct {
+	oneofDesc pref.OneofDescriptor
+	which     func(pointer) pref.FieldNumber
+}
+
+func makeOneofInfo(od pref.OneofDescriptor, si structInfo, x exporter) *oneofInfo {
+	oi := &oneofInfo{oneofDesc: od}
+	if od.IsSynthetic() {
+		fs := si.fieldsByNumber[od.Fields().Get(0).Number()]
+		fieldOffset := offsetOf(fs, x)
+		oi.which = func(p pointer) pref.FieldNumber {
+			if p.IsNil() {
+				return 0
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() { // valid on either *T or []byte
+				return 0
+			}
+			return od.Fields().Get(0).Number()
+		}
+	} else {
+		fs := si.oneofsByName[od.Name()]
+		fieldOffset := offsetOf(fs, x)
+		oi.which = func(p pointer) pref.FieldNumber {
+			if p.IsNil() {
+				return 0
+			}
+			rv := p.Apply(fieldOffset).AsValueOf(fs.Type).Elem()
+			if rv.IsNil() {
+				return 0
+			}
+			rv = rv.Elem()
+			if rv.IsNil() {
+				return 0
+			}
+			return si.oneofWrappersByType[rv.Type().Elem()]
+		}
+	}
+	return oi
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go b/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go
new file mode 100644
index 0000000..741d6e5
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go
@@ -0,0 +1,249 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package impl
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+func (m *messageState) Descriptor() protoreflect.MessageDescriptor {
+	return m.messageInfo().Desc
+}
+func (m *messageState) Type() protoreflect.MessageType {
+	return m.messageInfo()
+}
+func (m *messageState) New() protoreflect.Message {
+	return m.messageInfo().New()
+}
+func (m *messageState) Interface() protoreflect.ProtoMessage {
+	return m.protoUnwrap().(protoreflect.ProtoMessage)
+}
+func (m *messageState) protoUnwrap() interface{} {
+	return m.pointer().AsIfaceOf(m.messageInfo().GoReflectType.Elem())
+}
+func (m *messageState) ProtoMethods() *protoiface.Methods {
+	m.messageInfo().init()
+	return &m.messageInfo().methods
+}
+
+// ProtoMessageInfo is a pseudo-internal API for allowing the v1 code
+// to be able to retrieve a v2 MessageInfo struct.
+//
+// WARNING: This method is exempt from the compatibility promise and
+// may be removed in the future without warning.
+func (m *messageState) ProtoMessageInfo() *MessageInfo {
+	return m.messageInfo()
+}
+
+func (m *messageState) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+	m.messageInfo().init()
+	for _, ri := range m.messageInfo().rangeInfos {
+		switch ri := ri.(type) {
+		case *fieldInfo:
+			if ri.has(m.pointer()) {
+				if !f(ri.fieldDesc, ri.get(m.pointer())) {
+					return
+				}
+			}
+		case *oneofInfo:
+			if n := ri.which(m.pointer()); n > 0 {
+				fi := m.messageInfo().fields[n]
+				if !f(fi.fieldDesc, fi.get(m.pointer())) {
+					return
+				}
+			}
+		}
+	}
+	m.messageInfo().extensionMap(m.pointer()).Range(f)
+}
+func (m *messageState) Has(fd protoreflect.FieldDescriptor) bool {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.has(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Has(xt)
+	}
+}
+func (m *messageState) Clear(fd protoreflect.FieldDescriptor) {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		fi.clear(m.pointer())
+	} else {
+		m.messageInfo().extensionMap(m.pointer()).Clear(xt)
+	}
+}
+func (m *messageState) Get(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.get(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Get(xt)
+	}
+}
+func (m *messageState) Set(fd protoreflect.FieldDescriptor, v protoreflect.Value) {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		fi.set(m.pointer(), v)
+	} else {
+		m.messageInfo().extensionMap(m.pointer()).Set(xt, v)
+	}
+}
+func (m *messageState) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.mutable(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Mutable(xt)
+	}
+}
+func (m *messageState) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.newField()
+	} else {
+		return xt.New()
+	}
+}
+func (m *messageState) WhichOneof(od protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+	m.messageInfo().init()
+	if oi := m.messageInfo().oneofs[od.Name()]; oi != nil && oi.oneofDesc == od {
+		return od.Fields().ByNumber(oi.which(m.pointer()))
+	}
+	panic("invalid oneof descriptor " + string(od.FullName()) + " for message " + string(m.Descriptor().FullName()))
+}
+func (m *messageState) GetUnknown() protoreflect.RawFields {
+	m.messageInfo().init()
+	return m.messageInfo().getUnknown(m.pointer())
+}
+func (m *messageState) SetUnknown(b protoreflect.RawFields) {
+	m.messageInfo().init()
+	m.messageInfo().setUnknown(m.pointer(), b)
+}
+func (m *messageState) IsValid() bool {
+	return !m.pointer().IsNil()
+}
+
+func (m *messageReflectWrapper) Descriptor() protoreflect.MessageDescriptor {
+	return m.messageInfo().Desc
+}
+func (m *messageReflectWrapper) Type() protoreflect.MessageType {
+	return m.messageInfo()
+}
+func (m *messageReflectWrapper) New() protoreflect.Message {
+	return m.messageInfo().New()
+}
+func (m *messageReflectWrapper) Interface() protoreflect.ProtoMessage {
+	if m, ok := m.protoUnwrap().(protoreflect.ProtoMessage); ok {
+		return m
+	}
+	return (*messageIfaceWrapper)(m)
+}
+func (m *messageReflectWrapper) protoUnwrap() interface{} {
+	return m.pointer().AsIfaceOf(m.messageInfo().GoReflectType.Elem())
+}
+func (m *messageReflectWrapper) ProtoMethods() *protoiface.Methods {
+	m.messageInfo().init()
+	return &m.messageInfo().methods
+}
+
+// ProtoMessageInfo is a pseudo-internal API for allowing the v1 code
+// to be able to retrieve a v2 MessageInfo struct.
+//
+// WARNING: This method is exempt from the compatibility promise and
+// may be removed in the future without warning.
+func (m *messageReflectWrapper) ProtoMessageInfo() *MessageInfo {
+	return m.messageInfo()
+}
+
+func (m *messageReflectWrapper) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+	m.messageInfo().init()
+	for _, ri := range m.messageInfo().rangeInfos {
+		switch ri := ri.(type) {
+		case *fieldInfo:
+			if ri.has(m.pointer()) {
+				if !f(ri.fieldDesc, ri.get(m.pointer())) {
+					return
+				}
+			}
+		case *oneofInfo:
+			if n := ri.which(m.pointer()); n > 0 {
+				fi := m.messageInfo().fields[n]
+				if !f(fi.fieldDesc, fi.get(m.pointer())) {
+					return
+				}
+			}
+		}
+	}
+	m.messageInfo().extensionMap(m.pointer()).Range(f)
+}
+func (m *messageReflectWrapper) Has(fd protoreflect.FieldDescriptor) bool {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.has(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Has(xt)
+	}
+}
+func (m *messageReflectWrapper) Clear(fd protoreflect.FieldDescriptor) {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		fi.clear(m.pointer())
+	} else {
+		m.messageInfo().extensionMap(m.pointer()).Clear(xt)
+	}
+}
+func (m *messageReflectWrapper) Get(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.get(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Get(xt)
+	}
+}
+func (m *messageReflectWrapper) Set(fd protoreflect.FieldDescriptor, v protoreflect.Value) {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		fi.set(m.pointer(), v)
+	} else {
+		m.messageInfo().extensionMap(m.pointer()).Set(xt, v)
+	}
+}
+func (m *messageReflectWrapper) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.mutable(m.pointer())
+	} else {
+		return m.messageInfo().extensionMap(m.pointer()).Mutable(xt)
+	}
+}
+func (m *messageReflectWrapper) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
+	m.messageInfo().init()
+	if fi, xt := m.messageInfo().checkField(fd); fi != nil {
+		return fi.newField()
+	} else {
+		return xt.New()
+	}
+}
+func (m *messageReflectWrapper) WhichOneof(od protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
+	m.messageInfo().init()
+	if oi := m.messageInfo().oneofs[od.Name()]; oi != nil && oi.oneofDesc == od {
+		return od.Fields().ByNumber(oi.which(m.pointer()))
+	}
+	panic("invalid oneof descriptor " + string(od.FullName()) + " for message " + string(m.Descriptor().FullName()))
+}
+func (m *messageReflectWrapper) GetUnknown() protoreflect.RawFields {
+	m.messageInfo().init()
+	return m.messageInfo().getUnknown(m.pointer())
+}
+func (m *messageReflectWrapper) SetUnknown(b protoreflect.RawFields) {
+	m.messageInfo().init()
+	m.messageInfo().setUnknown(m.pointer(), b)
+}
+func (m *messageReflectWrapper) IsValid() bool {
+	return !m.pointer().IsNil()
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go b/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
new file mode 100644
index 0000000..67b4ede
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go
@@ -0,0 +1,177 @@
+// 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 purego appengine
+
+package impl
+
+import (
+	"fmt"
+	"reflect"
+	"sync"
+)
+
+const UnsafeEnabled = false
+
+// Pointer is an opaque pointer type.
+type Pointer interface{}
+
+// offset represents the offset to a struct field, accessible from a pointer.
+// The offset is the field index into a struct.
+type offset struct {
+	index  int
+	export exporter
+}
+
+// offsetOf returns a field offset for the struct field.
+func offsetOf(f reflect.StructField, x exporter) offset {
+	if len(f.Index) != 1 {
+		panic("embedded structs are not supported")
+	}
+	if f.PkgPath == "" {
+		return offset{index: f.Index[0]} // field is already exported
+	}
+	if x == nil {
+		panic("exporter must be provided for unexported field")
+	}
+	return offset{index: f.Index[0], export: x}
+}
+
+// IsValid reports whether the offset is valid.
+func (f offset) IsValid() bool { return f.index >= 0 }
+
+// invalidOffset is an invalid field offset.
+var invalidOffset = offset{index: -1}
+
+// zeroOffset is a noop when calling pointer.Apply.
+var zeroOffset = offset{index: 0}
+
+// pointer is an abstract representation of a pointer to a struct or field.
+type pointer struct{ v reflect.Value }
+
+// pointerOf returns p as a pointer.
+func pointerOf(p Pointer) pointer {
+	return pointerOfIface(p)
+}
+
+// pointerOfValue returns v as a pointer.
+func pointerOfValue(v reflect.Value) pointer {
+	return pointer{v: v}
+}
+
+// pointerOfIface returns the pointer portion of an interface.
+func pointerOfIface(v interface{}) pointer {
+	return pointer{v: reflect.ValueOf(v)}
+}
+
+// IsNil reports whether the pointer is nil.
+func (p pointer) IsNil() bool {
+	return p.v.IsNil()
+}
+
+// Apply adds an offset to the pointer to derive a new pointer
+// to a specified field. The current pointer must be pointing at a struct.
+func (p pointer) Apply(f offset) pointer {
+	if f.export != nil {
+		if v := reflect.ValueOf(f.export(p.v.Interface(), f.index)); v.IsValid() {
+			return pointer{v: v}
+		}
+	}
+	return pointer{v: p.v.Elem().Field(f.index).Addr()}
+}
+
+// AsValueOf treats p as a pointer to an object of type t and returns the value.
+// It is equivalent to reflect.ValueOf(p.AsIfaceOf(t))
+func (p pointer) AsValueOf(t reflect.Type) reflect.Value {
+	if got := p.v.Type().Elem(); got != t {
+		panic(fmt.Sprintf("invalid type: got %v, want %v", got, t))
+	}
+	return p.v
+}
+
+// AsIfaceOf treats p as a pointer to an object of type t and returns the value.
+// It is equivalent to p.AsValueOf(t).Interface()
+func (p pointer) AsIfaceOf(t reflect.Type) interface{} {
+	return p.AsValueOf(t).Interface()
+}
+
+func (p pointer) Bool() *bool              { return p.v.Interface().(*bool) }
+func (p pointer) BoolPtr() **bool          { return p.v.Interface().(**bool) }
+func (p pointer) BoolSlice() *[]bool       { return p.v.Interface().(*[]bool) }
+func (p pointer) Int32() *int32            { return p.v.Interface().(*int32) }
+func (p pointer) Int32Ptr() **int32        { return p.v.Interface().(**int32) }
+func (p pointer) Int32Slice() *[]int32     { return p.v.Interface().(*[]int32) }
+func (p pointer) Int64() *int64            { return p.v.Interface().(*int64) }
+func (p pointer) Int64Ptr() **int64        { return p.v.Interface().(**int64) }
+func (p pointer) Int64Slice() *[]int64     { return p.v.Interface().(*[]int64) }
+func (p pointer) Uint32() *uint32          { return p.v.Interface().(*uint32) }
+func (p pointer) Uint32Ptr() **uint32      { return p.v.Interface().(**uint32) }
+func (p pointer) Uint32Slice() *[]uint32   { return p.v.Interface().(*[]uint32) }
+func (p pointer) Uint64() *uint64          { return p.v.Interface().(*uint64) }
+func (p pointer) Uint64Ptr() **uint64      { return p.v.Interface().(**uint64) }
+func (p pointer) Uint64Slice() *[]uint64   { return p.v.Interface().(*[]uint64) }
+func (p pointer) Float32() *float32        { return p.v.Interface().(*float32) }
+func (p pointer) Float32Ptr() **float32    { return p.v.Interface().(**float32) }
+func (p pointer) Float32Slice() *[]float32 { return p.v.Interface().(*[]float32) }
+func (p pointer) Float64() *float64        { return p.v.Interface().(*float64) }
+func (p pointer) Float64Ptr() **float64    { return p.v.Interface().(**float64) }
+func (p pointer) Float64Slice() *[]float64 { return p.v.Interface().(*[]float64) }
+func (p pointer) String() *string          { return p.v.Interface().(*string) }
+func (p pointer) StringPtr() **string      { return p.v.Interface().(**string) }
+func (p pointer) StringSlice() *[]string   { return p.v.Interface().(*[]string) }
+func (p pointer) Bytes() *[]byte           { return p.v.Interface().(*[]byte) }
+func (p pointer) BytesSlice() *[][]byte    { return p.v.Interface().(*[][]byte) }
+func (p pointer) WeakFields() *weakFields  { return (*weakFields)(p.v.Interface().(*WeakFields)) }
+func (p pointer) Extensions() *map[int32]ExtensionField {
+	return p.v.Interface().(*map[int32]ExtensionField)
+}
+
+func (p pointer) Elem() pointer {
+	return pointer{v: p.v.Elem()}
+}
+
+// PointerSlice copies []*T from p as a new []pointer.
+// This behavior differs from the implementation in pointer_unsafe.go.
+func (p pointer) PointerSlice() []pointer {
+	// TODO: reconsider this
+	if p.v.IsNil() {
+		return nil
+	}
+	n := p.v.Elem().Len()
+	s := make([]pointer, n)
+	for i := 0; i < n; i++ {
+		s[i] = pointer{v: p.v.Elem().Index(i)}
+	}
+	return s
+}
+
+// AppendPointerSlice appends v to p, which must be a []*T.
+func (p pointer) AppendPointerSlice(v pointer) {
+	sp := p.v.Elem()
+	sp.Set(reflect.Append(sp, v.v))
+}
+
+// SetPointer sets *p to v.
+func (p pointer) SetPointer(v pointer) {
+	p.v.Elem().Set(v.v)
+}
+
+func (Export) MessageStateOf(p Pointer) *messageState     { panic("not supported") }
+func (ms *messageState) pointer() pointer                 { panic("not supported") }
+func (ms *messageState) messageInfo() *MessageInfo        { panic("not supported") }
+func (ms *messageState) LoadMessageInfo() *MessageInfo    { panic("not supported") }
+func (ms *messageState) StoreMessageInfo(mi *MessageInfo) { panic("not supported") }
+
+type atomicNilMessage struct {
+	once sync.Once
+	m    messageReflectWrapper
+}
+
+func (m *atomicNilMessage) Init(mi *MessageInfo) *messageReflectWrapper {
+	m.once.Do(func() {
+		m.m.p = pointerOfIface(reflect.Zero(mi.GoReflectType).Interface())
+		m.m.mi = mi
+	})
+	return &m.m
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go b/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
new file mode 100644
index 0000000..088aa85
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go
@@ -0,0 +1,173 @@
+// 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 !purego,!appengine
+
+package impl
+
+import (
+	"reflect"
+	"sync/atomic"
+	"unsafe"
+)
+
+const UnsafeEnabled = true
+
+// Pointer is an opaque pointer type.
+type Pointer unsafe.Pointer
+
+// offset represents the offset to a struct field, accessible from a pointer.
+// The offset is the byte offset to the field from the start of the struct.
+type offset uintptr
+
+// offsetOf returns a field offset for the struct field.
+func offsetOf(f reflect.StructField, x exporter) offset {
+	return offset(f.Offset)
+}
+
+// IsValid reports whether the offset is valid.
+func (f offset) IsValid() bool { return f != invalidOffset }
+
+// invalidOffset is an invalid field offset.
+var invalidOffset = ^offset(0)
+
+// zeroOffset is a noop when calling pointer.Apply.
+var zeroOffset = offset(0)
+
+// pointer is a pointer to a message struct or field.
+type pointer struct{ p unsafe.Pointer }
+
+// pointerOf returns p as a pointer.
+func pointerOf(p Pointer) pointer {
+	return pointer{p: unsafe.Pointer(p)}
+}
+
+// pointerOfValue returns v as a pointer.
+func pointerOfValue(v reflect.Value) pointer {
+	return pointer{p: unsafe.Pointer(v.Pointer())}
+}
+
+// pointerOfIface returns the pointer portion of an interface.
+func pointerOfIface(v interface{}) pointer {
+	type ifaceHeader struct {
+		Type unsafe.Pointer
+		Data unsafe.Pointer
+	}
+	return pointer{p: (*ifaceHeader)(unsafe.Pointer(&v)).Data}
+}
+
+// IsNil reports whether the pointer is nil.
+func (p pointer) IsNil() bool {
+	return p.p == nil
+}
+
+// Apply adds an offset to the pointer to derive a new pointer
+// to a specified field. The pointer must be valid and pointing at a struct.
+func (p pointer) Apply(f offset) pointer {
+	if p.IsNil() {
+		panic("invalid nil pointer")
+	}
+	return pointer{p: unsafe.Pointer(uintptr(p.p) + uintptr(f))}
+}
+
+// AsValueOf treats p as a pointer to an object of type t and returns the value.
+// It is equivalent to reflect.ValueOf(p.AsIfaceOf(t))
+func (p pointer) AsValueOf(t reflect.Type) reflect.Value {
+	return reflect.NewAt(t, p.p)
+}
+
+// AsIfaceOf treats p as a pointer to an object of type t and returns the value.
+// It is equivalent to p.AsValueOf(t).Interface()
+func (p pointer) AsIfaceOf(t reflect.Type) interface{} {
+	// TODO: Use tricky unsafe magic to directly create ifaceHeader.
+	return p.AsValueOf(t).Interface()
+}
+
+func (p pointer) Bool() *bool                           { return (*bool)(p.p) }
+func (p pointer) BoolPtr() **bool                       { return (**bool)(p.p) }
+func (p pointer) BoolSlice() *[]bool                    { return (*[]bool)(p.p) }
+func (p pointer) Int32() *int32                         { return (*int32)(p.p) }
+func (p pointer) Int32Ptr() **int32                     { return (**int32)(p.p) }
+func (p pointer) Int32Slice() *[]int32                  { return (*[]int32)(p.p) }
+func (p pointer) Int64() *int64                         { return (*int64)(p.p) }
+func (p pointer) Int64Ptr() **int64                     { return (**int64)(p.p) }
+func (p pointer) Int64Slice() *[]int64                  { return (*[]int64)(p.p) }
+func (p pointer) Uint32() *uint32                       { return (*uint32)(p.p) }
+func (p pointer) Uint32Ptr() **uint32                   { return (**uint32)(p.p) }
+func (p pointer) Uint32Slice() *[]uint32                { return (*[]uint32)(p.p) }
+func (p pointer) Uint64() *uint64                       { return (*uint64)(p.p) }
+func (p pointer) Uint64Ptr() **uint64                   { return (**uint64)(p.p) }
+func (p pointer) Uint64Slice() *[]uint64                { return (*[]uint64)(p.p) }
+func (p pointer) Float32() *float32                     { return (*float32)(p.p) }
+func (p pointer) Float32Ptr() **float32                 { return (**float32)(p.p) }
+func (p pointer) Float32Slice() *[]float32              { return (*[]float32)(p.p) }
+func (p pointer) Float64() *float64                     { return (*float64)(p.p) }
+func (p pointer) Float64Ptr() **float64                 { return (**float64)(p.p) }
+func (p pointer) Float64Slice() *[]float64              { return (*[]float64)(p.p) }
+func (p pointer) String() *string                       { return (*string)(p.p) }
+func (p pointer) StringPtr() **string                   { return (**string)(p.p) }
+func (p pointer) StringSlice() *[]string                { return (*[]string)(p.p) }
+func (p pointer) Bytes() *[]byte                        { return (*[]byte)(p.p) }
+func (p pointer) BytesSlice() *[][]byte                 { return (*[][]byte)(p.p) }
+func (p pointer) WeakFields() *weakFields               { return (*weakFields)(p.p) }
+func (p pointer) Extensions() *map[int32]ExtensionField { return (*map[int32]ExtensionField)(p.p) }
+
+func (p pointer) Elem() pointer {
+	return pointer{p: *(*unsafe.Pointer)(p.p)}
+}
+
+// PointerSlice loads []*T from p as a []pointer.
+// The value returned is aliased with the original slice.
+// This behavior differs from the implementation in pointer_reflect.go.
+func (p pointer) PointerSlice() []pointer {
+	// Super-tricky - p should point to a []*T where T is a
+	// message type. We load it as []pointer.
+	return *(*[]pointer)(p.p)
+}
+
+// AppendPointerSlice appends v to p, which must be a []*T.
+func (p pointer) AppendPointerSlice(v pointer) {
+	*(*[]pointer)(p.p) = append(*(*[]pointer)(p.p), v)
+}
+
+// SetPointer sets *p to v.
+func (p pointer) SetPointer(v pointer) {
+	*(*unsafe.Pointer)(p.p) = (unsafe.Pointer)(v.p)
+}
+
+// Static check that MessageState does not exceed the size of a pointer.
+const _ = uint(unsafe.Sizeof(unsafe.Pointer(nil)) - unsafe.Sizeof(MessageState{}))
+
+func (Export) MessageStateOf(p Pointer) *messageState {
+	// Super-tricky - see documentation on MessageState.
+	return (*messageState)(unsafe.Pointer(p))
+}
+func (ms *messageState) pointer() pointer {
+	// Super-tricky - see documentation on MessageState.
+	return pointer{p: unsafe.Pointer(ms)}
+}
+func (ms *messageState) messageInfo() *MessageInfo {
+	mi := ms.LoadMessageInfo()
+	if mi == nil {
+		panic("invalid nil message info; this suggests memory corruption due to a race or shallow copy on the message struct")
+	}
+	return mi
+}
+func (ms *messageState) LoadMessageInfo() *MessageInfo {
+	return (*MessageInfo)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(&ms.atomicMessageInfo))))
+}
+func (ms *messageState) StoreMessageInfo(mi *MessageInfo) {
+	atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(&ms.atomicMessageInfo)), unsafe.Pointer(mi))
+}
+
+type atomicNilMessage struct{ p unsafe.Pointer } // p is a *messageReflectWrapper
+
+func (m *atomicNilMessage) Init(mi *MessageInfo) *messageReflectWrapper {
+	if p := atomic.LoadPointer(&m.p); p != nil {
+		return (*messageReflectWrapper)(p)
+	}
+	w := &messageReflectWrapper{mi: mi}
+	atomic.CompareAndSwapPointer(&m.p, nil, (unsafe.Pointer)(w))
+	return (*messageReflectWrapper)(atomic.LoadPointer(&m.p))
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/validate.go b/vendor/google.golang.org/protobuf/internal/impl/validate.go
new file mode 100644
index 0000000..08cfb60
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/validate.go
@@ -0,0 +1,576 @@
+// 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 impl
+
+import (
+	"fmt"
+	"math"
+	"math/bits"
+	"reflect"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/strs"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	preg "google.golang.org/protobuf/reflect/protoregistry"
+	piface "google.golang.org/protobuf/runtime/protoiface"
+)
+
+// ValidationStatus is the result of validating the wire-format encoding of a message.
+type ValidationStatus int
+
+const (
+	// ValidationUnknown indicates that unmarshaling the message might succeed or fail.
+	// The validator was unable to render a judgement.
+	//
+	// The only causes of this status are an aberrant message type appearing somewhere
+	// in the message or a failure in the extension resolver.
+	ValidationUnknown ValidationStatus = iota + 1
+
+	// ValidationInvalid indicates that unmarshaling the message will fail.
+	ValidationInvalid
+
+	// ValidationValid indicates that unmarshaling the message will succeed.
+	ValidationValid
+)
+
+func (v ValidationStatus) String() string {
+	switch v {
+	case ValidationUnknown:
+		return "ValidationUnknown"
+	case ValidationInvalid:
+		return "ValidationInvalid"
+	case ValidationValid:
+		return "ValidationValid"
+	default:
+		return fmt.Sprintf("ValidationStatus(%d)", int(v))
+	}
+}
+
+// Validate determines whether the contents of the buffer are a valid wire encoding
+// of the message type.
+//
+// This function is exposed for testing.
+func Validate(mt pref.MessageType, in piface.UnmarshalInput) (out piface.UnmarshalOutput, _ ValidationStatus) {
+	mi, ok := mt.(*MessageInfo)
+	if !ok {
+		return out, ValidationUnknown
+	}
+	if in.Resolver == nil {
+		in.Resolver = preg.GlobalTypes
+	}
+	o, st := mi.validate(in.Buf, 0, unmarshalOptions{
+		flags:    in.Flags,
+		resolver: in.Resolver,
+	})
+	if o.initialized {
+		out.Flags |= piface.UnmarshalInitialized
+	}
+	return out, st
+}
+
+type validationInfo struct {
+	mi               *MessageInfo
+	typ              validationType
+	keyType, valType validationType
+
+	// For non-required fields, requiredBit is 0.
+	//
+	// For required fields, requiredBit's nth bit is set, where n is a
+	// unique index in the range [0, MessageInfo.numRequiredFields).
+	//
+	// If there are more than 64 required fields, requiredBit is 0.
+	requiredBit uint64
+}
+
+type validationType uint8
+
+const (
+	validationTypeOther validationType = iota
+	validationTypeMessage
+	validationTypeGroup
+	validationTypeMap
+	validationTypeRepeatedVarint
+	validationTypeRepeatedFixed32
+	validationTypeRepeatedFixed64
+	validationTypeVarint
+	validationTypeFixed32
+	validationTypeFixed64
+	validationTypeBytes
+	validationTypeUTF8String
+	validationTypeMessageSetItem
+)
+
+func newFieldValidationInfo(mi *MessageInfo, si structInfo, fd pref.FieldDescriptor, ft reflect.Type) validationInfo {
+	var vi validationInfo
+	switch {
+	case fd.ContainingOneof() != nil && !fd.ContainingOneof().IsSynthetic():
+		switch fd.Kind() {
+		case pref.MessageKind:
+			vi.typ = validationTypeMessage
+			if ot, ok := si.oneofWrappersByNumber[fd.Number()]; ok {
+				vi.mi = getMessageInfo(ot.Field(0).Type)
+			}
+		case pref.GroupKind:
+			vi.typ = validationTypeGroup
+			if ot, ok := si.oneofWrappersByNumber[fd.Number()]; ok {
+				vi.mi = getMessageInfo(ot.Field(0).Type)
+			}
+		case pref.StringKind:
+			if strs.EnforceUTF8(fd) {
+				vi.typ = validationTypeUTF8String
+			}
+		}
+	default:
+		vi = newValidationInfo(fd, ft)
+	}
+	if fd.Cardinality() == pref.Required {
+		// Avoid overflow. The required field check is done with a 64-bit mask, with
+		// any message containing more than 64 required fields always reported as
+		// potentially uninitialized, so it is not important to get a precise count
+		// of the required fields past 64.
+		if mi.numRequiredFields < math.MaxUint8 {
+			mi.numRequiredFields++
+			vi.requiredBit = 1 << (mi.numRequiredFields - 1)
+		}
+	}
+	return vi
+}
+
+func newValidationInfo(fd pref.FieldDescriptor, ft reflect.Type) validationInfo {
+	var vi validationInfo
+	switch {
+	case fd.IsList():
+		switch fd.Kind() {
+		case pref.MessageKind:
+			vi.typ = validationTypeMessage
+			if ft.Kind() == reflect.Slice {
+				vi.mi = getMessageInfo(ft.Elem())
+			}
+		case pref.GroupKind:
+			vi.typ = validationTypeGroup
+			if ft.Kind() == reflect.Slice {
+				vi.mi = getMessageInfo(ft.Elem())
+			}
+		case pref.StringKind:
+			vi.typ = validationTypeBytes
+			if strs.EnforceUTF8(fd) {
+				vi.typ = validationTypeUTF8String
+			}
+		default:
+			switch wireTypes[fd.Kind()] {
+			case protowire.VarintType:
+				vi.typ = validationTypeRepeatedVarint
+			case protowire.Fixed32Type:
+				vi.typ = validationTypeRepeatedFixed32
+			case protowire.Fixed64Type:
+				vi.typ = validationTypeRepeatedFixed64
+			}
+		}
+	case fd.IsMap():
+		vi.typ = validationTypeMap
+		switch fd.MapKey().Kind() {
+		case pref.StringKind:
+			if strs.EnforceUTF8(fd) {
+				vi.keyType = validationTypeUTF8String
+			}
+		}
+		switch fd.MapValue().Kind() {
+		case pref.MessageKind:
+			vi.valType = validationTypeMessage
+			if ft.Kind() == reflect.Map {
+				vi.mi = getMessageInfo(ft.Elem())
+			}
+		case pref.StringKind:
+			if strs.EnforceUTF8(fd) {
+				vi.valType = validationTypeUTF8String
+			}
+		}
+	default:
+		switch fd.Kind() {
+		case pref.MessageKind:
+			vi.typ = validationTypeMessage
+			if !fd.IsWeak() {
+				vi.mi = getMessageInfo(ft)
+			}
+		case pref.GroupKind:
+			vi.typ = validationTypeGroup
+			vi.mi = getMessageInfo(ft)
+		case pref.StringKind:
+			vi.typ = validationTypeBytes
+			if strs.EnforceUTF8(fd) {
+				vi.typ = validationTypeUTF8String
+			}
+		default:
+			switch wireTypes[fd.Kind()] {
+			case protowire.VarintType:
+				vi.typ = validationTypeVarint
+			case protowire.Fixed32Type:
+				vi.typ = validationTypeFixed32
+			case protowire.Fixed64Type:
+				vi.typ = validationTypeFixed64
+			case protowire.BytesType:
+				vi.typ = validationTypeBytes
+			}
+		}
+	}
+	return vi
+}
+
+func (mi *MessageInfo) validate(b []byte, groupTag protowire.Number, opts unmarshalOptions) (out unmarshalOutput, result ValidationStatus) {
+	mi.init()
+	type validationState struct {
+		typ              validationType
+		keyType, valType validationType
+		endGroup         protowire.Number
+		mi               *MessageInfo
+		tail             []byte
+		requiredMask     uint64
+	}
+
+	// Pre-allocate some slots to avoid repeated slice reallocation.
+	states := make([]validationState, 0, 16)
+	states = append(states, validationState{
+		typ: validationTypeMessage,
+		mi:  mi,
+	})
+	if groupTag > 0 {
+		states[0].typ = validationTypeGroup
+		states[0].endGroup = groupTag
+	}
+	initialized := true
+	start := len(b)
+State:
+	for len(states) > 0 {
+		st := &states[len(states)-1]
+		for len(b) > 0 {
+			// Parse the tag (field number and wire type).
+			var tag uint64
+			if b[0] < 0x80 {
+				tag = uint64(b[0])
+				b = b[1:]
+			} else if len(b) >= 2 && b[1] < 128 {
+				tag = uint64(b[0]&0x7f) + uint64(b[1])<<7
+				b = b[2:]
+			} else {
+				var n int
+				tag, n = protowire.ConsumeVarint(b)
+				if n < 0 {
+					return out, ValidationInvalid
+				}
+				b = b[n:]
+			}
+			var num protowire.Number
+			if n := tag >> 3; n < uint64(protowire.MinValidNumber) || n > uint64(protowire.MaxValidNumber) {
+				return out, ValidationInvalid
+			} else {
+				num = protowire.Number(n)
+			}
+			wtyp := protowire.Type(tag & 7)
+
+			if wtyp == protowire.EndGroupType {
+				if st.endGroup == num {
+					goto PopState
+				}
+				return out, ValidationInvalid
+			}
+			var vi validationInfo
+			switch {
+			case st.typ == validationTypeMap:
+				switch num {
+				case genid.MapEntry_Key_field_number:
+					vi.typ = st.keyType
+				case genid.MapEntry_Value_field_number:
+					vi.typ = st.valType
+					vi.mi = st.mi
+					vi.requiredBit = 1
+				}
+			case flags.ProtoLegacy && st.mi.isMessageSet:
+				switch num {
+				case messageset.FieldItem:
+					vi.typ = validationTypeMessageSetItem
+				}
+			default:
+				var f *coderFieldInfo
+				if int(num) < len(st.mi.denseCoderFields) {
+					f = st.mi.denseCoderFields[num]
+				} else {
+					f = st.mi.coderFields[num]
+				}
+				if f != nil {
+					vi = f.validation
+					if vi.typ == validationTypeMessage && vi.mi == nil {
+						// Probable weak field.
+						//
+						// TODO: Consider storing the results of this lookup somewhere
+						// rather than recomputing it on every validation.
+						fd := st.mi.Desc.Fields().ByNumber(num)
+						if fd == nil || !fd.IsWeak() {
+							break
+						}
+						messageName := fd.Message().FullName()
+						messageType, err := preg.GlobalTypes.FindMessageByName(messageName)
+						switch err {
+						case nil:
+							vi.mi, _ = messageType.(*MessageInfo)
+						case preg.NotFound:
+							vi.typ = validationTypeBytes
+						default:
+							return out, ValidationUnknown
+						}
+					}
+					break
+				}
+				// Possible extension field.
+				//
+				// TODO: We should return ValidationUnknown when:
+				//   1. The resolver is not frozen. (More extensions may be added to it.)
+				//   2. The resolver returns preg.NotFound.
+				// In this case, a type added to the resolver in the future could cause
+				// unmarshaling to begin failing. Supporting this requires some way to
+				// determine if the resolver is frozen.
+				xt, err := opts.resolver.FindExtensionByNumber(st.mi.Desc.FullName(), num)
+				if err != nil && err != preg.NotFound {
+					return out, ValidationUnknown
+				}
+				if err == nil {
+					vi = getExtensionFieldInfo(xt).validation
+				}
+			}
+			if vi.requiredBit != 0 {
+				// Check that the field has a compatible wire type.
+				// We only need to consider non-repeated field types,
+				// since repeated fields (and maps) can never be required.
+				ok := false
+				switch vi.typ {
+				case validationTypeVarint:
+					ok = wtyp == protowire.VarintType
+				case validationTypeFixed32:
+					ok = wtyp == protowire.Fixed32Type
+				case validationTypeFixed64:
+					ok = wtyp == protowire.Fixed64Type
+				case validationTypeBytes, validationTypeUTF8String, validationTypeMessage:
+					ok = wtyp == protowire.BytesType
+				case validationTypeGroup:
+					ok = wtyp == protowire.StartGroupType
+				}
+				if ok {
+					st.requiredMask |= vi.requiredBit
+				}
+			}
+
+			switch wtyp {
+			case protowire.VarintType:
+				if len(b) >= 10 {
+					switch {
+					case b[0] < 0x80:
+						b = b[1:]
+					case b[1] < 0x80:
+						b = b[2:]
+					case b[2] < 0x80:
+						b = b[3:]
+					case b[3] < 0x80:
+						b = b[4:]
+					case b[4] < 0x80:
+						b = b[5:]
+					case b[5] < 0x80:
+						b = b[6:]
+					case b[6] < 0x80:
+						b = b[7:]
+					case b[7] < 0x80:
+						b = b[8:]
+					case b[8] < 0x80:
+						b = b[9:]
+					case b[9] < 0x80 && b[9] < 2:
+						b = b[10:]
+					default:
+						return out, ValidationInvalid
+					}
+				} else {
+					switch {
+					case len(b) > 0 && b[0] < 0x80:
+						b = b[1:]
+					case len(b) > 1 && b[1] < 0x80:
+						b = b[2:]
+					case len(b) > 2 && b[2] < 0x80:
+						b = b[3:]
+					case len(b) > 3 && b[3] < 0x80:
+						b = b[4:]
+					case len(b) > 4 && b[4] < 0x80:
+						b = b[5:]
+					case len(b) > 5 && b[5] < 0x80:
+						b = b[6:]
+					case len(b) > 6 && b[6] < 0x80:
+						b = b[7:]
+					case len(b) > 7 && b[7] < 0x80:
+						b = b[8:]
+					case len(b) > 8 && b[8] < 0x80:
+						b = b[9:]
+					case len(b) > 9 && b[9] < 2:
+						b = b[10:]
+					default:
+						return out, ValidationInvalid
+					}
+				}
+				continue State
+			case protowire.BytesType:
+				var size uint64
+				if len(b) >= 1 && b[0] < 0x80 {
+					size = uint64(b[0])
+					b = b[1:]
+				} else if len(b) >= 2 && b[1] < 128 {
+					size = uint64(b[0]&0x7f) + uint64(b[1])<<7
+					b = b[2:]
+				} else {
+					var n int
+					size, n = protowire.ConsumeVarint(b)
+					if n < 0 {
+						return out, ValidationInvalid
+					}
+					b = b[n:]
+				}
+				if size > uint64(len(b)) {
+					return out, ValidationInvalid
+				}
+				v := b[:size]
+				b = b[size:]
+				switch vi.typ {
+				case validationTypeMessage:
+					if vi.mi == nil {
+						return out, ValidationUnknown
+					}
+					vi.mi.init()
+					fallthrough
+				case validationTypeMap:
+					if vi.mi != nil {
+						vi.mi.init()
+					}
+					states = append(states, validationState{
+						typ:     vi.typ,
+						keyType: vi.keyType,
+						valType: vi.valType,
+						mi:      vi.mi,
+						tail:    b,
+					})
+					b = v
+					continue State
+				case validationTypeRepeatedVarint:
+					// Packed field.
+					for len(v) > 0 {
+						_, n := protowire.ConsumeVarint(v)
+						if n < 0 {
+							return out, ValidationInvalid
+						}
+						v = v[n:]
+					}
+				case validationTypeRepeatedFixed32:
+					// Packed field.
+					if len(v)%4 != 0 {
+						return out, ValidationInvalid
+					}
+				case validationTypeRepeatedFixed64:
+					// Packed field.
+					if len(v)%8 != 0 {
+						return out, ValidationInvalid
+					}
+				case validationTypeUTF8String:
+					if !utf8.Valid(v) {
+						return out, ValidationInvalid
+					}
+				}
+			case protowire.Fixed32Type:
+				if len(b) < 4 {
+					return out, ValidationInvalid
+				}
+				b = b[4:]
+			case protowire.Fixed64Type:
+				if len(b) < 8 {
+					return out, ValidationInvalid
+				}
+				b = b[8:]
+			case protowire.StartGroupType:
+				switch {
+				case vi.typ == validationTypeGroup:
+					if vi.mi == nil {
+						return out, ValidationUnknown
+					}
+					vi.mi.init()
+					states = append(states, validationState{
+						typ:      validationTypeGroup,
+						mi:       vi.mi,
+						endGroup: num,
+					})
+					continue State
+				case flags.ProtoLegacy && vi.typ == validationTypeMessageSetItem:
+					typeid, v, n, err := messageset.ConsumeFieldValue(b, false)
+					if err != nil {
+						return out, ValidationInvalid
+					}
+					xt, err := opts.resolver.FindExtensionByNumber(st.mi.Desc.FullName(), typeid)
+					switch {
+					case err == preg.NotFound:
+						b = b[n:]
+					case err != nil:
+						return out, ValidationUnknown
+					default:
+						xvi := getExtensionFieldInfo(xt).validation
+						if xvi.mi != nil {
+							xvi.mi.init()
+						}
+						states = append(states, validationState{
+							typ:  xvi.typ,
+							mi:   xvi.mi,
+							tail: b[n:],
+						})
+						b = v
+						continue State
+					}
+				default:
+					n := protowire.ConsumeFieldValue(num, wtyp, b)
+					if n < 0 {
+						return out, ValidationInvalid
+					}
+					b = b[n:]
+				}
+			default:
+				return out, ValidationInvalid
+			}
+		}
+		if st.endGroup != 0 {
+			return out, ValidationInvalid
+		}
+		if len(b) != 0 {
+			return out, ValidationInvalid
+		}
+		b = st.tail
+	PopState:
+		numRequiredFields := 0
+		switch st.typ {
+		case validationTypeMessage, validationTypeGroup:
+			numRequiredFields = int(st.mi.numRequiredFields)
+		case validationTypeMap:
+			// If this is a map field with a message value that contains
+			// required fields, require that the value be present.
+			if st.mi != nil && st.mi.numRequiredFields > 0 {
+				numRequiredFields = 1
+			}
+		}
+		// If there are more than 64 required fields, this check will
+		// always fail and we will report that the message is potentially
+		// uninitialized.
+		if numRequiredFields > 0 && bits.OnesCount64(st.requiredMask) != numRequiredFields {
+			initialized = false
+		}
+		states = states[:len(states)-1]
+	}
+	out.n = start - len(b)
+	if initialized {
+		out.initialized = true
+	}
+	return out, ValidationValid
+}
diff --git a/vendor/google.golang.org/protobuf/internal/impl/weak.go b/vendor/google.golang.org/protobuf/internal/impl/weak.go
new file mode 100644
index 0000000..009cbef
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/impl/weak.go
@@ -0,0 +1,74 @@
+// 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 impl
+
+import (
+	"fmt"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+// weakFields adds methods to the exported WeakFields type for internal use.
+//
+// The exported type is an alias to an unnamed type, so methods can't be
+// defined directly on it.
+type weakFields WeakFields
+
+func (w weakFields) get(num pref.FieldNumber) (pref.ProtoMessage, bool) {
+	m, ok := w[int32(num)]
+	return m, ok
+}
+
+func (w *weakFields) set(num pref.FieldNumber, m pref.ProtoMessage) {
+	if *w == nil {
+		*w = make(weakFields)
+	}
+	(*w)[int32(num)] = m
+}
+
+func (w *weakFields) clear(num pref.FieldNumber) {
+	delete(*w, int32(num))
+}
+
+func (Export) HasWeak(w WeakFields, num pref.FieldNumber) bool {
+	_, ok := w[int32(num)]
+	return ok
+}
+
+func (Export) ClearWeak(w *WeakFields, num pref.FieldNumber) {
+	delete(*w, int32(num))
+}
+
+func (Export) GetWeak(w WeakFields, num pref.FieldNumber, name pref.FullName) pref.ProtoMessage {
+	if m, ok := w[int32(num)]; ok {
+		return m
+	}
+	mt, _ := protoregistry.GlobalTypes.FindMessageByName(name)
+	if mt == nil {
+		panic(fmt.Sprintf("message %v for weak field is not linked in", name))
+	}
+	return mt.Zero().Interface()
+}
+
+func (Export) SetWeak(w *WeakFields, num pref.FieldNumber, name pref.FullName, m pref.ProtoMessage) {
+	if m != nil {
+		mt, _ := protoregistry.GlobalTypes.FindMessageByName(name)
+		if mt == nil {
+			panic(fmt.Sprintf("message %v for weak field is not linked in", name))
+		}
+		if mt != m.ProtoReflect().Type() {
+			panic(fmt.Sprintf("invalid message type for weak field: got %T, want %T", m, mt.Zero().Interface()))
+		}
+	}
+	if m == nil || !m.ProtoReflect().IsValid() {
+		delete(*w, int32(num))
+		return
+	}
+	if *w == nil {
+		*w = make(weakFields)
+	}
+	(*w)[int32(num)] = m
+}
diff --git a/vendor/google.golang.org/protobuf/internal/mapsort/mapsort.go b/vendor/google.golang.org/protobuf/internal/mapsort/mapsort.go
new file mode 100644
index 0000000..a3de1cf
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/mapsort/mapsort.go
@@ -0,0 +1,43 @@
+// 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 mapsort provides sorted access to maps.
+package mapsort
+
+import (
+	"sort"
+
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Range iterates over every map entry in sorted key order,
+// calling f for each key and value encountered.
+func Range(mapv protoreflect.Map, keyKind protoreflect.Kind, f func(protoreflect.MapKey, protoreflect.Value) bool) {
+	var keys []protoreflect.MapKey
+	mapv.Range(func(key protoreflect.MapKey, _ protoreflect.Value) bool {
+		keys = append(keys, key)
+		return true
+	})
+	sort.Slice(keys, func(i, j int) bool {
+		switch keyKind {
+		case protoreflect.BoolKind:
+			return !keys[i].Bool() && keys[j].Bool()
+		case protoreflect.Int32Kind, protoreflect.Sint32Kind, protoreflect.Sfixed32Kind,
+			protoreflect.Int64Kind, protoreflect.Sint64Kind, protoreflect.Sfixed64Kind:
+			return keys[i].Int() < keys[j].Int()
+		case protoreflect.Uint32Kind, protoreflect.Fixed32Kind,
+			protoreflect.Uint64Kind, protoreflect.Fixed64Kind:
+			return keys[i].Uint() < keys[j].Uint()
+		case protoreflect.StringKind:
+			return keys[i].String() < keys[j].String()
+		default:
+			panic("invalid kind: " + keyKind.String())
+		}
+	})
+	for _, key := range keys {
+		if !f(key, mapv.Get(key)) {
+			break
+		}
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/internal/pragma/pragma.go b/vendor/google.golang.org/protobuf/internal/pragma/pragma.go
new file mode 100644
index 0000000..49dc4fc
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/pragma/pragma.go
@@ -0,0 +1,29 @@
+// 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.
+
+// Package pragma provides types that can be embedded into a struct to
+// statically enforce or prevent certain language properties.
+package pragma
+
+import "sync"
+
+// NoUnkeyedLiterals can be embedded in a struct to prevent unkeyed literals.
+type NoUnkeyedLiterals struct{}
+
+// DoNotImplement can be embedded in an interface to prevent trivial
+// implementations of the interface.
+//
+// This is useful to prevent unauthorized implementations of an interface
+// so that it can be extended in the future for any protobuf language changes.
+type DoNotImplement interface{ ProtoInternal(DoNotImplement) }
+
+// DoNotCompare can be embedded in a struct to prevent comparability.
+type DoNotCompare [0]func()
+
+// DoNotCopy can be embedded in a struct to help prevent shallow copies.
+// This does not rely on a Go language feature, but rather a special case
+// within the vet checker.
+//
+// See https://golang.org/issues/8005.
+type DoNotCopy [0]sync.Mutex
diff --git a/vendor/google.golang.org/protobuf/internal/set/ints.go b/vendor/google.golang.org/protobuf/internal/set/ints.go
new file mode 100644
index 0000000..d3d7f89
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/set/ints.go
@@ -0,0 +1,58 @@
+// 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.
+
+// Package set provides simple set data structures for uint64s.
+package set
+
+import "math/bits"
+
+// int64s represents a set of integers within the range of 0..63.
+type int64s uint64
+
+func (bs *int64s) Len() int {
+	return bits.OnesCount64(uint64(*bs))
+}
+func (bs *int64s) Has(n uint64) bool {
+	return uint64(*bs)&(uint64(1)<<n) > 0
+}
+func (bs *int64s) Set(n uint64) {
+	*(*uint64)(bs) |= uint64(1) << n
+}
+func (bs *int64s) Clear(n uint64) {
+	*(*uint64)(bs) &^= uint64(1) << n
+}
+
+// Ints represents a set of integers within the range of 0..math.MaxUint64.
+type Ints struct {
+	lo int64s
+	hi map[uint64]struct{}
+}
+
+func (bs *Ints) Len() int {
+	return bs.lo.Len() + len(bs.hi)
+}
+func (bs *Ints) Has(n uint64) bool {
+	if n < 64 {
+		return bs.lo.Has(n)
+	}
+	_, ok := bs.hi[n]
+	return ok
+}
+func (bs *Ints) Set(n uint64) {
+	if n < 64 {
+		bs.lo.Set(n)
+		return
+	}
+	if bs.hi == nil {
+		bs.hi = make(map[uint64]struct{})
+	}
+	bs.hi[n] = struct{}{}
+}
+func (bs *Ints) Clear(n uint64) {
+	if n < 64 {
+		bs.lo.Clear(n)
+		return
+	}
+	delete(bs.hi, n)
+}
diff --git a/vendor/google.golang.org/protobuf/internal/strs/strings.go b/vendor/google.golang.org/protobuf/internal/strs/strings.go
new file mode 100644
index 0000000..0b74e76
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/strs/strings.go
@@ -0,0 +1,196 @@
+// 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 strs provides string manipulation functionality specific to protobuf.
+package strs
+
+import (
+	"go/token"
+	"strings"
+	"unicode"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// EnforceUTF8 reports whether to enforce strict UTF-8 validation.
+func EnforceUTF8(fd protoreflect.FieldDescriptor) bool {
+	if flags.ProtoLegacy {
+		if fd, ok := fd.(interface{ EnforceUTF8() bool }); ok {
+			return fd.EnforceUTF8()
+		}
+	}
+	return fd.Syntax() == protoreflect.Proto3
+}
+
+// GoCamelCase camel-cases a protobuf name for use as a Go identifier.
+//
+// If there is an interior underscore followed by a lower case letter,
+// drop the underscore and convert the letter to upper case.
+func GoCamelCase(s string) string {
+	// Invariant: if the next letter is lower case, it must be converted
+	// to upper case.
+	// That is, we process a word at a time, where words are marked by _ or
+	// upper case letter. Digits are treated as words.
+	var b []byte
+	for i := 0; i < len(s); i++ {
+		c := s[i]
+		switch {
+		case c == '.' && i+1 < len(s) && isASCIILower(s[i+1]):
+			// Skip over '.' in ".{{lowercase}}".
+		case c == '.':
+			b = append(b, '_') // convert '.' to '_'
+		case c == '_' && (i == 0 || s[i-1] == '.'):
+			// Convert initial '_' to ensure we start with a capital letter.
+			// Do the same for '_' after '.' to match historic behavior.
+			b = append(b, 'X') // convert '_' to 'X'
+		case c == '_' && i+1 < len(s) && isASCIILower(s[i+1]):
+			// Skip over '_' in "_{{lowercase}}".
+		case isASCIIDigit(c):
+			b = append(b, c)
+		default:
+			// Assume we have a letter now - if not, it's a bogus identifier.
+			// The next word is a sequence of characters that must start upper case.
+			if isASCIILower(c) {
+				c -= 'a' - 'A' // convert lowercase to uppercase
+			}
+			b = append(b, c)
+
+			// Accept lower case sequence that follows.
+			for ; i+1 < len(s) && isASCIILower(s[i+1]); i++ {
+				b = append(b, s[i+1])
+			}
+		}
+	}
+	return string(b)
+}
+
+// GoSanitized converts a string to a valid Go identifier.
+func GoSanitized(s string) string {
+	// Sanitize the input to the set of valid characters,
+	// which must be '_' or be in the Unicode L or N categories.
+	s = strings.Map(func(r rune) rune {
+		if unicode.IsLetter(r) || unicode.IsDigit(r) {
+			return r
+		}
+		return '_'
+	}, s)
+
+	// Prepend '_' in the event of a Go keyword conflict or if
+	// the identifier is invalid (does not start in the Unicode L category).
+	r, _ := utf8.DecodeRuneInString(s)
+	if token.Lookup(s).IsKeyword() || !unicode.IsLetter(r) {
+		return "_" + s
+	}
+	return s
+}
+
+// JSONCamelCase converts a snake_case identifier to a camelCase identifier,
+// according to the protobuf JSON specification.
+func JSONCamelCase(s string) string {
+	var b []byte
+	var wasUnderscore bool
+	for i := 0; i < len(s); i++ { // proto identifiers are always ASCII
+		c := s[i]
+		if c != '_' {
+			if wasUnderscore && isASCIILower(c) {
+				c -= 'a' - 'A' // convert to uppercase
+			}
+			b = append(b, c)
+		}
+		wasUnderscore = c == '_'
+	}
+	return string(b)
+}
+
+// JSONSnakeCase converts a camelCase identifier to a snake_case identifier,
+// according to the protobuf JSON specification.
+func JSONSnakeCase(s string) string {
+	var b []byte
+	for i := 0; i < len(s); i++ { // proto identifiers are always ASCII
+		c := s[i]
+		if isASCIIUpper(c) {
+			b = append(b, '_')
+			c += 'a' - 'A' // convert to lowercase
+		}
+		b = append(b, c)
+	}
+	return string(b)
+}
+
+// MapEntryName derives the name of the map entry message given the field name.
+// See protoc v3.8.0: src/google/protobuf/descriptor.cc:254-276,6057
+func MapEntryName(s string) string {
+	var b []byte
+	upperNext := true
+	for _, c := range s {
+		switch {
+		case c == '_':
+			upperNext = true
+		case upperNext:
+			b = append(b, byte(unicode.ToUpper(c)))
+			upperNext = false
+		default:
+			b = append(b, byte(c))
+		}
+	}
+	b = append(b, "Entry"...)
+	return string(b)
+}
+
+// EnumValueName derives the camel-cased enum value name.
+// See protoc v3.8.0: src/google/protobuf/descriptor.cc:297-313
+func EnumValueName(s string) string {
+	var b []byte
+	upperNext := true
+	for _, c := range s {
+		switch {
+		case c == '_':
+			upperNext = true
+		case upperNext:
+			b = append(b, byte(unicode.ToUpper(c)))
+			upperNext = false
+		default:
+			b = append(b, byte(unicode.ToLower(c)))
+			upperNext = false
+		}
+	}
+	return string(b)
+}
+
+// TrimEnumPrefix trims the enum name prefix from an enum value name,
+// where the prefix is all lowercase without underscores.
+// See protoc v3.8.0: src/google/protobuf/descriptor.cc:330-375
+func TrimEnumPrefix(s, prefix string) string {
+	s0 := s // original input
+	for len(s) > 0 && len(prefix) > 0 {
+		if s[0] == '_' {
+			s = s[1:]
+			continue
+		}
+		if unicode.ToLower(rune(s[0])) != rune(prefix[0]) {
+			return s0 // no prefix match
+		}
+		s, prefix = s[1:], prefix[1:]
+	}
+	if len(prefix) > 0 {
+		return s0 // no prefix match
+	}
+	s = strings.TrimLeft(s, "_")
+	if len(s) == 0 {
+		return s0 // avoid returning empty string
+	}
+	return s
+}
+
+func isASCIILower(c byte) bool {
+	return 'a' <= c && c <= 'z'
+}
+func isASCIIUpper(c byte) bool {
+	return 'A' <= c && c <= 'Z'
+}
+func isASCIIDigit(c byte) bool {
+	return '0' <= c && c <= '9'
+}
diff --git a/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go b/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go
new file mode 100644
index 0000000..85e074c
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go
@@ -0,0 +1,27 @@
+// 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 purego appengine
+
+package strs
+
+import pref "google.golang.org/protobuf/reflect/protoreflect"
+
+func UnsafeString(b []byte) string {
+	return string(b)
+}
+
+func UnsafeBytes(s string) []byte {
+	return []byte(s)
+}
+
+type Builder struct{}
+
+func (*Builder) AppendFullName(prefix pref.FullName, name pref.Name) pref.FullName {
+	return prefix.Append(name)
+}
+
+func (*Builder) MakeString(b []byte) string {
+	return string(b)
+}
diff --git a/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go b/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go
new file mode 100644
index 0000000..2160c70
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go
@@ -0,0 +1,94 @@
+// 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 !purego,!appengine
+
+package strs
+
+import (
+	"unsafe"
+
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+type (
+	stringHeader struct {
+		Data unsafe.Pointer
+		Len  int
+	}
+	sliceHeader struct {
+		Data unsafe.Pointer
+		Len  int
+		Cap  int
+	}
+)
+
+// UnsafeString returns an unsafe string reference of b.
+// The caller must treat the input slice as immutable.
+//
+// WARNING: Use carefully. The returned result must not leak to the end user
+// unless the input slice is provably immutable.
+func UnsafeString(b []byte) (s string) {
+	src := (*sliceHeader)(unsafe.Pointer(&b))
+	dst := (*stringHeader)(unsafe.Pointer(&s))
+	dst.Data = src.Data
+	dst.Len = src.Len
+	return s
+}
+
+// UnsafeBytes returns an unsafe bytes slice reference of s.
+// The caller must treat returned slice as immutable.
+//
+// WARNING: Use carefully. The returned result must not leak to the end user.
+func UnsafeBytes(s string) (b []byte) {
+	src := (*stringHeader)(unsafe.Pointer(&s))
+	dst := (*sliceHeader)(unsafe.Pointer(&b))
+	dst.Data = src.Data
+	dst.Len = src.Len
+	dst.Cap = src.Len
+	return b
+}
+
+// Builder builds a set of strings with shared lifetime.
+// This differs from strings.Builder, which is for building a single string.
+type Builder struct {
+	buf []byte
+}
+
+// AppendFullName is equivalent to protoreflect.FullName.Append,
+// but optimized for large batches where each name has a shared lifetime.
+func (sb *Builder) AppendFullName(prefix pref.FullName, name pref.Name) pref.FullName {
+	n := len(prefix) + len(".") + len(name)
+	if len(prefix) == 0 {
+		n -= len(".")
+	}
+	sb.grow(n)
+	sb.buf = append(sb.buf, prefix...)
+	sb.buf = append(sb.buf, '.')
+	sb.buf = append(sb.buf, name...)
+	return pref.FullName(sb.last(n))
+}
+
+// MakeString is equivalent to string(b), but optimized for large batches
+// with a shared lifetime.
+func (sb *Builder) MakeString(b []byte) string {
+	sb.grow(len(b))
+	sb.buf = append(sb.buf, b...)
+	return sb.last(len(b))
+}
+
+func (sb *Builder) grow(n int) {
+	if cap(sb.buf)-len(sb.buf) >= n {
+		return
+	}
+
+	// Unlike strings.Builder, we do not need to copy over the contents
+	// of the old buffer since our builder provides no API for
+	// retrieving previously created strings.
+	sb.buf = make([]byte, 2*(cap(sb.buf)+n))
+}
+
+func (sb *Builder) last(n int) string {
+	return UnsafeString(sb.buf[len(sb.buf)-n:])
+}
diff --git a/vendor/google.golang.org/protobuf/internal/version/version.go b/vendor/google.golang.org/protobuf/internal/version/version.go
new file mode 100644
index 0000000..72cf770
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/internal/version/version.go
@@ -0,0 +1,79 @@
+// 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 version records versioning information about this module.
+package version
+
+import (
+	"fmt"
+	"strings"
+)
+
+// These constants determine the current version of this module.
+//
+//
+// For our release process, we enforce the following rules:
+//	* Tagged releases use a tag that is identical to String.
+//	* Tagged releases never reference a commit where the String
+//	contains "devel".
+//	* The set of all commits in this repository where String
+//	does not contain "devel" must have a unique String.
+//
+//
+// Steps for tagging a new release:
+//	1. Create a new CL.
+//
+//	2. Update Minor, Patch, and/or PreRelease as necessary.
+//	PreRelease must not contain the string "devel".
+//
+//	3. Since the last released minor version, have there been any changes to
+//	generator that relies on new functionality in the runtime?
+//	If yes, then increment RequiredGenerated.
+//
+//	4. Since the last released minor version, have there been any changes to
+//	the runtime that removes support for old .pb.go source code?
+//	If yes, then increment SupportMinimum.
+//
+//	5. Send out the CL for review and submit it.
+//	Note that the next CL in step 8 must be submitted after this CL
+//	without any other CLs in-between.
+//
+//	6. Tag a new version, where the tag is is the current String.
+//
+//	7. Write release notes for all notable changes
+//	between this release and the last release.
+//
+//	8. Create a new CL.
+//
+//	9. Update PreRelease to include the string "devel".
+//	For example: "" -> "devel" or "rc.1" -> "rc.1.devel"
+//
+//	10. Send out the CL for review and submit it.
+const (
+	Major      = 1
+	Minor      = 25
+	Patch      = 0
+	PreRelease = ""
+)
+
+// String formats the version string for this module in semver format.
+//
+// Examples:
+//	v1.20.1
+//	v1.21.0-rc.1
+func String() string {
+	v := fmt.Sprintf("v%d.%d.%d", Major, Minor, Patch)
+	if PreRelease != "" {
+		v += "-" + PreRelease
+
+		// TODO: Add metadata about the commit or build hash.
+		// See https://golang.org/issue/29814
+		// See https://golang.org/issue/33533
+		var metadata string
+		if strings.Contains(PreRelease, "devel") && metadata != "" {
+			v += "+" + metadata
+		}
+	}
+	return v
+}
diff --git a/vendor/google.golang.org/protobuf/proto/checkinit.go b/vendor/google.golang.org/protobuf/proto/checkinit.go
new file mode 100644
index 0000000..3e9a6a2
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/checkinit.go
@@ -0,0 +1,71 @@
+// 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 proto
+
+import (
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// CheckInitialized returns an error if any required fields in m are not set.
+func CheckInitialized(m Message) error {
+	// Treat a nil message interface as an "untyped" empty message,
+	// which we assume to have no required fields.
+	if m == nil {
+		return nil
+	}
+
+	return checkInitialized(m.ProtoReflect())
+}
+
+// CheckInitialized returns an error if any required fields in m are not set.
+func checkInitialized(m protoreflect.Message) error {
+	if methods := protoMethods(m); methods != nil && methods.CheckInitialized != nil {
+		_, err := methods.CheckInitialized(protoiface.CheckInitializedInput{
+			Message: m,
+		})
+		return err
+	}
+	return checkInitializedSlow(m)
+}
+
+func checkInitializedSlow(m protoreflect.Message) error {
+	md := m.Descriptor()
+	fds := md.Fields()
+	for i, nums := 0, md.RequiredNumbers(); i < nums.Len(); i++ {
+		fd := fds.ByNumber(nums.Get(i))
+		if !m.Has(fd) {
+			return errors.RequiredNotSet(string(fd.FullName()))
+		}
+	}
+	var err error
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		switch {
+		case fd.IsList():
+			if fd.Message() == nil {
+				return true
+			}
+			for i, list := 0, v.List(); i < list.Len() && err == nil; i++ {
+				err = checkInitialized(list.Get(i).Message())
+			}
+		case fd.IsMap():
+			if fd.MapValue().Message() == nil {
+				return true
+			}
+			v.Map().Range(func(key protoreflect.MapKey, v protoreflect.Value) bool {
+				err = checkInitialized(v.Message())
+				return err == nil
+			})
+		default:
+			if fd.Message() == nil {
+				return true
+			}
+			err = checkInitialized(v.Message())
+		}
+		return err == nil
+	})
+	return err
+}
diff --git a/vendor/google.golang.org/protobuf/proto/decode.go b/vendor/google.golang.org/protobuf/proto/decode.go
new file mode 100644
index 0000000..42fc519
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/decode.go
@@ -0,0 +1,274 @@
+// 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.
+
+package proto
+
+import (
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/internal/genid"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// UnmarshalOptions configures the unmarshaler.
+//
+// Example usage:
+//   err := UnmarshalOptions{DiscardUnknown: true}.Unmarshal(b, m)
+type UnmarshalOptions struct {
+	pragma.NoUnkeyedLiterals
+
+	// Merge merges the input into the destination message.
+	// The default behavior is to always reset the message before unmarshaling,
+	// unless Merge is specified.
+	Merge bool
+
+	// AllowPartial accepts input for messages that will result in missing
+	// required fields. If AllowPartial is false (the default), Unmarshal will
+	// return an error if there are any missing required fields.
+	AllowPartial bool
+
+	// If DiscardUnknown is set, unknown fields are ignored.
+	DiscardUnknown bool
+
+	// Resolver is used for looking up types when unmarshaling extension fields.
+	// If nil, this defaults to using protoregistry.GlobalTypes.
+	Resolver interface {
+		FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
+		FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
+	}
+}
+
+// Unmarshal parses the wire-format message in b and places the result in m.
+func Unmarshal(b []byte, m Message) error {
+	_, err := UnmarshalOptions{}.unmarshal(b, m.ProtoReflect())
+	return err
+}
+
+// Unmarshal parses the wire-format message in b and places the result in m.
+func (o UnmarshalOptions) Unmarshal(b []byte, m Message) error {
+	_, err := o.unmarshal(b, m.ProtoReflect())
+	return err
+}
+
+// UnmarshalState parses a wire-format message and places the result in m.
+//
+// This method permits fine-grained control over the unmarshaler.
+// Most users should use Unmarshal instead.
+func (o UnmarshalOptions) UnmarshalState(in protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) {
+	return o.unmarshal(in.Buf, in.Message)
+}
+
+// unmarshal is a centralized function that all unmarshal operations go through.
+// For profiling purposes, avoid changing the name of this function or
+// introducing other code paths for unmarshal that do not go through this.
+func (o UnmarshalOptions) unmarshal(b []byte, m protoreflect.Message) (out protoiface.UnmarshalOutput, err error) {
+	if o.Resolver == nil {
+		o.Resolver = protoregistry.GlobalTypes
+	}
+	if !o.Merge {
+		Reset(m.Interface())
+	}
+	allowPartial := o.AllowPartial
+	o.Merge = true
+	o.AllowPartial = true
+	methods := protoMethods(m)
+	if methods != nil && methods.Unmarshal != nil &&
+		!(o.DiscardUnknown && methods.Flags&protoiface.SupportUnmarshalDiscardUnknown == 0) {
+		in := protoiface.UnmarshalInput{
+			Message:  m,
+			Buf:      b,
+			Resolver: o.Resolver,
+		}
+		if o.DiscardUnknown {
+			in.Flags |= protoiface.UnmarshalDiscardUnknown
+		}
+		out, err = methods.Unmarshal(in)
+	} else {
+		err = o.unmarshalMessageSlow(b, m)
+	}
+	if err != nil {
+		return out, err
+	}
+	if allowPartial || (out.Flags&protoiface.UnmarshalInitialized != 0) {
+		return out, nil
+	}
+	return out, checkInitialized(m)
+}
+
+func (o UnmarshalOptions) unmarshalMessage(b []byte, m protoreflect.Message) error {
+	_, err := o.unmarshal(b, m)
+	return err
+}
+
+func (o UnmarshalOptions) unmarshalMessageSlow(b []byte, m protoreflect.Message) error {
+	md := m.Descriptor()
+	if messageset.IsMessageSet(md) {
+		return o.unmarshalMessageSet(b, m)
+	}
+	fields := md.Fields()
+	for len(b) > 0 {
+		// Parse the tag (field number and wire type).
+		num, wtyp, tagLen := protowire.ConsumeTag(b)
+		if tagLen < 0 {
+			return protowire.ParseError(tagLen)
+		}
+		if num > protowire.MaxValidNumber {
+			return errors.New("invalid field number")
+		}
+
+		// Find the field descriptor for this field number.
+		fd := fields.ByNumber(num)
+		if fd == nil && md.ExtensionRanges().Has(num) {
+			extType, err := o.Resolver.FindExtensionByNumber(md.FullName(), num)
+			if err != nil && err != protoregistry.NotFound {
+				return errors.New("%v: unable to resolve extension %v: %v", md.FullName(), num, err)
+			}
+			if extType != nil {
+				fd = extType.TypeDescriptor()
+			}
+		}
+		var err error
+		if fd == nil {
+			err = errUnknown
+		} else if flags.ProtoLegacy {
+			if fd.IsWeak() && fd.Message().IsPlaceholder() {
+				err = errUnknown // weak referent is not linked in
+			}
+		}
+
+		// Parse the field value.
+		var valLen int
+		switch {
+		case err != nil:
+		case fd.IsList():
+			valLen, err = o.unmarshalList(b[tagLen:], wtyp, m.Mutable(fd).List(), fd)
+		case fd.IsMap():
+			valLen, err = o.unmarshalMap(b[tagLen:], wtyp, m.Mutable(fd).Map(), fd)
+		default:
+			valLen, err = o.unmarshalSingular(b[tagLen:], wtyp, m, fd)
+		}
+		if err != nil {
+			if err != errUnknown {
+				return err
+			}
+			valLen = protowire.ConsumeFieldValue(num, wtyp, b[tagLen:])
+			if valLen < 0 {
+				return protowire.ParseError(valLen)
+			}
+			if !o.DiscardUnknown {
+				m.SetUnknown(append(m.GetUnknown(), b[:tagLen+valLen]...))
+			}
+		}
+		b = b[tagLen+valLen:]
+	}
+	return nil
+}
+
+func (o UnmarshalOptions) unmarshalSingular(b []byte, wtyp protowire.Type, m protoreflect.Message, fd protoreflect.FieldDescriptor) (n int, err error) {
+	v, n, err := o.unmarshalScalar(b, wtyp, fd)
+	if err != nil {
+		return 0, err
+	}
+	switch fd.Kind() {
+	case protoreflect.GroupKind, protoreflect.MessageKind:
+		m2 := m.Mutable(fd).Message()
+		if err := o.unmarshalMessage(v.Bytes(), m2); err != nil {
+			return n, err
+		}
+	default:
+		// Non-message scalars replace the previous value.
+		m.Set(fd, v)
+	}
+	return n, nil
+}
+
+func (o UnmarshalOptions) unmarshalMap(b []byte, wtyp protowire.Type, mapv protoreflect.Map, fd protoreflect.FieldDescriptor) (n int, err error) {
+	if wtyp != protowire.BytesType {
+		return 0, errUnknown
+	}
+	b, n = protowire.ConsumeBytes(b)
+	if n < 0 {
+		return 0, protowire.ParseError(n)
+	}
+	var (
+		keyField = fd.MapKey()
+		valField = fd.MapValue()
+		key      protoreflect.Value
+		val      protoreflect.Value
+		haveKey  bool
+		haveVal  bool
+	)
+	switch valField.Kind() {
+	case protoreflect.GroupKind, protoreflect.MessageKind:
+		val = mapv.NewValue()
+	}
+	// Map entries are represented as a two-element message with fields
+	// containing the key and value.
+	for len(b) > 0 {
+		num, wtyp, n := protowire.ConsumeTag(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		if num > protowire.MaxValidNumber {
+			return 0, errors.New("invalid field number")
+		}
+		b = b[n:]
+		err = errUnknown
+		switch num {
+		case genid.MapEntry_Key_field_number:
+			key, n, err = o.unmarshalScalar(b, wtyp, keyField)
+			if err != nil {
+				break
+			}
+			haveKey = true
+		case genid.MapEntry_Value_field_number:
+			var v protoreflect.Value
+			v, n, err = o.unmarshalScalar(b, wtyp, valField)
+			if err != nil {
+				break
+			}
+			switch valField.Kind() {
+			case protoreflect.GroupKind, protoreflect.MessageKind:
+				if err := o.unmarshalMessage(v.Bytes(), val.Message()); err != nil {
+					return 0, err
+				}
+			default:
+				val = v
+			}
+			haveVal = true
+		}
+		if err == errUnknown {
+			n = protowire.ConsumeFieldValue(num, wtyp, b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+		} else if err != nil {
+			return 0, err
+		}
+		b = b[n:]
+	}
+	// Every map entry should have entries for key and value, but this is not strictly required.
+	if !haveKey {
+		key = keyField.Default()
+	}
+	if !haveVal {
+		switch valField.Kind() {
+		case protoreflect.GroupKind, protoreflect.MessageKind:
+		default:
+			val = valField.Default()
+		}
+	}
+	mapv.Set(key.MapKey(), val)
+	return n, nil
+}
+
+// errUnknown is used internally to indicate fields which should be added
+// to the unknown field set of a message. It is never returned from an exported
+// function.
+var errUnknown = errors.New("BUG: internal error (unknown)")
diff --git a/vendor/google.golang.org/protobuf/proto/decode_gen.go b/vendor/google.golang.org/protobuf/proto/decode_gen.go
new file mode 100644
index 0000000..d6dc904
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/decode_gen.go
@@ -0,0 +1,603 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package proto
+
+import (
+	"math"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// unmarshalScalar decodes a value of the given kind.
+//
+// Message values are decoded into a []byte which aliases the input data.
+func (o UnmarshalOptions) unmarshalScalar(b []byte, wtyp protowire.Type, fd protoreflect.FieldDescriptor) (val protoreflect.Value, n int, err error) {
+	switch fd.Kind() {
+	case protoreflect.BoolKind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfBool(protowire.DecodeBool(v)), n, nil
+	case protoreflect.EnumKind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)), n, nil
+	case protoreflect.Int32Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt32(int32(v)), n, nil
+	case protoreflect.Sint32Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))), n, nil
+	case protoreflect.Uint32Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfUint32(uint32(v)), n, nil
+	case protoreflect.Int64Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt64(int64(v)), n, nil
+	case protoreflect.Sint64Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)), n, nil
+	case protoreflect.Uint64Kind:
+		if wtyp != protowire.VarintType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfUint64(v), n, nil
+	case protoreflect.Sfixed32Kind:
+		if wtyp != protowire.Fixed32Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt32(int32(v)), n, nil
+	case protoreflect.Fixed32Kind:
+		if wtyp != protowire.Fixed32Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfUint32(uint32(v)), n, nil
+	case protoreflect.FloatKind:
+		if wtyp != protowire.Fixed32Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))), n, nil
+	case protoreflect.Sfixed64Kind:
+		if wtyp != protowire.Fixed64Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfInt64(int64(v)), n, nil
+	case protoreflect.Fixed64Kind:
+		if wtyp != protowire.Fixed64Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfUint64(v), n, nil
+	case protoreflect.DoubleKind:
+		if wtyp != protowire.Fixed64Type {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfFloat64(math.Float64frombits(v)), n, nil
+	case protoreflect.StringKind:
+		if wtyp != protowire.BytesType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		if strs.EnforceUTF8(fd) && !utf8.Valid(v) {
+			return protoreflect.Value{}, 0, errors.InvalidUTF8(string(fd.FullName()))
+		}
+		return protoreflect.ValueOfString(string(v)), n, nil
+	case protoreflect.BytesKind:
+		if wtyp != protowire.BytesType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfBytes(append(emptyBuf[:], v...)), n, nil
+	case protoreflect.MessageKind:
+		if wtyp != protowire.BytesType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfBytes(v), n, nil
+	case protoreflect.GroupKind:
+		if wtyp != protowire.StartGroupType {
+			return val, 0, errUnknown
+		}
+		v, n := protowire.ConsumeGroup(fd.Number(), b)
+		if n < 0 {
+			return val, 0, protowire.ParseError(n)
+		}
+		return protoreflect.ValueOfBytes(v), n, nil
+	default:
+		return val, 0, errUnknown
+	}
+}
+
+func (o UnmarshalOptions) unmarshalList(b []byte, wtyp protowire.Type, list protoreflect.List, fd protoreflect.FieldDescriptor) (n int, err error) {
+	switch fd.Kind() {
+	case protoreflect.BoolKind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfBool(protowire.DecodeBool(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfBool(protowire.DecodeBool(v)))
+		return n, nil
+	case protoreflect.EnumKind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfEnum(protoreflect.EnumNumber(v)))
+		return n, nil
+	case protoreflect.Int32Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt32(int32(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt32(int32(v)))
+		return n, nil
+	case protoreflect.Sint32Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt32(int32(protowire.DecodeZigZag(v & math.MaxUint32))))
+		return n, nil
+	case protoreflect.Uint32Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfUint32(uint32(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfUint32(uint32(v)))
+		return n, nil
+	case protoreflect.Int64Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt64(int64(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt64(int64(v)))
+		return n, nil
+	case protoreflect.Sint64Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt64(protowire.DecodeZigZag(v)))
+		return n, nil
+	case protoreflect.Uint64Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeVarint(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfUint64(v))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.VarintType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeVarint(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfUint64(v))
+		return n, nil
+	case protoreflect.Sfixed32Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed32(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt32(int32(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed32Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt32(int32(v)))
+		return n, nil
+	case protoreflect.Fixed32Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed32(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfUint32(uint32(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed32Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfUint32(uint32(v)))
+		return n, nil
+	case protoreflect.FloatKind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed32(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed32Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed32(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfFloat32(math.Float32frombits(uint32(v))))
+		return n, nil
+	case protoreflect.Sfixed64Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed64(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfInt64(int64(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed64Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfInt64(int64(v)))
+		return n, nil
+	case protoreflect.Fixed64Kind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed64(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfUint64(v))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed64Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfUint64(v))
+		return n, nil
+	case protoreflect.DoubleKind:
+		if wtyp == protowire.BytesType {
+			buf, n := protowire.ConsumeBytes(b)
+			if n < 0 {
+				return 0, protowire.ParseError(n)
+			}
+			for len(buf) > 0 {
+				v, n := protowire.ConsumeFixed64(buf)
+				if n < 0 {
+					return 0, protowire.ParseError(n)
+				}
+				buf = buf[n:]
+				list.Append(protoreflect.ValueOfFloat64(math.Float64frombits(v)))
+			}
+			return n, nil
+		}
+		if wtyp != protowire.Fixed64Type {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeFixed64(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfFloat64(math.Float64frombits(v)))
+		return n, nil
+	case protoreflect.StringKind:
+		if wtyp != protowire.BytesType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		if strs.EnforceUTF8(fd) && !utf8.Valid(v) {
+			return 0, errors.InvalidUTF8(string(fd.FullName()))
+		}
+		list.Append(protoreflect.ValueOfString(string(v)))
+		return n, nil
+	case protoreflect.BytesKind:
+		if wtyp != protowire.BytesType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		list.Append(protoreflect.ValueOfBytes(append(emptyBuf[:], v...)))
+		return n, nil
+	case protoreflect.MessageKind:
+		if wtyp != protowire.BytesType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeBytes(b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		m := list.NewElement()
+		if err := o.unmarshalMessage(v, m.Message()); err != nil {
+			return 0, err
+		}
+		list.Append(m)
+		return n, nil
+	case protoreflect.GroupKind:
+		if wtyp != protowire.StartGroupType {
+			return 0, errUnknown
+		}
+		v, n := protowire.ConsumeGroup(fd.Number(), b)
+		if n < 0 {
+			return 0, protowire.ParseError(n)
+		}
+		m := list.NewElement()
+		if err := o.unmarshalMessage(v, m.Message()); err != nil {
+			return 0, err
+		}
+		list.Append(m)
+		return n, nil
+	default:
+		return 0, errUnknown
+	}
+}
+
+// We append to an empty array rather than a nil []byte to get non-nil zero-length byte slices.
+var emptyBuf [0]byte
diff --git a/vendor/google.golang.org/protobuf/proto/doc.go b/vendor/google.golang.org/protobuf/proto/doc.go
new file mode 100644
index 0000000..c52d8c4
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/doc.go
@@ -0,0 +1,94 @@
+// 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 proto provides functions operating on protocol buffer messages.
+//
+// For documentation on protocol buffers in general, see:
+//
+//   https://developers.google.com/protocol-buffers
+//
+// For a tutorial on using protocol buffers with Go, see:
+//
+//   https://developers.google.com/protocol-buffers/docs/gotutorial
+//
+// For a guide to generated Go protocol buffer code, see:
+//
+//   https://developers.google.com/protocol-buffers/docs/reference/go-generated
+//
+//
+// Binary serialization
+//
+// This package contains functions to convert to and from the wire format,
+// an efficient binary serialization of protocol buffers.
+//
+// • Size reports the size of a message in the wire format.
+//
+// • Marshal converts a message to the wire format.
+// The MarshalOptions type provides more control over wire marshaling.
+//
+// • Unmarshal converts a message from the wire format.
+// The UnmarshalOptions type provides more control over wire unmarshaling.
+//
+//
+// Basic message operations
+//
+// • Clone makes a deep copy of a message.
+//
+// • Merge merges the content of a message into another.
+//
+// • Equal compares two messages. For more control over comparisons
+// and detailed reporting of differences, see package
+// "google.golang.org/protobuf/testing/protocmp".
+//
+// • Reset clears the content of a message.
+//
+// • CheckInitialized reports whether all required fields in a message are set.
+//
+//
+// Optional scalar constructors
+//
+// The API for some generated messages represents optional scalar fields
+// as pointers to a value. For example, an optional string field has the
+// Go type *string.
+//
+// • Bool, Int32, Int64, Uint32, Uint64, Float32, Float64, and String
+// take a value and return a pointer to a new instance of it,
+// to simplify construction of optional field values.
+//
+// Generated enum types usually have an Enum method which performs the
+// same operation.
+//
+// Optional scalar fields are only supported in proto2.
+//
+//
+// Extension accessors
+//
+// • HasExtension, GetExtension, SetExtension, and ClearExtension
+// access extension field values in a protocol buffer message.
+//
+// Extension fields are only supported in proto2.
+//
+//
+// Related packages
+//
+// • Package "google.golang.org/protobuf/encoding/protojson" converts messages to
+// and from JSON.
+//
+// • Package "google.golang.org/protobuf/encoding/prototext" converts messages to
+// and from the text format.
+//
+// • Package "google.golang.org/protobuf/reflect/protoreflect" provides a
+// reflection interface for protocol buffer data types.
+//
+// • Package "google.golang.org/protobuf/testing/protocmp" provides features
+// to compare protocol buffer messages with the "github.com/google/go-cmp/cmp"
+// package.
+//
+// • Package "google.golang.org/protobuf/types/dynamicpb" provides a dynamic
+// message type, suitable for working with messages where the protocol buffer
+// type is only known at runtime.
+//
+// This module contains additional packages for more specialized use cases.
+// Consult the individual package documentation for details.
+package proto
diff --git a/vendor/google.golang.org/protobuf/proto/encode.go b/vendor/google.golang.org/protobuf/proto/encode.go
new file mode 100644
index 0000000..7b47a11
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/encode.go
@@ -0,0 +1,346 @@
+// 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 proto
+
+import (
+	"sort"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/fieldsort"
+	"google.golang.org/protobuf/internal/mapsort"
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// MarshalOptions configures the marshaler.
+//
+// Example usage:
+//   b, err := MarshalOptions{Deterministic: true}.Marshal(m)
+type MarshalOptions struct {
+	pragma.NoUnkeyedLiterals
+
+	// AllowPartial allows messages that have missing required fields to marshal
+	// without returning an error. If AllowPartial is false (the default),
+	// Marshal will return an error if there are any missing required fields.
+	AllowPartial bool
+
+	// Deterministic controls whether the same message will always be
+	// serialized to the same bytes within the same binary.
+	//
+	// Setting this option guarantees that repeated serialization of
+	// the same message will return the same bytes, and that different
+	// processes of the same binary (which may be executing on different
+	// machines) will serialize equal messages to the same bytes.
+	// It has no effect on the resulting size of the encoded message compared
+	// to a non-deterministic marshal.
+	//
+	// Note that the deterministic serialization is NOT canonical across
+	// languages. It is not guaranteed to remain stable over time. It is
+	// unstable across different builds with schema changes due to unknown
+	// fields. Users who need canonical serialization (e.g., persistent
+	// storage in a canonical form, fingerprinting, etc.) must define
+	// their own canonicalization specification and implement their own
+	// serializer rather than relying on this API.
+	//
+	// If deterministic serialization is requested, map entries will be
+	// sorted by keys in lexographical order. This is an implementation
+	// detail and subject to change.
+	Deterministic bool
+
+	// UseCachedSize indicates that the result of a previous Size call
+	// may be reused.
+	//
+	// Setting this option asserts that:
+	//
+	// 1. Size has previously been called on this message with identical
+	// options (except for UseCachedSize itself).
+	//
+	// 2. The message and all its submessages have not changed in any
+	// way since the Size call.
+	//
+	// If either of these invariants is violated,
+	// the results are undefined and may include panics or corrupted output.
+	//
+	// Implementations MAY take this option into account to provide
+	// better performance, but there is no guarantee that they will do so.
+	// There is absolutely no guarantee that Size followed by Marshal with
+	// UseCachedSize set will perform equivalently to Marshal alone.
+	UseCachedSize bool
+}
+
+// Marshal returns the wire-format encoding of m.
+func Marshal(m Message) ([]byte, error) {
+	// Treat nil message interface as an empty message; nothing to output.
+	if m == nil {
+		return nil, nil
+	}
+
+	out, err := MarshalOptions{}.marshal(nil, m.ProtoReflect())
+	if len(out.Buf) == 0 && err == nil {
+		out.Buf = emptyBytesForMessage(m)
+	}
+	return out.Buf, err
+}
+
+// Marshal returns the wire-format encoding of m.
+func (o MarshalOptions) Marshal(m Message) ([]byte, error) {
+	// Treat nil message interface as an empty message; nothing to output.
+	if m == nil {
+		return nil, nil
+	}
+
+	out, err := o.marshal(nil, m.ProtoReflect())
+	if len(out.Buf) == 0 && err == nil {
+		out.Buf = emptyBytesForMessage(m)
+	}
+	return out.Buf, err
+}
+
+// emptyBytesForMessage returns a nil buffer if and only if m is invalid,
+// otherwise it returns a non-nil empty buffer.
+//
+// This is to assist the edge-case where user-code does the following:
+//	m1.OptionalBytes, _ = proto.Marshal(m2)
+// where they expect the proto2 "optional_bytes" field to be populated
+// if any only if m2 is a valid message.
+func emptyBytesForMessage(m Message) []byte {
+	if m == nil || !m.ProtoReflect().IsValid() {
+		return nil
+	}
+	return emptyBuf[:]
+}
+
+// MarshalAppend appends the wire-format encoding of m to b,
+// returning the result.
+func (o MarshalOptions) MarshalAppend(b []byte, m Message) ([]byte, error) {
+	// Treat nil message interface as an empty message; nothing to append.
+	if m == nil {
+		return b, nil
+	}
+
+	out, err := o.marshal(b, m.ProtoReflect())
+	return out.Buf, err
+}
+
+// MarshalState returns the wire-format encoding of a message.
+//
+// This method permits fine-grained control over the marshaler.
+// Most users should use Marshal instead.
+func (o MarshalOptions) MarshalState(in protoiface.MarshalInput) (protoiface.MarshalOutput, error) {
+	return o.marshal(in.Buf, in.Message)
+}
+
+// marshal is a centralized function that all marshal operations go through.
+// For profiling purposes, avoid changing the name of this function or
+// introducing other code paths for marshal that do not go through this.
+func (o MarshalOptions) marshal(b []byte, m protoreflect.Message) (out protoiface.MarshalOutput, err error) {
+	allowPartial := o.AllowPartial
+	o.AllowPartial = true
+	if methods := protoMethods(m); methods != nil && methods.Marshal != nil &&
+		!(o.Deterministic && methods.Flags&protoiface.SupportMarshalDeterministic == 0) {
+		in := protoiface.MarshalInput{
+			Message: m,
+			Buf:     b,
+		}
+		if o.Deterministic {
+			in.Flags |= protoiface.MarshalDeterministic
+		}
+		if o.UseCachedSize {
+			in.Flags |= protoiface.MarshalUseCachedSize
+		}
+		if methods.Size != nil {
+			sout := methods.Size(protoiface.SizeInput{
+				Message: m,
+				Flags:   in.Flags,
+			})
+			if cap(b) < len(b)+sout.Size {
+				in.Buf = make([]byte, len(b), growcap(cap(b), len(b)+sout.Size))
+				copy(in.Buf, b)
+			}
+			in.Flags |= protoiface.MarshalUseCachedSize
+		}
+		out, err = methods.Marshal(in)
+	} else {
+		out.Buf, err = o.marshalMessageSlow(b, m)
+	}
+	if err != nil {
+		return out, err
+	}
+	if allowPartial {
+		return out, nil
+	}
+	return out, checkInitialized(m)
+}
+
+func (o MarshalOptions) marshalMessage(b []byte, m protoreflect.Message) ([]byte, error) {
+	out, err := o.marshal(b, m)
+	return out.Buf, err
+}
+
+// growcap scales up the capacity of a slice.
+//
+// Given a slice with a current capacity of oldcap and a desired
+// capacity of wantcap, growcap returns a new capacity >= wantcap.
+//
+// The algorithm is mostly identical to the one used by append as of Go 1.14.
+func growcap(oldcap, wantcap int) (newcap int) {
+	if wantcap > oldcap*2 {
+		newcap = wantcap
+	} else if oldcap < 1024 {
+		// The Go 1.14 runtime takes this case when len(s) < 1024,
+		// not when cap(s) < 1024. The difference doesn't seem
+		// significant here.
+		newcap = oldcap * 2
+	} else {
+		newcap = oldcap
+		for 0 < newcap && newcap < wantcap {
+			newcap += newcap / 4
+		}
+		if newcap <= 0 {
+			newcap = wantcap
+		}
+	}
+	return newcap
+}
+
+func (o MarshalOptions) marshalMessageSlow(b []byte, m protoreflect.Message) ([]byte, error) {
+	if messageset.IsMessageSet(m.Descriptor()) {
+		return o.marshalMessageSet(b, m)
+	}
+	// There are many choices for what order we visit fields in. The default one here
+	// is chosen for reasonable efficiency and simplicity given the protoreflect API.
+	// It is not deterministic, since Message.Range does not return fields in any
+	// defined order.
+	//
+	// When using deterministic serialization, we sort the known fields.
+	var err error
+	o.rangeFields(m, func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		b, err = o.marshalField(b, fd, v)
+		return err == nil
+	})
+	if err != nil {
+		return b, err
+	}
+	b = append(b, m.GetUnknown()...)
+	return b, nil
+}
+
+// rangeFields visits fields in a defined order when deterministic serialization is enabled.
+func (o MarshalOptions) rangeFields(m protoreflect.Message, f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
+	if !o.Deterministic {
+		m.Range(f)
+		return
+	}
+	var fds []protoreflect.FieldDescriptor
+	m.Range(func(fd protoreflect.FieldDescriptor, _ protoreflect.Value) bool {
+		fds = append(fds, fd)
+		return true
+	})
+	sort.Slice(fds, func(a, b int) bool {
+		return fieldsort.Less(fds[a], fds[b])
+	})
+	for _, fd := range fds {
+		if !f(fd, m.Get(fd)) {
+			break
+		}
+	}
+}
+
+func (o MarshalOptions) marshalField(b []byte, fd protoreflect.FieldDescriptor, value protoreflect.Value) ([]byte, error) {
+	switch {
+	case fd.IsList():
+		return o.marshalList(b, fd, value.List())
+	case fd.IsMap():
+		return o.marshalMap(b, fd, value.Map())
+	default:
+		b = protowire.AppendTag(b, fd.Number(), wireTypes[fd.Kind()])
+		return o.marshalSingular(b, fd, value)
+	}
+}
+
+func (o MarshalOptions) marshalList(b []byte, fd protoreflect.FieldDescriptor, list protoreflect.List) ([]byte, error) {
+	if fd.IsPacked() && list.Len() > 0 {
+		b = protowire.AppendTag(b, fd.Number(), protowire.BytesType)
+		b, pos := appendSpeculativeLength(b)
+		for i, llen := 0, list.Len(); i < llen; i++ {
+			var err error
+			b, err = o.marshalSingular(b, fd, list.Get(i))
+			if err != nil {
+				return b, err
+			}
+		}
+		b = finishSpeculativeLength(b, pos)
+		return b, nil
+	}
+
+	kind := fd.Kind()
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		var err error
+		b = protowire.AppendTag(b, fd.Number(), wireTypes[kind])
+		b, err = o.marshalSingular(b, fd, list.Get(i))
+		if err != nil {
+			return b, err
+		}
+	}
+	return b, nil
+}
+
+func (o MarshalOptions) marshalMap(b []byte, fd protoreflect.FieldDescriptor, mapv protoreflect.Map) ([]byte, error) {
+	keyf := fd.MapKey()
+	valf := fd.MapValue()
+	var err error
+	o.rangeMap(mapv, keyf.Kind(), func(key protoreflect.MapKey, value protoreflect.Value) bool {
+		b = protowire.AppendTag(b, fd.Number(), protowire.BytesType)
+		var pos int
+		b, pos = appendSpeculativeLength(b)
+
+		b, err = o.marshalField(b, keyf, key.Value())
+		if err != nil {
+			return false
+		}
+		b, err = o.marshalField(b, valf, value)
+		if err != nil {
+			return false
+		}
+		b = finishSpeculativeLength(b, pos)
+		return true
+	})
+	return b, err
+}
+
+func (o MarshalOptions) rangeMap(mapv protoreflect.Map, kind protoreflect.Kind, f func(protoreflect.MapKey, protoreflect.Value) bool) {
+	if !o.Deterministic {
+		mapv.Range(f)
+		return
+	}
+	mapsort.Range(mapv, kind, f)
+}
+
+// When encoding length-prefixed fields, we speculatively set aside some number of bytes
+// for the length, encode the data, and then encode the length (shifting the data if necessary
+// to make room).
+const speculativeLength = 1
+
+func appendSpeculativeLength(b []byte) ([]byte, int) {
+	pos := len(b)
+	b = append(b, "\x00\x00\x00\x00"[:speculativeLength]...)
+	return b, pos
+}
+
+func finishSpeculativeLength(b []byte, pos int) []byte {
+	mlen := len(b) - pos - speculativeLength
+	msiz := protowire.SizeVarint(uint64(mlen))
+	if msiz != speculativeLength {
+		for i := 0; i < msiz-speculativeLength; i++ {
+			b = append(b, 0)
+		}
+		copy(b[pos+msiz:], b[pos+speculativeLength:])
+		b = b[:pos+msiz+mlen]
+	}
+	protowire.AppendVarint(b[:pos], uint64(mlen))
+	return b
+}
diff --git a/vendor/google.golang.org/protobuf/proto/encode_gen.go b/vendor/google.golang.org/protobuf/proto/encode_gen.go
new file mode 100644
index 0000000..185dacf
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/encode_gen.go
@@ -0,0 +1,97 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package proto
+
+import (
+	"math"
+	"unicode/utf8"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/strs"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+var wireTypes = map[protoreflect.Kind]protowire.Type{
+	protoreflect.BoolKind:     protowire.VarintType,
+	protoreflect.EnumKind:     protowire.VarintType,
+	protoreflect.Int32Kind:    protowire.VarintType,
+	protoreflect.Sint32Kind:   protowire.VarintType,
+	protoreflect.Uint32Kind:   protowire.VarintType,
+	protoreflect.Int64Kind:    protowire.VarintType,
+	protoreflect.Sint64Kind:   protowire.VarintType,
+	protoreflect.Uint64Kind:   protowire.VarintType,
+	protoreflect.Sfixed32Kind: protowire.Fixed32Type,
+	protoreflect.Fixed32Kind:  protowire.Fixed32Type,
+	protoreflect.FloatKind:    protowire.Fixed32Type,
+	protoreflect.Sfixed64Kind: protowire.Fixed64Type,
+	protoreflect.Fixed64Kind:  protowire.Fixed64Type,
+	protoreflect.DoubleKind:   protowire.Fixed64Type,
+	protoreflect.StringKind:   protowire.BytesType,
+	protoreflect.BytesKind:    protowire.BytesType,
+	protoreflect.MessageKind:  protowire.BytesType,
+	protoreflect.GroupKind:    protowire.StartGroupType,
+}
+
+func (o MarshalOptions) marshalSingular(b []byte, fd protoreflect.FieldDescriptor, v protoreflect.Value) ([]byte, error) {
+	switch fd.Kind() {
+	case protoreflect.BoolKind:
+		b = protowire.AppendVarint(b, protowire.EncodeBool(v.Bool()))
+	case protoreflect.EnumKind:
+		b = protowire.AppendVarint(b, uint64(v.Enum()))
+	case protoreflect.Int32Kind:
+		b = protowire.AppendVarint(b, uint64(int32(v.Int())))
+	case protoreflect.Sint32Kind:
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(int64(int32(v.Int()))))
+	case protoreflect.Uint32Kind:
+		b = protowire.AppendVarint(b, uint64(uint32(v.Uint())))
+	case protoreflect.Int64Kind:
+		b = protowire.AppendVarint(b, uint64(v.Int()))
+	case protoreflect.Sint64Kind:
+		b = protowire.AppendVarint(b, protowire.EncodeZigZag(v.Int()))
+	case protoreflect.Uint64Kind:
+		b = protowire.AppendVarint(b, v.Uint())
+	case protoreflect.Sfixed32Kind:
+		b = protowire.AppendFixed32(b, uint32(v.Int()))
+	case protoreflect.Fixed32Kind:
+		b = protowire.AppendFixed32(b, uint32(v.Uint()))
+	case protoreflect.FloatKind:
+		b = protowire.AppendFixed32(b, math.Float32bits(float32(v.Float())))
+	case protoreflect.Sfixed64Kind:
+		b = protowire.AppendFixed64(b, uint64(v.Int()))
+	case protoreflect.Fixed64Kind:
+		b = protowire.AppendFixed64(b, v.Uint())
+	case protoreflect.DoubleKind:
+		b = protowire.AppendFixed64(b, math.Float64bits(v.Float()))
+	case protoreflect.StringKind:
+		if strs.EnforceUTF8(fd) && !utf8.ValidString(v.String()) {
+			return b, errors.InvalidUTF8(string(fd.FullName()))
+		}
+		b = protowire.AppendString(b, v.String())
+	case protoreflect.BytesKind:
+		b = protowire.AppendBytes(b, v.Bytes())
+	case protoreflect.MessageKind:
+		var pos int
+		var err error
+		b, pos = appendSpeculativeLength(b)
+		b, err = o.marshalMessage(b, v.Message())
+		if err != nil {
+			return b, err
+		}
+		b = finishSpeculativeLength(b, pos)
+	case protoreflect.GroupKind:
+		var err error
+		b, err = o.marshalMessage(b, v.Message())
+		if err != nil {
+			return b, err
+		}
+		b = protowire.AppendVarint(b, protowire.EncodeTag(fd.Number(), protowire.EndGroupType))
+	default:
+		return b, errors.New("invalid kind %v", fd.Kind())
+	}
+	return b, nil
+}
diff --git a/vendor/google.golang.org/protobuf/proto/equal.go b/vendor/google.golang.org/protobuf/proto/equal.go
new file mode 100644
index 0000000..10902bd
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/equal.go
@@ -0,0 +1,154 @@
+// 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 proto
+
+import (
+	"bytes"
+	"math"
+	"reflect"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	pref "google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Equal reports whether two messages are equal.
+// If two messages marshal to the same bytes under deterministic serialization,
+// then Equal is guaranteed to report true.
+//
+// Two messages are equal if they belong to the same message descriptor,
+// have the same set of populated known and extension field values,
+// and the same set of unknown fields values. If either of the top-level
+// messages are invalid, then Equal reports true only if both are invalid.
+//
+// Scalar values are compared with the equivalent of the == operator in Go,
+// except bytes values which are compared using bytes.Equal and
+// floating point values which specially treat NaNs as equal.
+// Message values are compared by recursively calling Equal.
+// Lists are equal if each element value is also equal.
+// Maps are equal if they have the same set of keys, where the pair of values
+// for each key is also equal.
+func Equal(x, y Message) bool {
+	if x == nil || y == nil {
+		return x == nil && y == nil
+	}
+	mx := x.ProtoReflect()
+	my := y.ProtoReflect()
+	if mx.IsValid() != my.IsValid() {
+		return false
+	}
+	return equalMessage(mx, my)
+}
+
+// equalMessage compares two messages.
+func equalMessage(mx, my pref.Message) bool {
+	if mx.Descriptor() != my.Descriptor() {
+		return false
+	}
+
+	nx := 0
+	equal := true
+	mx.Range(func(fd pref.FieldDescriptor, vx pref.Value) bool {
+		nx++
+		vy := my.Get(fd)
+		equal = my.Has(fd) && equalField(fd, vx, vy)
+		return equal
+	})
+	if !equal {
+		return false
+	}
+	ny := 0
+	my.Range(func(fd pref.FieldDescriptor, vx pref.Value) bool {
+		ny++
+		return true
+	})
+	if nx != ny {
+		return false
+	}
+
+	return equalUnknown(mx.GetUnknown(), my.GetUnknown())
+}
+
+// equalField compares two fields.
+func equalField(fd pref.FieldDescriptor, x, y pref.Value) bool {
+	switch {
+	case fd.IsList():
+		return equalList(fd, x.List(), y.List())
+	case fd.IsMap():
+		return equalMap(fd, x.Map(), y.Map())
+	default:
+		return equalValue(fd, x, y)
+	}
+}
+
+// equalMap compares two maps.
+func equalMap(fd pref.FieldDescriptor, x, y pref.Map) bool {
+	if x.Len() != y.Len() {
+		return false
+	}
+	equal := true
+	x.Range(func(k pref.MapKey, vx pref.Value) bool {
+		vy := y.Get(k)
+		equal = y.Has(k) && equalValue(fd.MapValue(), vx, vy)
+		return equal
+	})
+	return equal
+}
+
+// equalList compares two lists.
+func equalList(fd pref.FieldDescriptor, x, y pref.List) bool {
+	if x.Len() != y.Len() {
+		return false
+	}
+	for i := x.Len() - 1; i >= 0; i-- {
+		if !equalValue(fd, x.Get(i), y.Get(i)) {
+			return false
+		}
+	}
+	return true
+}
+
+// equalValue compares two singular values.
+func equalValue(fd pref.FieldDescriptor, x, y pref.Value) bool {
+	switch {
+	case fd.Message() != nil:
+		return equalMessage(x.Message(), y.Message())
+	case fd.Kind() == pref.BytesKind:
+		return bytes.Equal(x.Bytes(), y.Bytes())
+	case fd.Kind() == pref.FloatKind, fd.Kind() == pref.DoubleKind:
+		fx := x.Float()
+		fy := y.Float()
+		if math.IsNaN(fx) || math.IsNaN(fy) {
+			return math.IsNaN(fx) && math.IsNaN(fy)
+		}
+		return fx == fy
+	default:
+		return x.Interface() == y.Interface()
+	}
+}
+
+// equalUnknown compares unknown fields by direct comparison on the raw bytes
+// of each individual field number.
+func equalUnknown(x, y pref.RawFields) bool {
+	if len(x) != len(y) {
+		return false
+	}
+	if bytes.Equal([]byte(x), []byte(y)) {
+		return true
+	}
+
+	mx := make(map[pref.FieldNumber]pref.RawFields)
+	my := make(map[pref.FieldNumber]pref.RawFields)
+	for len(x) > 0 {
+		fnum, _, n := protowire.ConsumeField(x)
+		mx[fnum] = append(mx[fnum], x[:n]...)
+		x = x[n:]
+	}
+	for len(y) > 0 {
+		fnum, _, n := protowire.ConsumeField(y)
+		my[fnum] = append(my[fnum], y[:n]...)
+		y = y[n:]
+	}
+	return reflect.DeepEqual(mx, my)
+}
diff --git a/vendor/google.golang.org/protobuf/proto/extension.go b/vendor/google.golang.org/protobuf/proto/extension.go
new file mode 100644
index 0000000..5f293cd
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/extension.go
@@ -0,0 +1,92 @@
+// 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 proto
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// HasExtension reports whether an extension field is populated.
+// It returns false if m is invalid or if xt does not extend m.
+func HasExtension(m Message, xt protoreflect.ExtensionType) bool {
+	// Treat nil message interface as an empty message; no populated fields.
+	if m == nil {
+		return false
+	}
+
+	// As a special-case, we reports invalid or mismatching descriptors
+	// as always not being populated (since they aren't).
+	if xt == nil || m.ProtoReflect().Descriptor() != xt.TypeDescriptor().ContainingMessage() {
+		return false
+	}
+
+	return m.ProtoReflect().Has(xt.TypeDescriptor())
+}
+
+// ClearExtension clears an extension field such that subsequent
+// HasExtension calls return false.
+// It panics if m is invalid or if xt does not extend m.
+func ClearExtension(m Message, xt protoreflect.ExtensionType) {
+	m.ProtoReflect().Clear(xt.TypeDescriptor())
+}
+
+// GetExtension retrieves the value for an extension field.
+// If the field is unpopulated, it returns the default value for
+// scalars and an immutable, empty value for lists or messages.
+// It panics if xt does not extend m.
+func GetExtension(m Message, xt protoreflect.ExtensionType) interface{} {
+	// Treat nil message interface as an empty message; return the default.
+	if m == nil {
+		return xt.InterfaceOf(xt.Zero())
+	}
+
+	return xt.InterfaceOf(m.ProtoReflect().Get(xt.TypeDescriptor()))
+}
+
+// SetExtension stores the value of an extension field.
+// It panics if m is invalid, xt does not extend m, or if type of v
+// is invalid for the specified extension field.
+func SetExtension(m Message, xt protoreflect.ExtensionType, v interface{}) {
+	xd := xt.TypeDescriptor()
+	pv := xt.ValueOf(v)
+
+	// Specially treat an invalid list, map, or message as clear.
+	isValid := true
+	switch {
+	case xd.IsList():
+		isValid = pv.List().IsValid()
+	case xd.IsMap():
+		isValid = pv.Map().IsValid()
+	case xd.Message() != nil:
+		isValid = pv.Message().IsValid()
+	}
+	if !isValid {
+		m.ProtoReflect().Clear(xd)
+		return
+	}
+
+	m.ProtoReflect().Set(xd, pv)
+}
+
+// RangeExtensions iterates over every populated extension field in m in an
+// undefined order, calling f for each extension type and value encountered.
+// It returns immediately if f returns false.
+// While iterating, mutating operations may only be performed
+// on the current extension field.
+func RangeExtensions(m Message, f func(protoreflect.ExtensionType, interface{}) bool) {
+	// Treat nil message interface as an empty message; nothing to range over.
+	if m == nil {
+		return
+	}
+
+	m.ProtoReflect().Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		if fd.IsExtension() {
+			xt := fd.(protoreflect.ExtensionTypeDescriptor).Type()
+			vi := xt.InterfaceOf(v)
+			return f(xt, vi)
+		}
+		return true
+	})
+}
diff --git a/vendor/google.golang.org/protobuf/proto/merge.go b/vendor/google.golang.org/protobuf/proto/merge.go
new file mode 100644
index 0000000..d761ab3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/merge.go
@@ -0,0 +1,139 @@
+// 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 proto
+
+import (
+	"fmt"
+
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// Merge merges src into dst, which must be a message with the same descriptor.
+//
+// Populated scalar fields in src are copied to dst, while populated
+// singular messages in src are merged into dst by recursively calling Merge.
+// The elements of every list field in src is appended to the corresponded
+// list fields in dst. The entries of every map field in src is copied into
+// the corresponding map field in dst, possibly replacing existing entries.
+// The unknown fields of src are appended to the unknown fields of dst.
+//
+// It is semantically equivalent to unmarshaling the encoded form of src
+// into dst with the UnmarshalOptions.Merge option specified.
+func Merge(dst, src Message) {
+	// TODO: Should nil src be treated as semantically equivalent to a
+	// untyped, read-only, empty message? What about a nil dst?
+
+	dstMsg, srcMsg := dst.ProtoReflect(), src.ProtoReflect()
+	if dstMsg.Descriptor() != srcMsg.Descriptor() {
+		if got, want := dstMsg.Descriptor().FullName(), srcMsg.Descriptor().FullName(); got != want {
+			panic(fmt.Sprintf("descriptor mismatch: %v != %v", got, want))
+		}
+		panic("descriptor mismatch")
+	}
+	mergeOptions{}.mergeMessage(dstMsg, srcMsg)
+}
+
+// Clone returns a deep copy of m.
+// If the top-level message is invalid, it returns an invalid message as well.
+func Clone(m Message) Message {
+	// NOTE: Most usages of Clone assume the following properties:
+	//	t := reflect.TypeOf(m)
+	//	t == reflect.TypeOf(m.ProtoReflect().New().Interface())
+	//	t == reflect.TypeOf(m.ProtoReflect().Type().Zero().Interface())
+	//
+	// Embedding protobuf messages breaks this since the parent type will have
+	// a forwarded ProtoReflect method, but the Interface method will return
+	// the underlying embedded message type.
+	if m == nil {
+		return nil
+	}
+	src := m.ProtoReflect()
+	if !src.IsValid() {
+		return src.Type().Zero().Interface()
+	}
+	dst := src.New()
+	mergeOptions{}.mergeMessage(dst, src)
+	return dst.Interface()
+}
+
+// mergeOptions provides a namespace for merge functions, and can be
+// exported in the future if we add user-visible merge options.
+type mergeOptions struct{}
+
+func (o mergeOptions) mergeMessage(dst, src protoreflect.Message) {
+	methods := protoMethods(dst)
+	if methods != nil && methods.Merge != nil {
+		in := protoiface.MergeInput{
+			Destination: dst,
+			Source:      src,
+		}
+		out := methods.Merge(in)
+		if out.Flags&protoiface.MergeComplete != 0 {
+			return
+		}
+	}
+
+	if !dst.IsValid() {
+		panic(fmt.Sprintf("cannot merge into invalid %v message", dst.Descriptor().FullName()))
+	}
+
+	src.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		switch {
+		case fd.IsList():
+			o.mergeList(dst.Mutable(fd).List(), v.List(), fd)
+		case fd.IsMap():
+			o.mergeMap(dst.Mutable(fd).Map(), v.Map(), fd.MapValue())
+		case fd.Message() != nil:
+			o.mergeMessage(dst.Mutable(fd).Message(), v.Message())
+		case fd.Kind() == protoreflect.BytesKind:
+			dst.Set(fd, o.cloneBytes(v))
+		default:
+			dst.Set(fd, v)
+		}
+		return true
+	})
+
+	if len(src.GetUnknown()) > 0 {
+		dst.SetUnknown(append(dst.GetUnknown(), src.GetUnknown()...))
+	}
+}
+
+func (o mergeOptions) mergeList(dst, src protoreflect.List, fd protoreflect.FieldDescriptor) {
+	// Merge semantics appends to the end of the existing list.
+	for i, n := 0, src.Len(); i < n; i++ {
+		switch v := src.Get(i); {
+		case fd.Message() != nil:
+			dstv := dst.NewElement()
+			o.mergeMessage(dstv.Message(), v.Message())
+			dst.Append(dstv)
+		case fd.Kind() == protoreflect.BytesKind:
+			dst.Append(o.cloneBytes(v))
+		default:
+			dst.Append(v)
+		}
+	}
+}
+
+func (o mergeOptions) mergeMap(dst, src protoreflect.Map, fd protoreflect.FieldDescriptor) {
+	// Merge semantics replaces, rather than merges into existing entries.
+	src.Range(func(k protoreflect.MapKey, v protoreflect.Value) bool {
+		switch {
+		case fd.Message() != nil:
+			dstv := dst.NewValue()
+			o.mergeMessage(dstv.Message(), v.Message())
+			dst.Set(k, dstv)
+		case fd.Kind() == protoreflect.BytesKind:
+			dst.Set(k, o.cloneBytes(v))
+		default:
+			dst.Set(k, v)
+		}
+		return true
+	})
+}
+
+func (o mergeOptions) cloneBytes(v protoreflect.Value) protoreflect.Value {
+	return protoreflect.ValueOfBytes(append([]byte{}, v.Bytes()...))
+}
diff --git a/vendor/google.golang.org/protobuf/proto/messageset.go b/vendor/google.golang.org/protobuf/proto/messageset.go
new file mode 100644
index 0000000..1d692c3
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/messageset.go
@@ -0,0 +1,88 @@
+// 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 proto
+
+import (
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/internal/flags"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/reflect/protoregistry"
+)
+
+func (o MarshalOptions) sizeMessageSet(m protoreflect.Message) (size int) {
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		size += messageset.SizeField(fd.Number())
+		size += protowire.SizeTag(messageset.FieldMessage)
+		size += protowire.SizeBytes(o.size(v.Message()))
+		return true
+	})
+	size += messageset.SizeUnknown(m.GetUnknown())
+	return size
+}
+
+func (o MarshalOptions) marshalMessageSet(b []byte, m protoreflect.Message) ([]byte, error) {
+	if !flags.ProtoLegacy {
+		return b, errors.New("no support for message_set_wire_format")
+	}
+	var err error
+	o.rangeFields(m, func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		b, err = o.marshalMessageSetField(b, fd, v)
+		return err == nil
+	})
+	if err != nil {
+		return b, err
+	}
+	return messageset.AppendUnknown(b, m.GetUnknown())
+}
+
+func (o MarshalOptions) marshalMessageSetField(b []byte, fd protoreflect.FieldDescriptor, value protoreflect.Value) ([]byte, error) {
+	b = messageset.AppendFieldStart(b, fd.Number())
+	b = protowire.AppendTag(b, messageset.FieldMessage, protowire.BytesType)
+	b = protowire.AppendVarint(b, uint64(o.Size(value.Message().Interface())))
+	b, err := o.marshalMessage(b, value.Message())
+	if err != nil {
+		return b, err
+	}
+	b = messageset.AppendFieldEnd(b)
+	return b, nil
+}
+
+func (o UnmarshalOptions) unmarshalMessageSet(b []byte, m protoreflect.Message) error {
+	if !flags.ProtoLegacy {
+		return errors.New("no support for message_set_wire_format")
+	}
+	return messageset.Unmarshal(b, false, func(num protowire.Number, v []byte) error {
+		err := o.unmarshalMessageSetField(m, num, v)
+		if err == errUnknown {
+			unknown := m.GetUnknown()
+			unknown = protowire.AppendTag(unknown, num, protowire.BytesType)
+			unknown = protowire.AppendBytes(unknown, v)
+			m.SetUnknown(unknown)
+			return nil
+		}
+		return err
+	})
+}
+
+func (o UnmarshalOptions) unmarshalMessageSetField(m protoreflect.Message, num protowire.Number, v []byte) error {
+	md := m.Descriptor()
+	if !md.ExtensionRanges().Has(num) {
+		return errUnknown
+	}
+	xt, err := o.Resolver.FindExtensionByNumber(md.FullName(), num)
+	if err == protoregistry.NotFound {
+		return errUnknown
+	}
+	if err != nil {
+		return errors.New("%v: unable to resolve extension %v: %v", md.FullName(), num, err)
+	}
+	xd := xt.TypeDescriptor()
+	if err := o.unmarshalMessage(v, m.Mutable(xd).Message()); err != nil {
+		return err
+	}
+	return nil
+}
diff --git a/vendor/google.golang.org/protobuf/proto/proto.go b/vendor/google.golang.org/protobuf/proto/proto.go
new file mode 100644
index 0000000..ca14b09
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/proto.go
@@ -0,0 +1,34 @@
+// 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.
+
+package proto
+
+import (
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Message is the top-level interface that all messages must implement.
+// It provides access to a reflective view of a message.
+// Any implementation of this interface may be used with all functions in the
+// protobuf module that accept a Message, except where otherwise specified.
+//
+// This is the v2 interface definition for protobuf messages.
+// The v1 interface definition is "github.com/golang/protobuf/proto".Message.
+//
+// To convert a v1 message to a v2 message,
+// use "github.com/golang/protobuf/proto".MessageV2.
+// To convert a v2 message to a v1 message,
+// use "github.com/golang/protobuf/proto".MessageV1.
+type Message = protoreflect.ProtoMessage
+
+// Error matches all errors produced by packages in the protobuf module.
+//
+// That is, errors.Is(err, Error) reports whether an error is produced
+// by this module.
+var Error error
+
+func init() {
+	Error = errors.Error
+}
diff --git a/vendor/google.golang.org/protobuf/proto/proto_methods.go b/vendor/google.golang.org/protobuf/proto/proto_methods.go
new file mode 100644
index 0000000..d8dd604
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/proto_methods.go
@@ -0,0 +1,19 @@
+// 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.
+
+// The protoreflect build tag disables use of fast-path methods.
+// +build !protoreflect
+
+package proto
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+const hasProtoMethods = true
+
+func protoMethods(m protoreflect.Message) *protoiface.Methods {
+	return m.ProtoMethods()
+}
diff --git a/vendor/google.golang.org/protobuf/proto/proto_reflect.go b/vendor/google.golang.org/protobuf/proto/proto_reflect.go
new file mode 100644
index 0000000..b103d43
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/proto_reflect.go
@@ -0,0 +1,19 @@
+// 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.
+
+// The protoreflect build tag disables use of fast-path methods.
+// +build protoreflect
+
+package proto
+
+import (
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+const hasProtoMethods = false
+
+func protoMethods(m protoreflect.Message) *protoiface.Methods {
+	return nil
+}
diff --git a/vendor/google.golang.org/protobuf/proto/reset.go b/vendor/google.golang.org/protobuf/proto/reset.go
new file mode 100644
index 0000000..3d7f894
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/reset.go
@@ -0,0 +1,43 @@
+// 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 proto
+
+import (
+	"fmt"
+
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Reset clears every field in the message.
+// The resulting message shares no observable memory with its previous state
+// other than the memory for the message itself.
+func Reset(m Message) {
+	if mr, ok := m.(interface{ Reset() }); ok && hasProtoMethods {
+		mr.Reset()
+		return
+	}
+	resetMessage(m.ProtoReflect())
+}
+
+func resetMessage(m protoreflect.Message) {
+	if !m.IsValid() {
+		panic(fmt.Sprintf("cannot reset invalid %v message", m.Descriptor().FullName()))
+	}
+
+	// Clear all known fields.
+	fds := m.Descriptor().Fields()
+	for i := 0; i < fds.Len(); i++ {
+		m.Clear(fds.Get(i))
+	}
+
+	// Clear extension fields.
+	m.Range(func(fd protoreflect.FieldDescriptor, _ protoreflect.Value) bool {
+		m.Clear(fd)
+		return true
+	})
+
+	// Clear unknown fields.
+	m.SetUnknown(nil)
+}
diff --git a/vendor/google.golang.org/protobuf/proto/size.go b/vendor/google.golang.org/protobuf/proto/size.go
new file mode 100644
index 0000000..554b9c6
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/size.go
@@ -0,0 +1,97 @@
+// 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 proto
+
+import (
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/encoding/messageset"
+	"google.golang.org/protobuf/reflect/protoreflect"
+	"google.golang.org/protobuf/runtime/protoiface"
+)
+
+// Size returns the size in bytes of the wire-format encoding of m.
+func Size(m Message) int {
+	return MarshalOptions{}.Size(m)
+}
+
+// Size returns the size in bytes of the wire-format encoding of m.
+func (o MarshalOptions) Size(m Message) int {
+	// Treat a nil message interface as an empty message; nothing to output.
+	if m == nil {
+		return 0
+	}
+
+	return o.size(m.ProtoReflect())
+}
+
+// size is a centralized function that all size operations go through.
+// For profiling purposes, avoid changing the name of this function or
+// introducing other code paths for size that do not go through this.
+func (o MarshalOptions) size(m protoreflect.Message) (size int) {
+	methods := protoMethods(m)
+	if methods != nil && methods.Size != nil {
+		out := methods.Size(protoiface.SizeInput{
+			Message: m,
+		})
+		return out.Size
+	}
+	if methods != nil && methods.Marshal != nil {
+		// This is not efficient, but we don't have any choice.
+		// This case is mainly used for legacy types with a Marshal method.
+		out, _ := methods.Marshal(protoiface.MarshalInput{
+			Message: m,
+		})
+		return len(out.Buf)
+	}
+	return o.sizeMessageSlow(m)
+}
+
+func (o MarshalOptions) sizeMessageSlow(m protoreflect.Message) (size int) {
+	if messageset.IsMessageSet(m.Descriptor()) {
+		return o.sizeMessageSet(m)
+	}
+	m.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
+		size += o.sizeField(fd, v)
+		return true
+	})
+	size += len(m.GetUnknown())
+	return size
+}
+
+func (o MarshalOptions) sizeField(fd protoreflect.FieldDescriptor, value protoreflect.Value) (size int) {
+	num := fd.Number()
+	switch {
+	case fd.IsList():
+		return o.sizeList(num, fd, value.List())
+	case fd.IsMap():
+		return o.sizeMap(num, fd, value.Map())
+	default:
+		return protowire.SizeTag(num) + o.sizeSingular(num, fd.Kind(), value)
+	}
+}
+
+func (o MarshalOptions) sizeList(num protowire.Number, fd protoreflect.FieldDescriptor, list protoreflect.List) (size int) {
+	if fd.IsPacked() && list.Len() > 0 {
+		content := 0
+		for i, llen := 0, list.Len(); i < llen; i++ {
+			content += o.sizeSingular(num, fd.Kind(), list.Get(i))
+		}
+		return protowire.SizeTag(num) + protowire.SizeBytes(content)
+	}
+
+	for i, llen := 0, list.Len(); i < llen; i++ {
+		size += protowire.SizeTag(num) + o.sizeSingular(num, fd.Kind(), list.Get(i))
+	}
+	return size
+}
+
+func (o MarshalOptions) sizeMap(num protowire.Number, fd protoreflect.FieldDescriptor, mapv protoreflect.Map) (size int) {
+	mapv.Range(func(key protoreflect.MapKey, value protoreflect.Value) bool {
+		size += protowire.SizeTag(num)
+		size += protowire.SizeBytes(o.sizeField(fd.MapKey(), key.Value()) + o.sizeField(fd.MapValue(), value))
+		return true
+	})
+	return size
+}
diff --git a/vendor/google.golang.org/protobuf/proto/size_gen.go b/vendor/google.golang.org/protobuf/proto/size_gen.go
new file mode 100644
index 0000000..3cf61a8
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/size_gen.go
@@ -0,0 +1,55 @@
+// 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.
+
+// Code generated by generate-types. DO NOT EDIT.
+
+package proto
+
+import (
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+func (o MarshalOptions) sizeSingular(num protowire.Number, kind protoreflect.Kind, v protoreflect.Value) int {
+	switch kind {
+	case protoreflect.BoolKind:
+		return protowire.SizeVarint(protowire.EncodeBool(v.Bool()))
+	case protoreflect.EnumKind:
+		return protowire.SizeVarint(uint64(v.Enum()))
+	case protoreflect.Int32Kind:
+		return protowire.SizeVarint(uint64(int32(v.Int())))
+	case protoreflect.Sint32Kind:
+		return protowire.SizeVarint(protowire.EncodeZigZag(int64(int32(v.Int()))))
+	case protoreflect.Uint32Kind:
+		return protowire.SizeVarint(uint64(uint32(v.Uint())))
+	case protoreflect.Int64Kind:
+		return protowire.SizeVarint(uint64(v.Int()))
+	case protoreflect.Sint64Kind:
+		return protowire.SizeVarint(protowire.EncodeZigZag(v.Int()))
+	case protoreflect.Uint64Kind:
+		return protowire.SizeVarint(v.Uint())
+	case protoreflect.Sfixed32Kind:
+		return protowire.SizeFixed32()
+	case protoreflect.Fixed32Kind:
+		return protowire.SizeFixed32()
+	case protoreflect.FloatKind:
+		return protowire.SizeFixed32()
+	case protoreflect.Sfixed64Kind:
+		return protowire.SizeFixed64()
+	case protoreflect.Fixed64Kind:
+		return protowire.SizeFixed64()
+	case protoreflect.DoubleKind:
+		return protowire.SizeFixed64()
+	case protoreflect.StringKind:
+		return protowire.SizeBytes(len(v.String()))
+	case protoreflect.BytesKind:
+		return protowire.SizeBytes(len(v.Bytes()))
+	case protoreflect.MessageKind:
+		return protowire.SizeBytes(o.size(v.Message()))
+	case protoreflect.GroupKind:
+		return protowire.SizeGroup(num, o.size(v.Message()))
+	default:
+		return 0
+	}
+}
diff --git a/vendor/google.golang.org/protobuf/proto/wrappers.go b/vendor/google.golang.org/protobuf/proto/wrappers.go
new file mode 100644
index 0000000..653b12c
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/proto/wrappers.go
@@ -0,0 +1,29 @@
+// 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 proto
+
+// Bool stores v in a new bool value and returns a pointer to it.
+func Bool(v bool) *bool { return &v }
+
+// Int32 stores v in a new int32 value and returns a pointer to it.
+func Int32(v int32) *int32 { return &v }
+
+// Int64 stores v in a new int64 value and returns a pointer to it.
+func Int64(v int64) *int64 { return &v }
+
+// Float32 stores v in a new float32 value and returns a pointer to it.
+func Float32(v float32) *float32 { return &v }
+
+// Float64 stores v in a new float64 value and returns a pointer to it.
+func Float64(v float64) *float64 { return &v }
+
+// Uint32 stores v in a new uint32 value and returns a pointer to it.
+func Uint32(v uint32) *uint32 { return &v }
+
+// Uint64 stores v in a new uint64 value and returns a pointer to it.
+func Uint64(v uint64) *uint64 { return &v }
+
+// String stores v in a new string value and returns a pointer to it.
+func String(v string) *string { return &v }
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go
new file mode 100644
index 0000000..6be5d16
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go
@@ -0,0 +1,77 @@
+// 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 protoreflect
+
+import (
+	"google.golang.org/protobuf/internal/pragma"
+)
+
+// The following types are used by the fast-path Message.ProtoMethods method.
+//
+// To avoid polluting the public protoreflect API with types used only by
+// low-level implementations, the canonical definitions of these types are
+// in the runtime/protoiface package. The definitions here and in protoiface
+// must be kept in sync.
+type (
+	methods = struct {
+		pragma.NoUnkeyedLiterals
+		Flags            supportFlags
+		Size             func(sizeInput) sizeOutput
+		Marshal          func(marshalInput) (marshalOutput, error)
+		Unmarshal        func(unmarshalInput) (unmarshalOutput, error)
+		Merge            func(mergeInput) mergeOutput
+		CheckInitialized func(checkInitializedInput) (checkInitializedOutput, error)
+	}
+	supportFlags = uint64
+	sizeInput    = struct {
+		pragma.NoUnkeyedLiterals
+		Message Message
+		Flags   uint8
+	}
+	sizeOutput = struct {
+		pragma.NoUnkeyedLiterals
+		Size int
+	}
+	marshalInput = struct {
+		pragma.NoUnkeyedLiterals
+		Message Message
+		Buf     []byte
+		Flags   uint8
+	}
+	marshalOutput = struct {
+		pragma.NoUnkeyedLiterals
+		Buf []byte
+	}
+	unmarshalInput = struct {
+		pragma.NoUnkeyedLiterals
+		Message  Message
+		Buf      []byte
+		Flags    uint8
+		Resolver interface {
+			FindExtensionByName(field FullName) (ExtensionType, error)
+			FindExtensionByNumber(message FullName, field FieldNumber) (ExtensionType, error)
+		}
+	}
+	unmarshalOutput = struct {
+		pragma.NoUnkeyedLiterals
+		Flags uint8
+	}
+	mergeInput = struct {
+		pragma.NoUnkeyedLiterals
+		Source      Message
+		Destination Message
+	}
+	mergeOutput = struct {
+		pragma.NoUnkeyedLiterals
+		Flags uint8
+	}
+	checkInitializedInput = struct {
+		pragma.NoUnkeyedLiterals
+		Message Message
+	}
+	checkInitializedOutput = struct {
+		pragma.NoUnkeyedLiterals
+	}
+)
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go
new file mode 100644
index 0000000..dd85915
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go
@@ -0,0 +1,504 @@
+// 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.
+
+// Package protoreflect provides interfaces to dynamically manipulate messages.
+//
+// This package includes type descriptors which describe the structure of types
+// defined in proto source files and value interfaces which provide the
+// ability to examine and manipulate the contents of messages.
+//
+//
+// Protocol Buffer Descriptors
+//
+// Protobuf descriptors (e.g., EnumDescriptor or MessageDescriptor)
+// are immutable objects that represent protobuf type information.
+// They are wrappers around the messages declared in descriptor.proto.
+// Protobuf descriptors alone lack any information regarding Go types.
+//
+// Enums and messages generated by this module implement Enum and ProtoMessage,
+// where the Descriptor and ProtoReflect.Descriptor accessors respectively
+// return the protobuf descriptor for the values.
+//
+// The protobuf descriptor interfaces are not meant to be implemented by
+// user code since they might need to be extended in the future to support
+// additions to the protobuf language.
+// The "google.golang.org/protobuf/reflect/protodesc" package converts between
+// google.protobuf.DescriptorProto messages and protobuf descriptors.
+//
+//
+// Go Type Descriptors
+//
+// A type descriptor (e.g., EnumType or MessageType) is a constructor for
+// a concrete Go type that represents the associated protobuf descriptor.
+// There is commonly a one-to-one relationship between protobuf descriptors and
+// Go type descriptors, but it can potentially be a one-to-many relationship.
+//
+// Enums and messages generated by this module implement Enum and ProtoMessage,
+// where the Type and ProtoReflect.Type accessors respectively
+// return the protobuf descriptor for the values.
+//
+// The "google.golang.org/protobuf/types/dynamicpb" package can be used to
+// create Go type descriptors from protobuf descriptors.
+//
+//
+// Value Interfaces
+//
+// The Enum and Message interfaces provide a reflective view over an
+// enum or message instance. For enums, it provides the ability to retrieve
+// the enum value number for any concrete enum type. For messages, it provides
+// the ability to access or manipulate fields of the message.
+//
+// To convert a proto.Message to a protoreflect.Message, use the
+// former's ProtoReflect method. Since the ProtoReflect method is new to the
+// v2 message interface, it may not be present on older message implementations.
+// The "github.com/golang/protobuf/proto".MessageReflect function can be used
+// to obtain a reflective view on older messages.
+//
+//
+// Relationships
+//
+// The following diagrams demonstrate the relationships between
+// various types declared in this package.
+//
+//
+//	                       ┌───────────────────────────────────┐
+//	                       V                                   │
+//	   ┌────────────── New(n) ─────────────┐                   │
+//	   │                                   │                   │
+//	   │      ┌──── Descriptor() ──┐       │  ┌── Number() ──┐ │
+//	   │      │                    V       V  │              V │
+//	╔════════════╗  ╔════════════════╗  ╔════════╗  ╔════════════╗
+//	║  EnumType  ║  ║ EnumDescriptor ║  ║  Enum  ║  ║ EnumNumber ║
+//	╚════════════╝  ╚════════════════╝  ╚════════╝  ╚════════════╝
+//	      Λ           Λ                   │ │
+//	      │           └─── Descriptor() ──┘ │
+//	      │                                 │
+//	      └────────────────── Type() ───────┘
+//
+// • An EnumType describes a concrete Go enum type.
+// It has an EnumDescriptor and can construct an Enum instance.
+//
+// • An EnumDescriptor describes an abstract protobuf enum type.
+//
+// • An Enum is a concrete enum instance. Generated enums implement Enum.
+//
+//
+//	  ┌──────────────── New() ─────────────────┐
+//	  │                                        │
+//	  │         ┌─── Descriptor() ─────┐       │   ┌── Interface() ───┐
+//	  │         │                      V       V   │                  V
+//	╔═════════════╗  ╔═══════════════════╗  ╔═════════╗  ╔══════════════╗
+//	║ MessageType ║  ║ MessageDescriptor ║  ║ Message ║  ║ ProtoMessage ║
+//	╚═════════════╝  ╚═══════════════════╝  ╚═════════╝  ╚══════════════╝
+//	       Λ           Λ                      │ │  Λ                  │
+//	       │           └──── Descriptor() ────┘ │  └─ ProtoReflect() ─┘
+//	       │                                    │
+//	       └─────────────────── Type() ─────────┘
+//
+// • A MessageType describes a concrete Go message type.
+// It has a MessageDescriptor and can construct a Message instance.
+//
+// • A MessageDescriptor describes an abstract protobuf message type.
+//
+// • A Message is a concrete message instance. Generated messages implement
+// ProtoMessage, which can convert to/from a Message.
+//
+//
+//	      ┌── TypeDescriptor() ──┐    ┌───── Descriptor() ─────┐
+//	      │                      V    │                        V
+//	╔═══════════════╗  ╔═════════════════════════╗  ╔═════════════════════╗
+//	║ ExtensionType ║  ║ ExtensionTypeDescriptor ║  ║ ExtensionDescriptor ║
+//	╚═══════════════╝  ╚═════════════════════════╝  ╚═════════════════════╝
+//	      Λ                      │   │ Λ                      │ Λ
+//	      └─────── Type() ───────┘   │ └─── may implement ────┘ │
+//	                                 │                          │
+//	                                 └────── implements ────────┘
+//
+// • An ExtensionType describes a concrete Go implementation of an extension.
+// It has an ExtensionTypeDescriptor and can convert to/from
+// abstract Values and Go values.
+//
+// • An ExtensionTypeDescriptor is an ExtensionDescriptor
+// which also has an ExtensionType.
+//
+// • An ExtensionDescriptor describes an abstract protobuf extension field and
+// may not always be an ExtensionTypeDescriptor.
+package protoreflect
+
+import (
+	"fmt"
+	"strings"
+
+	"google.golang.org/protobuf/encoding/protowire"
+	"google.golang.org/protobuf/internal/pragma"
+)
+
+type doNotImplement pragma.DoNotImplement
+
+// ProtoMessage is the top-level interface that all proto messages implement.
+// This is declared in the protoreflect package to avoid a cyclic dependency;
+// use the proto.Message type instead, which aliases this type.
+type ProtoMessage interface{ ProtoReflect() Message }
+
+// Syntax is the language version of the proto file.
+type Syntax syntax
+
+type syntax int8 // keep exact type opaque as the int type may change
+
+const (
+	Proto2 Syntax = 2
+	Proto3 Syntax = 3
+)
+
+// IsValid reports whether the syntax is valid.
+func (s Syntax) IsValid() bool {
+	switch s {
+	case Proto2, Proto3:
+		return true
+	default:
+		return false
+	}
+}
+
+// String returns s as a proto source identifier (e.g., "proto2").
+func (s Syntax) String() string {
+	switch s {
+	case Proto2:
+		return "proto2"
+	case Proto3:
+		return "proto3"
+	default:
+		return fmt.Sprintf("<unknown:%d>", s)
+	}
+}
+
+// GoString returns s as a Go source identifier (e.g., "Proto2").
+func (s Syntax) GoString() string {
+	switch s {
+	case Proto2:
+		return "Proto2"
+	case Proto3:
+		return "Proto3"
+	default:
+		return fmt.Sprintf("Syntax(%d)", s)
+	}
+}
+
+// Cardinality determines whether a field is optional, required, or repeated.
+type Cardinality cardinality
+
+type cardinality int8 // keep exact type opaque as the int type may change
+
+// Constants as defined by the google.protobuf.Cardinality enumeration.
+const (
+	Optional Cardinality = 1 // appears zero or one times
+	Required Cardinality = 2 // appears exactly one time; invalid with Proto3
+	Repeated Cardinality = 3 // appears zero or more times
+)
+
+// IsValid reports whether the cardinality is valid.
+func (c Cardinality) IsValid() bool {
+	switch c {
+	case Optional, Required, Repeated:
+		return true
+	default:
+		return false
+	}
+}
+
+// String returns c as a proto source identifier (e.g., "optional").
+func (c Cardinality) String() string {
+	switch c {
+	case Optional:
+		return "optional"
+	case Required:
+		return "required"
+	case Repeated:
+		return "repeated"
+	default:
+		return fmt.Sprintf("<unknown:%d>", c)
+	}
+}
+
+// GoString returns c as a Go source identifier (e.g., "Optional").
+func (c Cardinality) GoString() string {
+	switch c {
+	case Optional:
+		return "Optional"
+	case Required:
+		return "Required"
+	case Repeated:
+		return "Repeated"
+	default:
+		return fmt.Sprintf("Cardinality(%d)", c)
+	}
+}
+
+// Kind indicates the basic proto kind of a field.
+type Kind kind
+
+type kind int8 // keep exact type opaque as the int type may change
+
+// Constants as defined by the google.protobuf.Field.Kind enumeration.
+const (
+	BoolKind     Kind = 8
+	EnumKind     Kind = 14
+	Int32Kind    Kind = 5
+	Sint32Kind   Kind = 17
+	Uint32Kind   Kind = 13
+	Int64Kind    Kind = 3
+	Sint64Kind   Kind = 18
+	Uint64Kind   Kind = 4
+	Sfixed32Kind Kind = 15
+	Fixed32Kind  Kind = 7
+	FloatKind    Kind = 2
+	Sfixed64Kind Kind = 16
+	Fixed64Kind  Kind = 6
+	DoubleKind   Kind = 1
+	StringKind   Kind = 9
+	BytesKind    Kind = 12
+	MessageKind  Kind = 11
+	GroupKind    Kind = 10
+)
+
+// IsValid reports whether the kind is valid.
+func (k Kind) IsValid() bool {
+	switch k {
+	case BoolKind, EnumKind,
+		Int32Kind, Sint32Kind, Uint32Kind,
+		Int64Kind, Sint64Kind, Uint64Kind,
+		Sfixed32Kind, Fixed32Kind, FloatKind,
+		Sfixed64Kind, Fixed64Kind, DoubleKind,
+		StringKind, BytesKind, MessageKind, GroupKind:
+		return true
+	default:
+		return false
+	}
+}
+
+// String returns k as a proto source identifier (e.g., "bool").
+func (k Kind) String() string {
+	switch k {
+	case BoolKind:
+		return "bool"
+	case EnumKind:
+		return "enum"
+	case Int32Kind:
+		return "int32"
+	case Sint32Kind:
+		return "sint32"
+	case Uint32Kind:
+		return "uint32"
+	case Int64Kind:
+		return "int64"
+	case Sint64Kind:
+		return "sint64"
+	case Uint64Kind:
+		return "uint64"
+	case Sfixed32Kind:
+		return "sfixed32"
+	case Fixed32Kind:
+		return "fixed32"
+	case FloatKind:
+		return "float"
+	case Sfixed64Kind:
+		return "sfixed64"
+	case Fixed64Kind:
+		return "fixed64"
+	case DoubleKind:
+		return "double"
+	case StringKind:
+		return "string"
+	case BytesKind:
+		return "bytes"
+	case MessageKind:
+		return "message"
+	case GroupKind:
+		return "group"
+	default:
+		return fmt.Sprintf("<unknown:%d>", k)
+	}
+}
+
+// GoString returns k as a Go source identifier (e.g., "BoolKind").
+func (k Kind) GoString() string {
+	switch k {
+	case BoolKind:
+		return "BoolKind"
+	case EnumKind:
+		return "EnumKind"
+	case Int32Kind:
+		return "Int32Kind"
+	case Sint32Kind:
+		return "Sint32Kind"
+	case Uint32Kind:
+		return "Uint32Kind"
+	case Int64Kind:
+		return "Int64Kind"
+	case Sint64Kind:
+		return "Sint64Kind"
+	case Uint64Kind:
+		return "Uint64Kind"
+	case Sfixed32Kind:
+		return "Sfixed32Kind"
+	case Fixed32Kind:
+		return "Fixed32Kind"
+	case FloatKind:
+		return "FloatKind"
+	case Sfixed64Kind:
+		return "Sfixed64Kind"
+	case Fixed64Kind:
+		return "Fixed64Kind"
+	case DoubleKind:
+		return "DoubleKind"
+	case StringKind:
+		return "StringKind"
+	case BytesKind:
+		return "BytesKind"
+	case MessageKind:
+		return "MessageKind"
+	case GroupKind:
+		return "GroupKind"
+	default:
+		return fmt.Sprintf("Kind(%d)", k)
+	}
+}
+
+// FieldNumber is the field number in a message.
+type FieldNumber = protowire.Number
+
+// FieldNumbers represent a list of field numbers.
+type FieldNumbers interface {
+	// Len reports the number of fields in the list.
+	Len() int
+	// Get returns the ith field number. It panics if out of bounds.
+	Get(i int) FieldNumber
+	// Has reports whether n is within the list of fields.
+	Has(n FieldNumber) bool
+
+	doNotImplement
+}
+
+// FieldRanges represent a list of field number ranges.
+type FieldRanges interface {
+	// Len reports the number of ranges in the list.
+	Len() int
+	// Get returns the ith range. It panics if out of bounds.
+	Get(i int) [2]FieldNumber // start inclusive; end exclusive
+	// Has reports whether n is within any of the ranges.
+	Has(n FieldNumber) bool
+
+	doNotImplement
+}
+
+// EnumNumber is the numeric value for an enum.
+type EnumNumber int32
+
+// EnumRanges represent a list of enum number ranges.
+type EnumRanges interface {
+	// Len reports the number of ranges in the list.
+	Len() int
+	// Get returns the ith range. It panics if out of bounds.
+	Get(i int) [2]EnumNumber // start inclusive; end inclusive
+	// Has reports whether n is within any of the ranges.
+	Has(n EnumNumber) bool
+
+	doNotImplement
+}
+
+// Name is the short name for a proto declaration. This is not the name
+// as used in Go source code, which might not be identical to the proto name.
+type Name string // e.g., "Kind"
+
+// IsValid reports whether s is a syntactically valid name.
+// An empty name is invalid.
+func (s Name) IsValid() bool {
+	return consumeIdent(string(s)) == len(s)
+}
+
+// Names represent a list of names.
+type Names interface {
+	// Len reports the number of names in the list.
+	Len() int
+	// Get returns the ith name. It panics if out of bounds.
+	Get(i int) Name
+	// Has reports whether s matches any names in the list.
+	Has(s Name) bool
+
+	doNotImplement
+}
+
+// FullName is a qualified name that uniquely identifies a proto declaration.
+// A qualified name is the concatenation of the proto package along with the
+// fully-declared name (i.e., name of parent preceding the name of the child),
+// with a '.' delimiter placed between each Name.
+//
+// This should not have any leading or trailing dots.
+type FullName string // e.g., "google.protobuf.Field.Kind"
+
+// IsValid reports whether s is a syntactically valid full name.
+// An empty full name is invalid.
+func (s FullName) IsValid() bool {
+	i := consumeIdent(string(s))
+	if i < 0 {
+		return false
+	}
+	for len(s) > i {
+		if s[i] != '.' {
+			return false
+		}
+		i++
+		n := consumeIdent(string(s[i:]))
+		if n < 0 {
+			return false
+		}
+		i += n
+	}
+	return true
+}
+
+func consumeIdent(s string) (i int) {
+	if len(s) == 0 || !isLetter(s[i]) {
+		return -1
+	}
+	i++
+	for len(s) > i && isLetterDigit(s[i]) {
+		i++
+	}
+	return i
+}
+func isLetter(c byte) bool {
+	return c == '_' || ('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z')
+}
+func isLetterDigit(c byte) bool {
+	return isLetter(c) || ('0' <= c && c <= '9')
+}
+
+// Name returns the short name, which is the last identifier segment.
+// A single segment FullName is the Name itself.
+func (n FullName) Name() Name {
+	if i := strings.LastIndexByte(string(n), '.'); i >= 0 {
+		return Name(n[i+1:])
+	}
+	return Name(n)
+}
+
+// Parent returns the full name with the trailing identifier removed.
+// A single segment FullName has no parent.
+func (n FullName) Parent() FullName {
+	if i := strings.LastIndexByte(string(n), '.'); i >= 0 {
+		return n[:i]
+	}
+	return ""
+}
+
+// Append returns the qualified name appended with the provided short name.
+//
+// Invariant: n == n.Parent().Append(n.Name()) // assuming n is valid
+func (n FullName) Append(s Name) FullName {
+	if n == "" {
+		return FullName(s)
+	}
+	return n + "." + FullName(s)
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go
new file mode 100644
index 0000000..32ea3d9
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go
@@ -0,0 +1,52 @@
+// 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 protoreflect
+
+// SourceLocations is a list of source locations.
+type SourceLocations interface {
+	// Len reports the number of source locations in the proto file.
+	Len() int
+	// Get returns the ith SourceLocation. It panics if out of bounds.
+	Get(int) SourceLocation
+
+	doNotImplement
+
+	// TODO: Add ByPath and ByDescriptor helper methods.
+}
+
+// SourceLocation describes a source location and
+// corresponds with the google.protobuf.SourceCodeInfo.Location message.
+type SourceLocation struct {
+	// Path is the path to the declaration from the root file descriptor.
+	// The contents of this slice must not be mutated.
+	Path SourcePath
+
+	// StartLine and StartColumn are the zero-indexed starting location
+	// in the source file for the declaration.
+	StartLine, StartColumn int
+	// EndLine and EndColumn are the zero-indexed ending location
+	// in the source file for the declaration.
+	// In the descriptor.proto, the end line may be omitted if it is identical
+	// to the start line. Here, it is always populated.
+	EndLine, EndColumn int
+
+	// LeadingDetachedComments are the leading detached comments
+	// for the declaration. The contents of this slice must not be mutated.
+	LeadingDetachedComments []string
+	// LeadingComments is the leading attached comment for the declaration.
+	LeadingComments string
+	// TrailingComments is the trailing attached comment for the declaration.
+	TrailingComments string
+}
+
+// SourcePath identifies part of a file descriptor for a source location.
+// The SourcePath is a sequence of either field numbers or indexes into
+// a repeated field that form a path starting from the root file descriptor.
+//
+// See google.protobuf.SourceCodeInfo.Location.path.
+type SourcePath []int32
+
+// TODO: Add SourcePath.String method to pretty-print the path. For example:
+//	".message_type[6].nested_type[15].field[3]"
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go
new file mode 100644
index 0000000..5be14a7
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go
@@ -0,0 +1,631 @@
+// 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.
+
+package protoreflect
+
+// Descriptor provides a set of accessors that are common to every descriptor.
+// Each descriptor type wraps the equivalent google.protobuf.XXXDescriptorProto,
+// but provides efficient lookup and immutability.
+//
+// Each descriptor is comparable. Equality implies that the two types are
+// exactly identical. However, it is possible for the same semantically
+// identical proto type to be represented by multiple type descriptors.
+//
+// For example, suppose we have t1 and t2 which are both MessageDescriptors.
+// If t1 == t2, then the types are definitely equal and all accessors return
+// the same information. However, if t1 != t2, then it is still possible that
+// they still represent the same proto type (e.g., t1.FullName == t2.FullName).
+// This can occur if a descriptor type is created dynamically, or multiple
+// versions of the same proto type are accidentally linked into the Go binary.
+type Descriptor interface {
+	// ParentFile returns the parent file descriptor that this descriptor
+	// is declared within. The parent file for the file descriptor is itself.
+	//
+	// Support for this functionality is optional and may return nil.
+	ParentFile() FileDescriptor
+
+	// Parent returns the parent containing this descriptor declaration.
+	// The following shows the mapping from child type to possible parent types:
+	//
+	//	╔═════════════════════╤═══════════════════════════════════╗
+	//	║ Child type          │ Possible parent types             ║
+	//	╠═════════════════════╪═══════════════════════════════════╣
+	//	║ FileDescriptor      │ nil                               ║
+	//	║ MessageDescriptor   │ FileDescriptor, MessageDescriptor ║
+	//	║ FieldDescriptor     │ FileDescriptor, MessageDescriptor ║
+	//	║ OneofDescriptor     │ MessageDescriptor                 ║
+	//	║ EnumDescriptor      │ FileDescriptor, MessageDescriptor ║
+	//	║ EnumValueDescriptor │ EnumDescriptor                    ║
+	//	║ ServiceDescriptor   │ FileDescriptor                    ║
+	//	║ MethodDescriptor    │ ServiceDescriptor                 ║
+	//	╚═════════════════════╧═══════════════════════════════════╝
+	//
+	// Support for this functionality is optional and may return nil.
+	Parent() Descriptor
+
+	// Index returns the index of this descriptor within its parent.
+	// It returns 0 if the descriptor does not have a parent or if the parent
+	// is unknown.
+	Index() int
+
+	// Syntax is the protobuf syntax.
+	Syntax() Syntax // e.g., Proto2 or Proto3
+
+	// Name is the short name of the declaration (i.e., FullName.Name).
+	Name() Name // e.g., "Any"
+
+	// FullName is the fully-qualified name of the declaration.
+	//
+	// The FullName is a concatenation of the full name of the type that this
+	// type is declared within and the declaration name. For example,
+	// field "foo_field" in message "proto.package.MyMessage" is
+	// uniquely identified as "proto.package.MyMessage.foo_field".
+	// Enum values are an exception to the rule (see EnumValueDescriptor).
+	FullName() FullName // e.g., "google.protobuf.Any"
+
+	// IsPlaceholder reports whether type information is missing since a
+	// dependency is not resolved, in which case only name information is known.
+	//
+	// Placeholder types may only be returned by the following accessors
+	// as a result of unresolved dependencies or weak imports:
+	//
+	//	╔═══════════════════════════════════╤═════════════════════╗
+	//	║ Accessor                          │ Descriptor          ║
+	//	╠═══════════════════════════════════╪═════════════════════╣
+	//	║ FileImports.FileDescriptor        │ FileDescriptor      ║
+	//	║ FieldDescriptor.Enum              │ EnumDescriptor      ║
+	//	║ FieldDescriptor.Message           │ MessageDescriptor   ║
+	//	║ FieldDescriptor.DefaultEnumValue  │ EnumValueDescriptor ║
+	//	║ FieldDescriptor.ContainingMessage │ MessageDescriptor   ║
+	//	║ MethodDescriptor.Input            │ MessageDescriptor   ║
+	//	║ MethodDescriptor.Output           │ MessageDescriptor   ║
+	//	╚═══════════════════════════════════╧═════════════════════╝
+	//
+	// If true, only Name and FullName are valid.
+	// For FileDescriptor, the Path is also valid.
+	IsPlaceholder() bool
+
+	// Options returns the descriptor options. The caller must not modify
+	// the returned value.
+	//
+	// To avoid a dependency cycle, this function returns a proto.Message value.
+	// The proto message type returned for each descriptor type is as follows:
+	//	╔═════════════════════╤══════════════════════════════════════════╗
+	//	║ Go type             │ Protobuf message type                    ║
+	//	╠═════════════════════╪══════════════════════════════════════════╣
+	//	║ FileDescriptor      │ google.protobuf.FileOptions              ║
+	//	║ EnumDescriptor      │ google.protobuf.EnumOptions              ║
+	//	║ EnumValueDescriptor │ google.protobuf.EnumValueOptions         ║
+	//	║ MessageDescriptor   │ google.protobuf.MessageOptions           ║
+	//	║ FieldDescriptor     │ google.protobuf.FieldOptions             ║
+	//	║ OneofDescriptor     │ google.protobuf.OneofOptions             ║
+	//	║ ServiceDescriptor   │ google.protobuf.ServiceOptions           ║
+	//	║ MethodDescriptor    │ google.protobuf.MethodOptions            ║
+	//	╚═════════════════════╧══════════════════════════════════════════╝
+	//
+	// This method returns a typed nil-pointer if no options are present.
+	// The caller must import the descriptorpb package to use this.
+	Options() ProtoMessage
+
+	doNotImplement
+}
+
+// FileDescriptor describes the types in a complete proto file and
+// corresponds with the google.protobuf.FileDescriptorProto message.
+//
+// Top-level declarations:
+// EnumDescriptor, MessageDescriptor, FieldDescriptor, and/or ServiceDescriptor.
+type FileDescriptor interface {
+	Descriptor // Descriptor.FullName is identical to Package
+
+	// Path returns the file name, relative to the source tree root.
+	Path() string // e.g., "path/to/file.proto"
+	// Package returns the protobuf package namespace.
+	Package() FullName // e.g., "google.protobuf"
+
+	// Imports is a list of imported proto files.
+	Imports() FileImports
+
+	// Enums is a list of the top-level enum declarations.
+	Enums() EnumDescriptors
+	// Messages is a list of the top-level message declarations.
+	Messages() MessageDescriptors
+	// Extensions is a list of the top-level extension declarations.
+	Extensions() ExtensionDescriptors
+	// Services is a list of the top-level service declarations.
+	Services() ServiceDescriptors
+
+	// SourceLocations is a list of source locations.
+	SourceLocations() SourceLocations
+
+	isFileDescriptor
+}
+type isFileDescriptor interface{ ProtoType(FileDescriptor) }
+
+// FileImports is a list of file imports.
+type FileImports interface {
+	// Len reports the number of files imported by this proto file.
+	Len() int
+	// Get returns the ith FileImport. It panics if out of bounds.
+	Get(i int) FileImport
+
+	doNotImplement
+}
+
+// FileImport is the declaration for a proto file import.
+type FileImport struct {
+	// FileDescriptor is the file type for the given import.
+	// It is a placeholder descriptor if IsWeak is set or if a dependency has
+	// not been regenerated to implement the new reflection APIs.
+	FileDescriptor
+
+	// IsPublic reports whether this is a public import, which causes this file
+	// to alias declarations within the imported file. The intended use cases
+	// for this feature is the ability to move proto files without breaking
+	// existing dependencies.
+	//
+	// The current file and the imported file must be within proto package.
+	IsPublic bool
+
+	// IsWeak reports whether this is a weak import, which does not impose
+	// a direct dependency on the target file.
+	//
+	// Weak imports are a legacy proto1 feature. Equivalent behavior is
+	// achieved using proto2 extension fields or proto3 Any messages.
+	IsWeak bool
+}
+
+// MessageDescriptor describes a message and
+// corresponds with the google.protobuf.DescriptorProto message.
+//
+// Nested declarations:
+// FieldDescriptor, OneofDescriptor, FieldDescriptor, EnumDescriptor,
+// and/or MessageDescriptor.
+type MessageDescriptor interface {
+	Descriptor
+
+	// IsMapEntry indicates that this is an auto-generated message type to
+	// represent the entry type for a map field.
+	//
+	// Map entry messages have only two fields:
+	//	• a "key" field with a field number of 1
+	//	• a "value" field with a field number of 2
+	// The key and value types are determined by these two fields.
+	//
+	// If IsMapEntry is true, it implies that FieldDescriptor.IsMap is true
+	// for some field with this message type.
+	IsMapEntry() bool
+
+	// Fields is a list of nested field declarations.
+	Fields() FieldDescriptors
+	// Oneofs is a list of nested oneof declarations.
+	Oneofs() OneofDescriptors
+
+	// ReservedNames is a list of reserved field names.
+	ReservedNames() Names
+	// ReservedRanges is a list of reserved ranges of field numbers.
+	ReservedRanges() FieldRanges
+	// RequiredNumbers is a list of required field numbers.
+	// In Proto3, it is always an empty list.
+	RequiredNumbers() FieldNumbers
+	// ExtensionRanges is the field ranges used for extension fields.
+	// In Proto3, it is always an empty ranges.
+	ExtensionRanges() FieldRanges
+	// ExtensionRangeOptions returns the ith extension range options.
+	//
+	// To avoid a dependency cycle, this method returns a proto.Message value,
+	// which always contains a google.protobuf.ExtensionRangeOptions message.
+	// This method returns a typed nil-pointer if no options are present.
+	// The caller must import the descriptorpb package to use this.
+	ExtensionRangeOptions(i int) ProtoMessage
+
+	// Enums is a list of nested enum declarations.
+	Enums() EnumDescriptors
+	// Messages is a list of nested message declarations.
+	Messages() MessageDescriptors
+	// Extensions is a list of nested extension declarations.
+	Extensions() ExtensionDescriptors
+
+	isMessageDescriptor
+}
+type isMessageDescriptor interface{ ProtoType(MessageDescriptor) }
+
+// MessageType encapsulates a MessageDescriptor with a concrete Go implementation.
+type MessageType interface {
+	// New returns a newly allocated empty message.
+	New() Message
+
+	// Zero returns an empty, read-only message.
+	Zero() Message
+
+	// Descriptor returns the message descriptor.
+	//
+	// Invariant: t.Descriptor() == t.New().Descriptor()
+	Descriptor() MessageDescriptor
+}
+
+// MessageDescriptors is a list of message declarations.
+type MessageDescriptors interface {
+	// Len reports the number of messages.
+	Len() int
+	// Get returns the ith MessageDescriptor. It panics if out of bounds.
+	Get(i int) MessageDescriptor
+	// ByName returns the MessageDescriptor for a message named s.
+	// It returns nil if not found.
+	ByName(s Name) MessageDescriptor
+
+	doNotImplement
+}
+
+// FieldDescriptor describes a field within a message and
+// corresponds with the google.protobuf.FieldDescriptorProto message.
+//
+// It is used for both normal fields defined within the parent message
+// (e.g., MessageDescriptor.Fields) and fields that extend some remote message
+// (e.g., FileDescriptor.Extensions or MessageDescriptor.Extensions).
+type FieldDescriptor interface {
+	Descriptor
+
+	// Number reports the unique number for this field.
+	Number() FieldNumber
+	// Cardinality reports the cardinality for this field.
+	Cardinality() Cardinality
+	// Kind reports the basic kind for this field.
+	Kind() Kind
+
+	// HasJSONName reports whether this field has an explicitly set JSON name.
+	HasJSONName() bool
+
+	// JSONName reports the name used for JSON serialization.
+	// It is usually the camel-cased form of the field name.
+	JSONName() string
+
+	// HasPresence reports whether the field distinguishes between unpopulated
+	// and default values.
+	HasPresence() bool
+
+	// IsExtension reports whether this is an extension field. If false,
+	// then Parent and ContainingMessage refer to the same message.
+	// Otherwise, ContainingMessage and Parent likely differ.
+	IsExtension() bool
+
+	// HasOptionalKeyword reports whether the "optional" keyword was explicitly
+	// specified in the source .proto file.
+	HasOptionalKeyword() bool
+
+	// IsWeak reports whether this is a weak field, which does not impose a
+	// direct dependency on the target type.
+	// If true, then Message returns a placeholder type.
+	IsWeak() bool
+
+	// IsPacked reports whether repeated primitive numeric kinds should be
+	// serialized using a packed encoding.
+	// If true, then it implies Cardinality is Repeated.
+	IsPacked() bool
+
+	// IsList reports whether this field represents a list,
+	// where the value type for the associated field is a List.
+	// It is equivalent to checking whether Cardinality is Repeated and
+	// that IsMap reports false.
+	IsList() bool
+
+	// IsMap reports whether this field represents a map,
+	// where the value type for the associated field is a Map.
+	// It is equivalent to checking whether Cardinality is Repeated,
+	// that the Kind is MessageKind, and that Message.IsMapEntry reports true.
+	IsMap() bool
+
+	// MapKey returns the field descriptor for the key in the map entry.
+	// It returns nil if IsMap reports false.
+	MapKey() FieldDescriptor
+
+	// MapValue returns the field descriptor for the value in the map entry.
+	// It returns nil if IsMap reports false.
+	MapValue() FieldDescriptor
+
+	// HasDefault reports whether this field has a default value.
+	HasDefault() bool
+
+	// Default returns the default value for scalar fields.
+	// For proto2, it is the default value as specified in the proto file,
+	// or the zero value if unspecified.
+	// For proto3, it is always the zero value of the scalar.
+	// The Value type is determined by the Kind.
+	Default() Value
+
+	// DefaultEnumValue returns the enum value descriptor for the default value
+	// of an enum field, and is nil for any other kind of field.
+	DefaultEnumValue() EnumValueDescriptor
+
+	// ContainingOneof is the containing oneof that this field belongs to,
+	// and is nil if this field is not part of a oneof.
+	ContainingOneof() OneofDescriptor
+
+	// ContainingMessage is the containing message that this field belongs to.
+	// For extension fields, this may not necessarily be the parent message
+	// that the field is declared within.
+	ContainingMessage() MessageDescriptor
+
+	// Enum is the enum descriptor if Kind is EnumKind.
+	// It returns nil for any other Kind.
+	Enum() EnumDescriptor
+
+	// Message is the message descriptor if Kind is
+	// MessageKind or GroupKind. It returns nil for any other Kind.
+	Message() MessageDescriptor
+
+	isFieldDescriptor
+}
+type isFieldDescriptor interface{ ProtoType(FieldDescriptor) }
+
+// FieldDescriptors is a list of field declarations.
+type FieldDescriptors interface {
+	// Len reports the number of fields.
+	Len() int
+	// Get returns the ith FieldDescriptor. It panics if out of bounds.
+	Get(i int) FieldDescriptor
+	// ByName returns the FieldDescriptor for a field named s.
+	// It returns nil if not found.
+	ByName(s Name) FieldDescriptor
+	// ByJSONName returns the FieldDescriptor for a field with s as the JSON name.
+	// It returns nil if not found.
+	ByJSONName(s string) FieldDescriptor
+	// ByNumber returns the FieldDescriptor for a field numbered n.
+	// It returns nil if not found.
+	ByNumber(n FieldNumber) FieldDescriptor
+
+	doNotImplement
+}
+
+// OneofDescriptor describes a oneof field set within a given message and
+// corresponds with the google.protobuf.OneofDescriptorProto message.
+type OneofDescriptor interface {
+	Descriptor
+
+	// IsSynthetic reports whether this is a synthetic oneof created to support
+	// proto3 optional semantics. If true, Fields contains exactly one field
+	// with HasOptionalKeyword specified.
+	IsSynthetic() bool
+
+	// Fields is a list of fields belonging to this oneof.
+	Fields() FieldDescriptors
+
+	isOneofDescriptor
+}
+type isOneofDescriptor interface{ ProtoType(OneofDescriptor) }
+
+// OneofDescriptors is a list of oneof declarations.
+type OneofDescriptors interface {
+	// Len reports the number of oneof fields.
+	Len() int
+	// Get returns the ith OneofDescriptor. It panics if out of bounds.
+	Get(i int) OneofDescriptor
+	// ByName returns the OneofDescriptor for a oneof named s.
+	// It returns nil if not found.
+	ByName(s Name) OneofDescriptor
+
+	doNotImplement
+}
+
+// ExtensionDescriptor is an alias of FieldDescriptor for documentation.
+type ExtensionDescriptor = FieldDescriptor
+
+// ExtensionTypeDescriptor is an ExtensionDescriptor with an associated ExtensionType.
+type ExtensionTypeDescriptor interface {
+	ExtensionDescriptor
+
+	// Type returns the associated ExtensionType.
+	Type() ExtensionType
+
+	// Descriptor returns the plain ExtensionDescriptor without the
+	// associated ExtensionType.
+	Descriptor() ExtensionDescriptor
+}
+
+// ExtensionDescriptors is a list of field declarations.
+type ExtensionDescriptors interface {
+	// Len reports the number of fields.
+	Len() int
+	// Get returns the ith ExtensionDescriptor. It panics if out of bounds.
+	Get(i int) ExtensionDescriptor
+	// ByName returns the ExtensionDescriptor for a field named s.
+	// It returns nil if not found.
+	ByName(s Name) ExtensionDescriptor
+
+	doNotImplement
+}
+
+// ExtensionType encapsulates an ExtensionDescriptor with a concrete
+// Go implementation. The nested field descriptor must be for a extension field.
+//
+// While a normal field is a member of the parent message that it is declared
+// within (see Descriptor.Parent), an extension field is a member of some other
+// target message (see ExtensionDescriptor.Extendee) and may have no
+// relationship with the parent. However, the full name of an extension field is
+// relative to the parent that it is declared within.
+//
+// For example:
+//	syntax = "proto2";
+//	package example;
+//	message FooMessage {
+//		extensions 100 to max;
+//	}
+//	message BarMessage {
+//		extends FooMessage { optional BarMessage bar_field = 100; }
+//	}
+//
+// Field "bar_field" is an extension of FooMessage, but its full name is
+// "example.BarMessage.bar_field" instead of "example.FooMessage.bar_field".
+type ExtensionType interface {
+	// New returns a new value for the field.
+	// For scalars, this returns the default value in native Go form.
+	New() Value
+
+	// Zero returns a new value for the field.
+	// For scalars, this returns the default value in native Go form.
+	// For composite types, this returns an empty, read-only message, list, or map.
+	Zero() Value
+
+	// TypeDescriptor returns the extension type descriptor.
+	TypeDescriptor() ExtensionTypeDescriptor
+
+	// ValueOf wraps the input and returns it as a Value.
+	// ValueOf panics if the input value is invalid or not the appropriate type.
+	//
+	// ValueOf is more extensive than protoreflect.ValueOf for a given field's
+	// value as it has more type information available.
+	ValueOf(interface{}) Value
+
+	// InterfaceOf completely unwraps the Value to the underlying Go type.
+	// InterfaceOf panics if the input is nil or does not represent the
+	// appropriate underlying Go type. For composite types, it panics if the
+	// value is not mutable.
+	//
+	// InterfaceOf is able to unwrap the Value further than Value.Interface
+	// as it has more type information available.
+	InterfaceOf(Value) interface{}
+
+	// IsValidValue reports whether the Value is valid to assign to the field.
+	IsValidValue(Value) bool
+
+	// IsValidInterface reports whether the input is valid to assign to the field.
+	IsValidInterface(interface{}) bool
+}
+
+// EnumDescriptor describes an enum and
+// corresponds with the google.protobuf.EnumDescriptorProto message.
+//
+// Nested declarations:
+// EnumValueDescriptor.
+type EnumDescriptor interface {
+	Descriptor
+
+	// Values is a list of nested enum value declarations.
+	Values() EnumValueDescriptors
+
+	// ReservedNames is a list of reserved enum names.
+	ReservedNames() Names
+	// ReservedRanges is a list of reserved ranges of enum numbers.
+	ReservedRanges() EnumRanges
+
+	isEnumDescriptor
+}
+type isEnumDescriptor interface{ ProtoType(EnumDescriptor) }
+
+// EnumType encapsulates an EnumDescriptor with a concrete Go implementation.
+type EnumType interface {
+	// New returns an instance of this enum type with its value set to n.
+	New(n EnumNumber) Enum
+
+	// Descriptor returns the enum descriptor.
+	//
+	// Invariant: t.Descriptor() == t.New(0).Descriptor()
+	Descriptor() EnumDescriptor
+}
+
+// EnumDescriptors is a list of enum declarations.
+type EnumDescriptors interface {
+	// Len reports the number of enum types.
+	Len() int
+	// Get returns the ith EnumDescriptor. It panics if out of bounds.
+	Get(i int) EnumDescriptor
+	// ByName returns the EnumDescriptor for an enum named s.
+	// It returns nil if not found.
+	ByName(s Name) EnumDescriptor
+
+	doNotImplement
+}
+
+// EnumValueDescriptor describes an enum value and
+// corresponds with the google.protobuf.EnumValueDescriptorProto message.
+//
+// All other proto declarations are in the namespace of the parent.
+// However, enum values do not follow this rule and are within the namespace
+// of the parent's parent (i.e., they are a sibling of the containing enum).
+// Thus, a value named "FOO_VALUE" declared within an enum uniquely identified
+// as "proto.package.MyEnum" has a full name of "proto.package.FOO_VALUE".
+type EnumValueDescriptor interface {
+	Descriptor
+
+	// Number returns the enum value as an integer.
+	Number() EnumNumber
+
+	isEnumValueDescriptor
+}
+type isEnumValueDescriptor interface{ ProtoType(EnumValueDescriptor) }
+
+// EnumValueDescriptors is a list of enum value declarations.
+type EnumValueDescriptors interface {
+	// Len reports the number of enum values.
+	Len() int
+	// Get returns the ith EnumValueDescriptor. It panics if out of bounds.
+	Get(i int) EnumValueDescriptor
+	// ByName returns the EnumValueDescriptor for the enum value named s.
+	// It returns nil if not found.
+	ByName(s Name) EnumValueDescriptor
+	// ByNumber returns the EnumValueDescriptor for the enum value numbered n.
+	// If multiple have the same number, the first one defined is returned
+	// It returns nil if not found.
+	ByNumber(n EnumNumber) EnumValueDescriptor
+
+	doNotImplement
+}
+
+// ServiceDescriptor describes a service and
+// corresponds with the google.protobuf.ServiceDescriptorProto message.
+//
+// Nested declarations: MethodDescriptor.
+type ServiceDescriptor interface {
+	Descriptor
+
+	// Methods is a list of nested message declarations.
+	Methods() MethodDescriptors
+
+	isServiceDescriptor
+}
+type isServiceDescriptor interface{ ProtoType(ServiceDescriptor) }
+
+// ServiceDescriptors is a list of service declarations.
+type ServiceDescriptors interface {
+	// Len reports the number of services.
+	Len() int
+	// Get returns the ith ServiceDescriptor. It panics if out of bounds.
+	Get(i int) ServiceDescriptor
+	// ByName returns the ServiceDescriptor for a service named s.
+	// It returns nil if not found.
+	ByName(s Name) ServiceDescriptor
+
+	doNotImplement
+}
+
+// MethodDescriptor describes a method and
+// corresponds with the google.protobuf.MethodDescriptorProto message.
+type MethodDescriptor interface {
+	Descriptor
+
+	// Input is the input message descriptor.
+	Input() MessageDescriptor
+	// Output is the output message descriptor.
+	Output() MessageDescriptor
+	// IsStreamingClient reports whether the client streams multiple messages.
+	IsStreamingClient() bool
+	// IsStreamingServer reports whether the server streams multiple messages.
+	IsStreamingServer() bool
+
+	isMethodDescriptor
+}
+type isMethodDescriptor interface{ ProtoType(MethodDescriptor) }
+
+// MethodDescriptors is a list of method declarations.
+type MethodDescriptors interface {
+	// Len reports the number of methods.
+	Len() int
+	// Get returns the ith MethodDescriptor. It panics if out of bounds.
+	Get(i int) MethodDescriptor
+	// ByName returns the MethodDescriptor for a service method named s.
+	// It returns nil if not found.
+	ByName(s Name) MethodDescriptor
+
+	doNotImplement
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go
new file mode 100644
index 0000000..f319810
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go
@@ -0,0 +1,285 @@
+// 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.
+
+package protoreflect
+
+import "google.golang.org/protobuf/encoding/protowire"
+
+// Enum is a reflection interface for a concrete enum value,
+// which provides type information and a getter for the enum number.
+// Enum does not provide a mutable API since enums are commonly backed by
+// Go constants, which are not addressable.
+type Enum interface {
+	// Descriptor returns enum descriptor, which contains only the protobuf
+	// type information for the enum.
+	Descriptor() EnumDescriptor
+
+	// Type returns the enum type, which encapsulates both Go and protobuf
+	// type information. If the Go type information is not needed,
+	// it is recommended that the enum descriptor be used instead.
+	Type() EnumType
+
+	// Number returns the enum value as an integer.
+	Number() EnumNumber
+}
+
+// Message is a reflective interface for a concrete message value,
+// encapsulating both type and value information for the message.
+//
+// Accessor/mutators for individual fields are keyed by FieldDescriptor.
+// For non-extension fields, the descriptor must exactly match the
+// field known by the parent message.
+// For extension fields, the descriptor must implement ExtensionTypeDescriptor,
+// extend the parent message (i.e., have the same message FullName), and
+// be within the parent's extension range.
+//
+// Each field Value can be a scalar or a composite type (Message, List, or Map).
+// See Value for the Go types associated with a FieldDescriptor.
+// Providing a Value that is invalid or of an incorrect type panics.
+type Message interface {
+	// Descriptor returns message descriptor, which contains only the protobuf
+	// type information for the message.
+	Descriptor() MessageDescriptor
+
+	// Type returns the message type, which encapsulates both Go and protobuf
+	// type information. If the Go type information is not needed,
+	// it is recommended that the message descriptor be used instead.
+	Type() MessageType
+
+	// New returns a newly allocated and mutable empty message.
+	New() Message
+
+	// Interface unwraps the message reflection interface and
+	// returns the underlying ProtoMessage interface.
+	Interface() ProtoMessage
+
+	// Range iterates over every populated field in an undefined order,
+	// calling f for each field descriptor and value encountered.
+	// Range returns immediately if f returns false.
+	// While iterating, mutating operations may only be performed
+	// on the current field descriptor.
+	Range(f func(FieldDescriptor, Value) bool)
+
+	// Has reports whether a field is populated.
+	//
+	// Some fields have the property of nullability where it is possible to
+	// distinguish between the default value of a field and whether the field
+	// was explicitly populated with the default value. Singular message fields,
+	// member fields of a oneof, and proto2 scalar fields are nullable. Such
+	// fields are populated only if explicitly set.
+	//
+	// In other cases (aside from the nullable cases above),
+	// a proto3 scalar field is populated if it contains a non-zero value, and
+	// a repeated field is populated if it is non-empty.
+	Has(FieldDescriptor) bool
+
+	// Clear clears the field such that a subsequent Has call reports false.
+	//
+	// Clearing an extension field clears both the extension type and value
+	// associated with the given field number.
+	//
+	// Clear is a mutating operation and unsafe for concurrent use.
+	Clear(FieldDescriptor)
+
+	// Get retrieves the value for a field.
+	//
+	// For unpopulated scalars, it returns the default value, where
+	// the default value of a bytes scalar is guaranteed to be a copy.
+	// For unpopulated composite types, it returns an empty, read-only view
+	// of the value; to obtain a mutable reference, use Mutable.
+	Get(FieldDescriptor) Value
+
+	// Set stores the value for a field.
+	//
+	// For a field belonging to a oneof, it implicitly clears any other field
+	// that may be currently set within the same oneof.
+	// For extension fields, it implicitly stores the provided ExtensionType.
+	// When setting a composite type, it is unspecified whether the stored value
+	// aliases the source's memory in any way. If the composite value is an
+	// empty, read-only value, then it panics.
+	//
+	// Set is a mutating operation and unsafe for concurrent use.
+	Set(FieldDescriptor, Value)
+
+	// Mutable returns a mutable reference to a composite type.
+	//
+	// If the field is unpopulated, it may allocate a composite value.
+	// For a field belonging to a oneof, it implicitly clears any other field
+	// that may be currently set within the same oneof.
+	// For extension fields, it implicitly stores the provided ExtensionType
+	// if not already stored.
+	// It panics if the field does not contain a composite type.
+	//
+	// Mutable is a mutating operation and unsafe for concurrent use.
+	Mutable(FieldDescriptor) Value
+
+	// NewField returns a new value that is assignable to the field
+	// for the given descriptor. For scalars, this returns the default value.
+	// For lists, maps, and messages, this returns a new, empty, mutable value.
+	NewField(FieldDescriptor) Value
+
+	// WhichOneof reports which field within the oneof is populated,
+	// returning nil if none are populated.
+	// It panics if the oneof descriptor does not belong to this message.
+	WhichOneof(OneofDescriptor) FieldDescriptor
+
+	// GetUnknown retrieves the entire list of unknown fields.
+	// The caller may only mutate the contents of the RawFields
+	// if the mutated bytes are stored back into the message with SetUnknown.
+	GetUnknown() RawFields
+
+	// SetUnknown stores an entire list of unknown fields.
+	// The raw fields must be syntactically valid according to the wire format.
+	// An implementation may panic if this is not the case.
+	// Once stored, the caller must not mutate the content of the RawFields.
+	// An empty RawFields may be passed to clear the fields.
+	//
+	// SetUnknown is a mutating operation and unsafe for concurrent use.
+	SetUnknown(RawFields)
+
+	// IsValid reports whether the message is valid.
+	//
+	// An invalid message is an empty, read-only value.
+	//
+	// An invalid message often corresponds to a nil pointer of the concrete
+	// message type, but the details are implementation dependent.
+	// Validity is not part of the protobuf data model, and may not
+	// be preserved in marshaling or other operations.
+	IsValid() bool
+
+	// ProtoMethods returns optional fast-path implementions of various operations.
+	// This method may return nil.
+	//
+	// The returned methods type is identical to
+	// "google.golang.org/protobuf/runtime/protoiface".Methods.
+	// Consult the protoiface package documentation for details.
+	ProtoMethods() *methods
+}
+
+// RawFields is the raw bytes for an ordered sequence of fields.
+// Each field contains both the tag (representing field number and wire type),
+// and also the wire data itself.
+type RawFields []byte
+
+// IsValid reports whether b is syntactically correct wire format.
+func (b RawFields) IsValid() bool {
+	for len(b) > 0 {
+		_, _, n := protowire.ConsumeField(b)
+		if n < 0 {
+			return false
+		}
+		b = b[n:]
+	}
+	return true
+}
+
+// List is a zero-indexed, ordered list.
+// The element Value type is determined by FieldDescriptor.Kind.
+// Providing a Value that is invalid or of an incorrect type panics.
+type List interface {
+	// Len reports the number of entries in the List.
+	// Get, Set, and Truncate panic with out of bound indexes.
+	Len() int
+
+	// Get retrieves the value at the given index.
+	// It never returns an invalid value.
+	Get(int) Value
+
+	// Set stores a value for the given index.
+	// When setting a composite type, it is unspecified whether the set
+	// value aliases the source's memory in any way.
+	//
+	// Set is a mutating operation and unsafe for concurrent use.
+	Set(int, Value)
+
+	// Append appends the provided value to the end of the list.
+	// When appending a composite type, it is unspecified whether the appended
+	// value aliases the source's memory in any way.
+	//
+	// Append is a mutating operation and unsafe for concurrent use.
+	Append(Value)
+
+	// AppendMutable appends a new, empty, mutable message value to the end
+	// of the list and returns it.
+	// It panics if the list does not contain a message type.
+	AppendMutable() Value
+
+	// Truncate truncates the list to a smaller length.
+	//
+	// Truncate is a mutating operation and unsafe for concurrent use.
+	Truncate(int)
+
+	// NewElement returns a new value for a list element.
+	// For enums, this returns the first enum value.
+	// For other scalars, this returns the zero value.
+	// For messages, this returns a new, empty, mutable value.
+	NewElement() Value
+
+	// IsValid reports whether the list is valid.
+	//
+	// An invalid list is an empty, read-only value.
+	//
+	// Validity is not part of the protobuf data model, and may not
+	// be preserved in marshaling or other operations.
+	IsValid() bool
+}
+
+// Map is an unordered, associative map.
+// The entry MapKey type is determined by FieldDescriptor.MapKey.Kind.
+// The entry Value type is determined by FieldDescriptor.MapValue.Kind.
+// Providing a MapKey or Value that is invalid or of an incorrect type panics.
+type Map interface {
+	// Len reports the number of elements in the map.
+	Len() int
+
+	// Range iterates over every map entry in an undefined order,
+	// calling f for each key and value encountered.
+	// Range calls f Len times unless f returns false, which stops iteration.
+	// While iterating, mutating operations may only be performed
+	// on the current map key.
+	Range(f func(MapKey, Value) bool)
+
+	// Has reports whether an entry with the given key is in the map.
+	Has(MapKey) bool
+
+	// Clear clears the entry associated with they given key.
+	// The operation does nothing if there is no entry associated with the key.
+	//
+	// Clear is a mutating operation and unsafe for concurrent use.
+	Clear(MapKey)
+
+	// Get retrieves the value for an entry with the given key.
+	// It returns an invalid value for non-existent entries.
+	Get(MapKey) Value
+
+	// Set stores the value for an entry with the given key.
+	// It panics when given a key or value that is invalid or the wrong type.
+	// When setting a composite type, it is unspecified whether the set
+	// value aliases the source's memory in any way.
+	//
+	// Set is a mutating operation and unsafe for concurrent use.
+	Set(MapKey, Value)
+
+	// Mutable retrieves a mutable reference to the entry for the given key.
+	// If no entry exists for the key, it creates a new, empty, mutable value
+	// and stores it as the entry for the key.
+	// It panics if the map value is not a message.
+	Mutable(MapKey) Value
+
+	// NewValue returns a new value assignable as a map value.
+	// For enums, this returns the first enum value.
+	// For other scalars, this returns the zero value.
+	// For messages, this returns a new, empty, mutable value.
+	NewValue() Value
+
+	// IsValid reports whether the map is valid.
+	//
+	// An invalid map is an empty, read-only value.
+	//
+	// An invalid message often corresponds to a nil Go map value,
+	// but the details are implementation dependent.
+	// Validity is not part of the protobuf data model, and may not
+	// be preserved in marshaling or other operations.
+	IsValid() bool
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go
new file mode 100644
index 0000000..918e685
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go
@@ -0,0 +1,59 @@
+// 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 purego appengine
+
+package protoreflect
+
+import "google.golang.org/protobuf/internal/pragma"
+
+type valueType int
+
+const (
+	nilType valueType = iota
+	boolType
+	int32Type
+	int64Type
+	uint32Type
+	uint64Type
+	float32Type
+	float64Type
+	stringType
+	bytesType
+	enumType
+	ifaceType
+)
+
+// value is a union where only one type can be represented at a time.
+// This uses a distinct field for each type. This is type safe in Go, but
+// occupies more memory than necessary (72B).
+type value struct {
+	pragma.DoNotCompare // 0B
+
+	typ   valueType   // 8B
+	num   uint64      // 8B
+	str   string      // 16B
+	bin   []byte      // 24B
+	iface interface{} // 16B
+}
+
+func valueOfString(v string) Value {
+	return Value{typ: stringType, str: v}
+}
+func valueOfBytes(v []byte) Value {
+	return Value{typ: bytesType, bin: v}
+}
+func valueOfIface(v interface{}) Value {
+	return Value{typ: ifaceType, iface: v}
+}
+
+func (v Value) getString() string {
+	return v.str
+}
+func (v Value) getBytes() []byte {
+	return v.bin
+}
+func (v Value) getIface() interface{} {
+	return v.iface
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go
new file mode 100644
index 0000000..5a34147
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go
@@ -0,0 +1,411 @@
+// 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.
+
+package protoreflect
+
+import (
+	"fmt"
+	"math"
+)
+
+// Value is a union where only one Go type may be set at a time.
+// The Value is used to represent all possible values a field may take.
+// The following shows which Go type is used to represent each proto Kind:
+//
+//	╔════════════╤═════════════════════════════════════╗
+//	║ Go type    │ Protobuf kind                       ║
+//	╠════════════╪═════════════════════════════════════╣
+//	║ bool       │ BoolKind                            ║
+//	║ int32      │ Int32Kind, Sint32Kind, Sfixed32Kind ║
+//	║ int64      │ Int64Kind, Sint64Kind, Sfixed64Kind ║
+//	║ uint32     │ Uint32Kind, Fixed32Kind             ║
+//	║ uint64     │ Uint64Kind, Fixed64Kind             ║
+//	║ float32    │ FloatKind                           ║
+//	║ float64    │ DoubleKind                          ║
+//	║ string     │ StringKind                          ║
+//	║ []byte     │ BytesKind                           ║
+//	║ EnumNumber │ EnumKind                            ║
+//	║ Message    │ MessageKind, GroupKind              ║
+//	╚════════════╧═════════════════════════════════════╝
+//
+// Multiple protobuf Kinds may be represented by a single Go type if the type
+// can losslessly represent the information for the proto kind. For example,
+// Int64Kind, Sint64Kind, and Sfixed64Kind are all represented by int64,
+// but use different integer encoding methods.
+//
+// The List or Map types are used if the field cardinality is repeated.
+// A field is a List if FieldDescriptor.IsList reports true.
+// A field is a Map if FieldDescriptor.IsMap reports true.
+//
+// Converting to/from a Value and a concrete Go value panics on type mismatch.
+// For example, ValueOf("hello").Int() panics because this attempts to
+// retrieve an int64 from a string.
+type Value value
+
+// The protoreflect API uses a custom Value union type instead of interface{}
+// to keep the future open for performance optimizations. Using an interface{}
+// always incurs an allocation for primitives (e.g., int64) since it needs to
+// be boxed on the heap (as interfaces can only contain pointers natively).
+// Instead, we represent the Value union as a flat struct that internally keeps
+// track of which type is set. Using unsafe, the Value union can be reduced
+// down to 24B, which is identical in size to a slice.
+//
+// The latest compiler (Go1.11) currently suffers from some limitations:
+//	• With inlining, the compiler should be able to statically prove that
+//	only one of these switch cases are taken and inline one specific case.
+//	See https://golang.org/issue/22310.
+
+// ValueOf returns a Value initialized with the concrete value stored in v.
+// This panics if the type does not match one of the allowed types in the
+// Value union.
+func ValueOf(v interface{}) Value {
+	switch v := v.(type) {
+	case nil:
+		return Value{}
+	case bool:
+		return ValueOfBool(v)
+	case int32:
+		return ValueOfInt32(v)
+	case int64:
+		return ValueOfInt64(v)
+	case uint32:
+		return ValueOfUint32(v)
+	case uint64:
+		return ValueOfUint64(v)
+	case float32:
+		return ValueOfFloat32(v)
+	case float64:
+		return ValueOfFloat64(v)
+	case string:
+		return ValueOfString(v)
+	case []byte:
+		return ValueOfBytes(v)
+	case EnumNumber:
+		return ValueOfEnum(v)
+	case Message, List, Map:
+		return valueOfIface(v)
+	case ProtoMessage:
+		panic(fmt.Sprintf("invalid proto.Message(%T) type, expected a protoreflect.Message type", v))
+	default:
+		panic(fmt.Sprintf("invalid type: %T", v))
+	}
+}
+
+// ValueOfBool returns a new boolean value.
+func ValueOfBool(v bool) Value {
+	if v {
+		return Value{typ: boolType, num: 1}
+	} else {
+		return Value{typ: boolType, num: 0}
+	}
+}
+
+// ValueOfInt32 returns a new int32 value.
+func ValueOfInt32(v int32) Value {
+	return Value{typ: int32Type, num: uint64(v)}
+}
+
+// ValueOfInt64 returns a new int64 value.
+func ValueOfInt64(v int64) Value {
+	return Value{typ: int64Type, num: uint64(v)}
+}
+
+// ValueOfUint32 returns a new uint32 value.
+func ValueOfUint32(v uint32) Value {
+	return Value{typ: uint32Type, num: uint64(v)}
+}
+
+// ValueOfUint64 returns a new uint64 value.
+func ValueOfUint64(v uint64) Value {
+	return Value{typ: uint64Type, num: v}
+}
+
+// ValueOfFloat32 returns a new float32 value.
+func ValueOfFloat32(v float32) Value {
+	return Value{typ: float32Type, num: uint64(math.Float64bits(float64(v)))}
+}
+
+// ValueOfFloat64 returns a new float64 value.
+func ValueOfFloat64(v float64) Value {
+	return Value{typ: float64Type, num: uint64(math.Float64bits(float64(v)))}
+}
+
+// ValueOfString returns a new string value.
+func ValueOfString(v string) Value {
+	return valueOfString(v)
+}
+
+// ValueOfBytes returns a new bytes value.
+func ValueOfBytes(v []byte) Value {
+	return valueOfBytes(v[:len(v):len(v)])
+}
+
+// ValueOfEnum returns a new enum value.
+func ValueOfEnum(v EnumNumber) Value {
+	return Value{typ: enumType, num: uint64(v)}
+}
+
+// ValueOfMessage returns a new Message value.
+func ValueOfMessage(v Message) Value {
+	return valueOfIface(v)
+}
+
+// ValueOfList returns a new List value.
+func ValueOfList(v List) Value {
+	return valueOfIface(v)
+}
+
+// ValueOfMap returns a new Map value.
+func ValueOfMap(v Map) Value {
+	return valueOfIface(v)
+}
+
+// IsValid reports whether v is populated with a value.
+func (v Value) IsValid() bool {
+	return v.typ != nilType
+}
+
+// Interface returns v as an interface{}.
+//
+// Invariant: v == ValueOf(v).Interface()
+func (v Value) Interface() interface{} {
+	switch v.typ {
+	case nilType:
+		return nil
+	case boolType:
+		return v.Bool()
+	case int32Type:
+		return int32(v.Int())
+	case int64Type:
+		return int64(v.Int())
+	case uint32Type:
+		return uint32(v.Uint())
+	case uint64Type:
+		return uint64(v.Uint())
+	case float32Type:
+		return float32(v.Float())
+	case float64Type:
+		return float64(v.Float())
+	case stringType:
+		return v.String()
+	case bytesType:
+		return v.Bytes()
+	case enumType:
+		return v.Enum()
+	default:
+		return v.getIface()
+	}
+}
+
+func (v Value) typeName() string {
+	switch v.typ {
+	case nilType:
+		return "nil"
+	case boolType:
+		return "bool"
+	case int32Type:
+		return "int32"
+	case int64Type:
+		return "int64"
+	case uint32Type:
+		return "uint32"
+	case uint64Type:
+		return "uint64"
+	case float32Type:
+		return "float32"
+	case float64Type:
+		return "float64"
+	case stringType:
+		return "string"
+	case bytesType:
+		return "bytes"
+	case enumType:
+		return "enum"
+	default:
+		switch v := v.getIface().(type) {
+		case Message:
+			return "message"
+		case List:
+			return "list"
+		case Map:
+			return "map"
+		default:
+			return fmt.Sprintf("<unknown: %T>", v)
+		}
+	}
+}
+
+func (v Value) panicMessage(what string) string {
+	return fmt.Sprintf("type mismatch: cannot convert %v to %s", v.typeName(), what)
+}
+
+// Bool returns v as a bool and panics if the type is not a bool.
+func (v Value) Bool() bool {
+	switch v.typ {
+	case boolType:
+		return v.num > 0
+	default:
+		panic(v.panicMessage("bool"))
+	}
+}
+
+// Int returns v as a int64 and panics if the type is not a int32 or int64.
+func (v Value) Int() int64 {
+	switch v.typ {
+	case int32Type, int64Type:
+		return int64(v.num)
+	default:
+		panic(v.panicMessage("int"))
+	}
+}
+
+// Uint returns v as a uint64 and panics if the type is not a uint32 or uint64.
+func (v Value) Uint() uint64 {
+	switch v.typ {
+	case uint32Type, uint64Type:
+		return uint64(v.num)
+	default:
+		panic(v.panicMessage("uint"))
+	}
+}
+
+// Float returns v as a float64 and panics if the type is not a float32 or float64.
+func (v Value) Float() float64 {
+	switch v.typ {
+	case float32Type, float64Type:
+		return math.Float64frombits(uint64(v.num))
+	default:
+		panic(v.panicMessage("float"))
+	}
+}
+
+// String returns v as a string. Since this method implements fmt.Stringer,
+// this returns the formatted string value for any non-string type.
+func (v Value) String() string {
+	switch v.typ {
+	case stringType:
+		return v.getString()
+	default:
+		return fmt.Sprint(v.Interface())
+	}
+}
+
+// Bytes returns v as a []byte and panics if the type is not a []byte.
+func (v Value) Bytes() []byte {
+	switch v.typ {
+	case bytesType:
+		return v.getBytes()
+	default:
+		panic(v.panicMessage("bytes"))
+	}
+}
+
+// Enum returns v as a EnumNumber and panics if the type is not a EnumNumber.
+func (v Value) Enum() EnumNumber {
+	switch v.typ {
+	case enumType:
+		return EnumNumber(v.num)
+	default:
+		panic(v.panicMessage("enum"))
+	}
+}
+
+// Message returns v as a Message and panics if the type is not a Message.
+func (v Value) Message() Message {
+	switch vi := v.getIface().(type) {
+	case Message:
+		return vi
+	default:
+		panic(v.panicMessage("message"))
+	}
+}
+
+// List returns v as a List and panics if the type is not a List.
+func (v Value) List() List {
+	switch vi := v.getIface().(type) {
+	case List:
+		return vi
+	default:
+		panic(v.panicMessage("list"))
+	}
+}
+
+// Map returns v as a Map and panics if the type is not a Map.
+func (v Value) Map() Map {
+	switch vi := v.getIface().(type) {
+	case Map:
+		return vi
+	default:
+		panic(v.panicMessage("map"))
+	}
+}
+
+// MapKey returns v as a MapKey and panics for invalid MapKey types.
+func (v Value) MapKey() MapKey {
+	switch v.typ {
+	case boolType, int32Type, int64Type, uint32Type, uint64Type, stringType:
+		return MapKey(v)
+	default:
+		panic(v.panicMessage("map key"))
+	}
+}
+
+// MapKey is used to index maps, where the Go type of the MapKey must match
+// the specified key Kind (see MessageDescriptor.IsMapEntry).
+// The following shows what Go type is used to represent each proto Kind:
+//
+//	╔═════════╤═════════════════════════════════════╗
+//	║ Go type │ Protobuf kind                       ║
+//	╠═════════╪═════════════════════════════════════╣
+//	║ bool    │ BoolKind                            ║
+//	║ int32   │ Int32Kind, Sint32Kind, Sfixed32Kind ║
+//	║ int64   │ Int64Kind, Sint64Kind, Sfixed64Kind ║
+//	║ uint32  │ Uint32Kind, Fixed32Kind             ║
+//	║ uint64  │ Uint64Kind, Fixed64Kind             ║
+//	║ string  │ StringKind                          ║
+//	╚═════════╧═════════════════════════════════════╝
+//
+// A MapKey is constructed and accessed through a Value:
+//	k := ValueOf("hash").MapKey() // convert string to MapKey
+//	s := k.String()               // convert MapKey to string
+//
+// The MapKey is a strict subset of valid types used in Value;
+// converting a Value to a MapKey with an invalid type panics.
+type MapKey value
+
+// IsValid reports whether k is populated with a value.
+func (k MapKey) IsValid() bool {
+	return Value(k).IsValid()
+}
+
+// Interface returns k as an interface{}.
+func (k MapKey) Interface() interface{} {
+	return Value(k).Interface()
+}
+
+// Bool returns k as a bool and panics if the type is not a bool.
+func (k MapKey) Bool() bool {
+	return Value(k).Bool()
+}
+
+// Int returns k as a int64 and panics if the type is not a int32 or int64.
+func (k MapKey) Int() int64 {
+	return Value(k).Int()
+}
+
+// Uint returns k as a uint64 and panics if the type is not a uint32 or uint64.
+func (k MapKey) Uint() uint64 {
+	return Value(k).Uint()
+}
+
+// String returns k as a string. Since this method implements fmt.Stringer,
+// this returns the formatted string value for any non-string type.
+func (k MapKey) String() string {
+	return Value(k).String()
+}
+
+// Value returns k as a Value.
+func (k MapKey) Value() Value {
+	return Value(k)
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go
new file mode 100644
index 0000000..c45debd
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go
@@ -0,0 +1,98 @@
+// 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 !purego,!appengine
+
+package protoreflect
+
+import (
+	"unsafe"
+
+	"google.golang.org/protobuf/internal/pragma"
+)
+
+type (
+	stringHeader struct {
+		Data unsafe.Pointer
+		Len  int
+	}
+	sliceHeader struct {
+		Data unsafe.Pointer
+		Len  int
+		Cap  int
+	}
+	ifaceHeader struct {
+		Type unsafe.Pointer
+		Data unsafe.Pointer
+	}
+)
+
+var (
+	nilType     = typeOf(nil)
+	boolType    = typeOf(*new(bool))
+	int32Type   = typeOf(*new(int32))
+	int64Type   = typeOf(*new(int64))
+	uint32Type  = typeOf(*new(uint32))
+	uint64Type  = typeOf(*new(uint64))
+	float32Type = typeOf(*new(float32))
+	float64Type = typeOf(*new(float64))
+	stringType  = typeOf(*new(string))
+	bytesType   = typeOf(*new([]byte))
+	enumType    = typeOf(*new(EnumNumber))
+)
+
+// typeOf returns a pointer to the Go type information.
+// The pointer is comparable and equal if and only if the types are identical.
+func typeOf(t interface{}) unsafe.Pointer {
+	return (*ifaceHeader)(unsafe.Pointer(&t)).Type
+}
+
+// value is a union where only one type can be represented at a time.
+// The struct is 24B large on 64-bit systems and requires the minimum storage
+// necessary to represent each possible type.
+//
+// The Go GC needs to be able to scan variables containing pointers.
+// As such, pointers and non-pointers cannot be intermixed.
+type value struct {
+	pragma.DoNotCompare // 0B
+
+	// typ stores the type of the value as a pointer to the Go type.
+	typ unsafe.Pointer // 8B
+
+	// ptr stores the data pointer for a String, Bytes, or interface value.
+	ptr unsafe.Pointer // 8B
+
+	// num stores a Bool, Int32, Int64, Uint32, Uint64, Float32, Float64, or
+	// Enum value as a raw uint64.
+	//
+	// It is also used to store the length of a String or Bytes value;
+	// the capacity is ignored.
+	num uint64 // 8B
+}
+
+func valueOfString(v string) Value {
+	p := (*stringHeader)(unsafe.Pointer(&v))
+	return Value{typ: stringType, ptr: p.Data, num: uint64(len(v))}
+}
+func valueOfBytes(v []byte) Value {
+	p := (*sliceHeader)(unsafe.Pointer(&v))
+	return Value{typ: bytesType, ptr: p.Data, num: uint64(len(v))}
+}
+func valueOfIface(v interface{}) Value {
+	p := (*ifaceHeader)(unsafe.Pointer(&v))
+	return Value{typ: p.Type, ptr: p.Data}
+}
+
+func (v Value) getString() (x string) {
+	*(*stringHeader)(unsafe.Pointer(&x)) = stringHeader{Data: v.ptr, Len: int(v.num)}
+	return x
+}
+func (v Value) getBytes() (x []byte) {
+	*(*sliceHeader)(unsafe.Pointer(&x)) = sliceHeader{Data: v.ptr, Len: int(v.num), Cap: int(v.num)}
+	return x
+}
+func (v Value) getIface() (x interface{}) {
+	*(*ifaceHeader)(unsafe.Pointer(&x)) = ifaceHeader{Type: v.typ, Data: v.ptr}
+	return x
+}
diff --git a/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go b/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go
new file mode 100644
index 0000000..5e5f967
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go
@@ -0,0 +1,800 @@
+// 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.
+
+// Package protoregistry provides data structures to register and lookup
+// protobuf descriptor types.
+//
+// The Files registry contains file descriptors and provides the ability
+// to iterate over the files or lookup a specific descriptor within the files.
+// Files only contains protobuf descriptors and has no understanding of Go
+// type information that may be associated with each descriptor.
+//
+// The Types registry contains descriptor types for which there is a known
+// Go type associated with that descriptor. It provides the ability to iterate
+// over the registered types or lookup a type by name.
+package protoregistry
+
+import (
+	"fmt"
+	"log"
+	"strings"
+	"sync"
+
+	"google.golang.org/protobuf/internal/errors"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// ignoreConflict reports whether to ignore a registration conflict
+// given the descriptor being registered and the error.
+// It is a variable so that the behavior is easily overridden in another file.
+var ignoreConflict = func(d protoreflect.Descriptor, err error) bool {
+	log.Printf(""+
+		"WARNING: %v\n"+
+		"A future release will panic on registration conflicts. See:\n"+
+		"https://developers.google.com/protocol-buffers/docs/reference/go/faq#namespace-conflict\n"+
+		"\n", err)
+	return true
+}
+
+var globalMutex sync.RWMutex
+
+// GlobalFiles is a global registry of file descriptors.
+var GlobalFiles *Files = new(Files)
+
+// GlobalTypes is the registry used by default for type lookups
+// unless a local registry is provided by the user.
+var GlobalTypes *Types = new(Types)
+
+// NotFound is a sentinel error value to indicate that the type was not found.
+//
+// Since registry lookup can happen in the critical performance path, resolvers
+// must return this exact error value, not an error wrapping it.
+var NotFound = errors.New("not found")
+
+// Files is a registry for looking up or iterating over files and the
+// descriptors contained within them.
+// The Find and Range methods are safe for concurrent use.
+type Files struct {
+	// The map of descsByName contains:
+	//	EnumDescriptor
+	//	EnumValueDescriptor
+	//	MessageDescriptor
+	//	ExtensionDescriptor
+	//	ServiceDescriptor
+	//	*packageDescriptor
+	//
+	// Note that files are stored as a slice, since a package may contain
+	// multiple files. Only top-level declarations are registered.
+	// Note that enum values are in the top-level since that are in the same
+	// scope as the parent enum.
+	descsByName map[protoreflect.FullName]interface{}
+	filesByPath map[string]protoreflect.FileDescriptor
+}
+
+type packageDescriptor struct {
+	files []protoreflect.FileDescriptor
+}
+
+// RegisterFile registers the provided file descriptor.
+//
+// If any descriptor within the file conflicts with the descriptor of any
+// previously registered file (e.g., two enums with the same full name),
+// then the file is not registered and an error is returned.
+//
+// It is permitted for multiple files to have the same file path.
+func (r *Files) RegisterFile(file protoreflect.FileDescriptor) error {
+	if r == GlobalFiles {
+		globalMutex.Lock()
+		defer globalMutex.Unlock()
+	}
+	if r.descsByName == nil {
+		r.descsByName = map[protoreflect.FullName]interface{}{
+			"": &packageDescriptor{},
+		}
+		r.filesByPath = make(map[string]protoreflect.FileDescriptor)
+	}
+	path := file.Path()
+	if prev := r.filesByPath[path]; prev != nil {
+		// TODO: Remove this after some soak-in period after moving these types.
+		var prevPath string
+		const prevModule = "google.golang.org/genproto"
+		const prevVersion = "cb27e3aa (May 26th, 2020)"
+		switch path {
+		case "google/protobuf/field_mask.proto":
+			prevPath = prevModule + "/protobuf/field_mask"
+		case "google/protobuf/api.proto":
+			prevPath = prevModule + "/protobuf/api"
+		case "google/protobuf/type.proto":
+			prevPath = prevModule + "/protobuf/ptype"
+		case "google/protobuf/source_context.proto":
+			prevPath = prevModule + "/protobuf/source_context"
+		}
+		if r == GlobalFiles && prevPath != "" {
+			pkgName := strings.TrimSuffix(strings.TrimPrefix(path, "google/protobuf/"), ".proto")
+			pkgName = strings.Replace(pkgName, "_", "", -1) + "pb"
+			currPath := "google.golang.org/protobuf/types/known/" + pkgName
+			panic(fmt.Sprintf(""+
+				"duplicate registration of %q\n"+
+				"\n"+
+				"The generated definition for this file has moved:\n"+
+				"\tfrom: %q\n"+
+				"\tto:   %q\n"+
+				"A dependency on the %q module must\n"+
+				"be at version %v or higher.\n"+
+				"\n"+
+				"Upgrade the dependency by running:\n"+
+				"\tgo get -u %v\n",
+				path, prevPath, currPath, prevModule, prevVersion, prevPath))
+		}
+
+		err := errors.New("file %q is already registered", file.Path())
+		err = amendErrorWithCaller(err, prev, file)
+		if r == GlobalFiles && ignoreConflict(file, err) {
+			err = nil
+		}
+		return err
+	}
+
+	for name := file.Package(); name != ""; name = name.Parent() {
+		switch prev := r.descsByName[name]; prev.(type) {
+		case nil, *packageDescriptor:
+		default:
+			err := errors.New("file %q has a package name conflict over %v", file.Path(), name)
+			err = amendErrorWithCaller(err, prev, file)
+			if r == GlobalFiles && ignoreConflict(file, err) {
+				err = nil
+			}
+			return err
+		}
+	}
+	var err error
+	var hasConflict bool
+	rangeTopLevelDescriptors(file, func(d protoreflect.Descriptor) {
+		if prev := r.descsByName[d.FullName()]; prev != nil {
+			hasConflict = true
+			err = errors.New("file %q has a name conflict over %v", file.Path(), d.FullName())
+			err = amendErrorWithCaller(err, prev, file)
+			if r == GlobalFiles && ignoreConflict(d, err) {
+				err = nil
+			}
+		}
+	})
+	if hasConflict {
+		return err
+	}
+
+	for name := file.Package(); name != ""; name = name.Parent() {
+		if r.descsByName[name] == nil {
+			r.descsByName[name] = &packageDescriptor{}
+		}
+	}
+	p := r.descsByName[file.Package()].(*packageDescriptor)
+	p.files = append(p.files, file)
+	rangeTopLevelDescriptors(file, func(d protoreflect.Descriptor) {
+		r.descsByName[d.FullName()] = d
+	})
+	r.filesByPath[path] = file
+	return nil
+}
+
+// FindDescriptorByName looks up a descriptor by the full name.
+//
+// This returns (nil, NotFound) if not found.
+func (r *Files) FindDescriptorByName(name protoreflect.FullName) (protoreflect.Descriptor, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	prefix := name
+	suffix := nameSuffix("")
+	for prefix != "" {
+		if d, ok := r.descsByName[prefix]; ok {
+			switch d := d.(type) {
+			case protoreflect.EnumDescriptor:
+				if d.FullName() == name {
+					return d, nil
+				}
+			case protoreflect.EnumValueDescriptor:
+				if d.FullName() == name {
+					return d, nil
+				}
+			case protoreflect.MessageDescriptor:
+				if d.FullName() == name {
+					return d, nil
+				}
+				if d := findDescriptorInMessage(d, suffix); d != nil && d.FullName() == name {
+					return d, nil
+				}
+			case protoreflect.ExtensionDescriptor:
+				if d.FullName() == name {
+					return d, nil
+				}
+			case protoreflect.ServiceDescriptor:
+				if d.FullName() == name {
+					return d, nil
+				}
+				if d := d.Methods().ByName(suffix.Pop()); d != nil && d.FullName() == name {
+					return d, nil
+				}
+			}
+			return nil, NotFound
+		}
+		prefix = prefix.Parent()
+		suffix = nameSuffix(name[len(prefix)+len("."):])
+	}
+	return nil, NotFound
+}
+
+func findDescriptorInMessage(md protoreflect.MessageDescriptor, suffix nameSuffix) protoreflect.Descriptor {
+	name := suffix.Pop()
+	if suffix == "" {
+		if ed := md.Enums().ByName(name); ed != nil {
+			return ed
+		}
+		for i := md.Enums().Len() - 1; i >= 0; i-- {
+			if vd := md.Enums().Get(i).Values().ByName(name); vd != nil {
+				return vd
+			}
+		}
+		if xd := md.Extensions().ByName(name); xd != nil {
+			return xd
+		}
+		if fd := md.Fields().ByName(name); fd != nil {
+			return fd
+		}
+		if od := md.Oneofs().ByName(name); od != nil {
+			return od
+		}
+	}
+	if md := md.Messages().ByName(name); md != nil {
+		if suffix == "" {
+			return md
+		}
+		return findDescriptorInMessage(md, suffix)
+	}
+	return nil
+}
+
+type nameSuffix string
+
+func (s *nameSuffix) Pop() (name protoreflect.Name) {
+	if i := strings.IndexByte(string(*s), '.'); i >= 0 {
+		name, *s = protoreflect.Name((*s)[:i]), (*s)[i+1:]
+	} else {
+		name, *s = protoreflect.Name((*s)), ""
+	}
+	return name
+}
+
+// FindFileByPath looks up a file by the path.
+//
+// This returns (nil, NotFound) if not found.
+func (r *Files) FindFileByPath(path string) (protoreflect.FileDescriptor, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	if fd, ok := r.filesByPath[path]; ok {
+		return fd, nil
+	}
+	return nil, NotFound
+}
+
+// NumFiles reports the number of registered files.
+func (r *Files) NumFiles() int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	return len(r.filesByPath)
+}
+
+// RangeFiles iterates over all registered files while f returns true.
+// The iteration order is undefined.
+func (r *Files) RangeFiles(f func(protoreflect.FileDescriptor) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	for _, file := range r.filesByPath {
+		if !f(file) {
+			return
+		}
+	}
+}
+
+// NumFilesByPackage reports the number of registered files in a proto package.
+func (r *Files) NumFilesByPackage(name protoreflect.FullName) int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	p, ok := r.descsByName[name].(*packageDescriptor)
+	if !ok {
+		return 0
+	}
+	return len(p.files)
+}
+
+// RangeFilesByPackage iterates over all registered files in a given proto package
+// while f returns true. The iteration order is undefined.
+func (r *Files) RangeFilesByPackage(name protoreflect.FullName, f func(protoreflect.FileDescriptor) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalFiles {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	p, ok := r.descsByName[name].(*packageDescriptor)
+	if !ok {
+		return
+	}
+	for _, file := range p.files {
+		if !f(file) {
+			return
+		}
+	}
+}
+
+// rangeTopLevelDescriptors iterates over all top-level descriptors in a file
+// which will be directly entered into the registry.
+func rangeTopLevelDescriptors(fd protoreflect.FileDescriptor, f func(protoreflect.Descriptor)) {
+	eds := fd.Enums()
+	for i := eds.Len() - 1; i >= 0; i-- {
+		f(eds.Get(i))
+		vds := eds.Get(i).Values()
+		for i := vds.Len() - 1; i >= 0; i-- {
+			f(vds.Get(i))
+		}
+	}
+	mds := fd.Messages()
+	for i := mds.Len() - 1; i >= 0; i-- {
+		f(mds.Get(i))
+	}
+	xds := fd.Extensions()
+	for i := xds.Len() - 1; i >= 0; i-- {
+		f(xds.Get(i))
+	}
+	sds := fd.Services()
+	for i := sds.Len() - 1; i >= 0; i-- {
+		f(sds.Get(i))
+	}
+}
+
+// MessageTypeResolver is an interface for looking up messages.
+//
+// A compliant implementation must deterministically return the same type
+// if no error is encountered.
+//
+// The Types type implements this interface.
+type MessageTypeResolver interface {
+	// FindMessageByName looks up a message by its full name.
+	// E.g., "google.protobuf.Any"
+	//
+	// This return (nil, NotFound) if not found.
+	FindMessageByName(message protoreflect.FullName) (protoreflect.MessageType, error)
+
+	// FindMessageByURL looks up a message by a URL identifier.
+	// See documentation on google.protobuf.Any.type_url for the URL format.
+	//
+	// This returns (nil, NotFound) if not found.
+	FindMessageByURL(url string) (protoreflect.MessageType, error)
+}
+
+// ExtensionTypeResolver is an interface for looking up extensions.
+//
+// A compliant implementation must deterministically return the same type
+// if no error is encountered.
+//
+// The Types type implements this interface.
+type ExtensionTypeResolver interface {
+	// FindExtensionByName looks up a extension field by the field's full name.
+	// Note that this is the full name of the field as determined by
+	// where the extension is declared and is unrelated to the full name of the
+	// message being extended.
+	//
+	// This returns (nil, NotFound) if not found.
+	FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
+
+	// FindExtensionByNumber looks up a extension field by the field number
+	// within some parent message, identified by full name.
+	//
+	// This returns (nil, NotFound) if not found.
+	FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
+}
+
+var (
+	_ MessageTypeResolver   = (*Types)(nil)
+	_ ExtensionTypeResolver = (*Types)(nil)
+)
+
+// Types is a registry for looking up or iterating over descriptor types.
+// The Find and Range methods are safe for concurrent use.
+type Types struct {
+	typesByName         typesByName
+	extensionsByMessage extensionsByMessage
+
+	numEnums      int
+	numMessages   int
+	numExtensions int
+}
+
+type (
+	typesByName         map[protoreflect.FullName]interface{}
+	extensionsByMessage map[protoreflect.FullName]extensionsByNumber
+	extensionsByNumber  map[protoreflect.FieldNumber]protoreflect.ExtensionType
+)
+
+// RegisterMessage registers the provided message type.
+//
+// If a naming conflict occurs, the type is not registered and an error is returned.
+func (r *Types) RegisterMessage(mt protoreflect.MessageType) error {
+	// Under rare circumstances getting the descriptor might recursively
+	// examine the registry, so fetch it before locking.
+	md := mt.Descriptor()
+
+	if r == GlobalTypes {
+		globalMutex.Lock()
+		defer globalMutex.Unlock()
+	}
+
+	if err := r.register("message", md, mt); err != nil {
+		return err
+	}
+	r.numMessages++
+	return nil
+}
+
+// RegisterEnum registers the provided enum type.
+//
+// If a naming conflict occurs, the type is not registered and an error is returned.
+func (r *Types) RegisterEnum(et protoreflect.EnumType) error {
+	// Under rare circumstances getting the descriptor might recursively
+	// examine the registry, so fetch it before locking.
+	ed := et.Descriptor()
+
+	if r == GlobalTypes {
+		globalMutex.Lock()
+		defer globalMutex.Unlock()
+	}
+
+	if err := r.register("enum", ed, et); err != nil {
+		return err
+	}
+	r.numEnums++
+	return nil
+}
+
+// RegisterExtension registers the provided extension type.
+//
+// If a naming conflict occurs, the type is not registered and an error is returned.
+func (r *Types) RegisterExtension(xt protoreflect.ExtensionType) error {
+	// Under rare circumstances getting the descriptor might recursively
+	// examine the registry, so fetch it before locking.
+	//
+	// A known case where this can happen: Fetching the TypeDescriptor for a
+	// legacy ExtensionDesc can consult the global registry.
+	xd := xt.TypeDescriptor()
+
+	if r == GlobalTypes {
+		globalMutex.Lock()
+		defer globalMutex.Unlock()
+	}
+
+	field := xd.Number()
+	message := xd.ContainingMessage().FullName()
+	if prev := r.extensionsByMessage[message][field]; prev != nil {
+		err := errors.New("extension number %d is already registered on message %v", field, message)
+		err = amendErrorWithCaller(err, prev, xt)
+		if !(r == GlobalTypes && ignoreConflict(xd, err)) {
+			return err
+		}
+	}
+
+	if err := r.register("extension", xd, xt); err != nil {
+		return err
+	}
+	if r.extensionsByMessage == nil {
+		r.extensionsByMessage = make(extensionsByMessage)
+	}
+	if r.extensionsByMessage[message] == nil {
+		r.extensionsByMessage[message] = make(extensionsByNumber)
+	}
+	r.extensionsByMessage[message][field] = xt
+	r.numExtensions++
+	return nil
+}
+
+func (r *Types) register(kind string, desc protoreflect.Descriptor, typ interface{}) error {
+	name := desc.FullName()
+	prev := r.typesByName[name]
+	if prev != nil {
+		err := errors.New("%v %v is already registered", kind, name)
+		err = amendErrorWithCaller(err, prev, typ)
+		if !(r == GlobalTypes && ignoreConflict(desc, err)) {
+			return err
+		}
+	}
+	if r.typesByName == nil {
+		r.typesByName = make(typesByName)
+	}
+	r.typesByName[name] = typ
+	return nil
+}
+
+// FindEnumByName looks up an enum by its full name.
+// E.g., "google.protobuf.Field.Kind".
+//
+// This returns (nil, NotFound) if not found.
+func (r *Types) FindEnumByName(enum protoreflect.FullName) (protoreflect.EnumType, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	if v := r.typesByName[enum]; v != nil {
+		if et, _ := v.(protoreflect.EnumType); et != nil {
+			return et, nil
+		}
+		return nil, errors.New("found wrong type: got %v, want enum", typeName(v))
+	}
+	return nil, NotFound
+}
+
+// FindMessageByName looks up a message by its full name.
+// E.g., "google.protobuf.Any"
+//
+// This return (nil, NotFound) if not found.
+func (r *Types) FindMessageByName(message protoreflect.FullName) (protoreflect.MessageType, error) {
+	// The full name by itself is a valid URL.
+	return r.FindMessageByURL(string(message))
+}
+
+// FindMessageByURL looks up a message by a URL identifier.
+// See documentation on google.protobuf.Any.type_url for the URL format.
+//
+// This returns (nil, NotFound) if not found.
+func (r *Types) FindMessageByURL(url string) (protoreflect.MessageType, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	message := protoreflect.FullName(url)
+	if i := strings.LastIndexByte(url, '/'); i >= 0 {
+		message = message[i+len("/"):]
+	}
+
+	if v := r.typesByName[message]; v != nil {
+		if mt, _ := v.(protoreflect.MessageType); mt != nil {
+			return mt, nil
+		}
+		return nil, errors.New("found wrong type: got %v, want message", typeName(v))
+	}
+	return nil, NotFound
+}
+
+// FindExtensionByName looks up a extension field by the field's full name.
+// Note that this is the full name of the field as determined by
+// where the extension is declared and is unrelated to the full name of the
+// message being extended.
+//
+// This returns (nil, NotFound) if not found.
+func (r *Types) FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	if v := r.typesByName[field]; v != nil {
+		if xt, _ := v.(protoreflect.ExtensionType); xt != nil {
+			return xt, nil
+		}
+		return nil, errors.New("found wrong type: got %v, want extension", typeName(v))
+	}
+	return nil, NotFound
+}
+
+// FindExtensionByNumber looks up a extension field by the field number
+// within some parent message, identified by full name.
+//
+// This returns (nil, NotFound) if not found.
+func (r *Types) FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error) {
+	if r == nil {
+		return nil, NotFound
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	if xt, ok := r.extensionsByMessage[message][field]; ok {
+		return xt, nil
+	}
+	return nil, NotFound
+}
+
+// NumEnums reports the number of registered enums.
+func (r *Types) NumEnums() int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	return r.numEnums
+}
+
+// RangeEnums iterates over all registered enums while f returns true.
+// Iteration order is undefined.
+func (r *Types) RangeEnums(f func(protoreflect.EnumType) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	for _, typ := range r.typesByName {
+		if et, ok := typ.(protoreflect.EnumType); ok {
+			if !f(et) {
+				return
+			}
+		}
+	}
+}
+
+// NumMessages reports the number of registered messages.
+func (r *Types) NumMessages() int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	return r.numMessages
+}
+
+// RangeMessages iterates over all registered messages while f returns true.
+// Iteration order is undefined.
+func (r *Types) RangeMessages(f func(protoreflect.MessageType) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	for _, typ := range r.typesByName {
+		if mt, ok := typ.(protoreflect.MessageType); ok {
+			if !f(mt) {
+				return
+			}
+		}
+	}
+}
+
+// NumExtensions reports the number of registered extensions.
+func (r *Types) NumExtensions() int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	return r.numExtensions
+}
+
+// RangeExtensions iterates over all registered extensions while f returns true.
+// Iteration order is undefined.
+func (r *Types) RangeExtensions(f func(protoreflect.ExtensionType) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	for _, typ := range r.typesByName {
+		if xt, ok := typ.(protoreflect.ExtensionType); ok {
+			if !f(xt) {
+				return
+			}
+		}
+	}
+}
+
+// NumExtensionsByMessage reports the number of registered extensions for
+// a given message type.
+func (r *Types) NumExtensionsByMessage(message protoreflect.FullName) int {
+	if r == nil {
+		return 0
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	return len(r.extensionsByMessage[message])
+}
+
+// RangeExtensionsByMessage iterates over all registered extensions filtered
+// by a given message type while f returns true. Iteration order is undefined.
+func (r *Types) RangeExtensionsByMessage(message protoreflect.FullName, f func(protoreflect.ExtensionType) bool) {
+	if r == nil {
+		return
+	}
+	if r == GlobalTypes {
+		globalMutex.RLock()
+		defer globalMutex.RUnlock()
+	}
+	for _, xt := range r.extensionsByMessage[message] {
+		if !f(xt) {
+			return
+		}
+	}
+}
+
+func typeName(t interface{}) string {
+	switch t.(type) {
+	case protoreflect.EnumType:
+		return "enum"
+	case protoreflect.MessageType:
+		return "message"
+	case protoreflect.ExtensionType:
+		return "extension"
+	default:
+		return fmt.Sprintf("%T", t)
+	}
+}
+
+func amendErrorWithCaller(err error, prev, curr interface{}) error {
+	prevPkg := goPackage(prev)
+	currPkg := goPackage(curr)
+	if prevPkg == "" || currPkg == "" || prevPkg == currPkg {
+		return err
+	}
+	return errors.New("%s\n\tpreviously from: %q\n\tcurrently from:  %q", err, prevPkg, currPkg)
+}
+
+func goPackage(v interface{}) string {
+	switch d := v.(type) {
+	case protoreflect.EnumType:
+		v = d.Descriptor()
+	case protoreflect.MessageType:
+		v = d.Descriptor()
+	case protoreflect.ExtensionType:
+		v = d.TypeDescriptor()
+	}
+	if d, ok := v.(protoreflect.Descriptor); ok {
+		v = d.ParentFile()
+	}
+	if d, ok := v.(interface{ GoPackagePath() string }); ok {
+		return d.GoPackagePath()
+	}
+	return ""
+}
diff --git a/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go b/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go
new file mode 100644
index 0000000..c587276
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go
@@ -0,0 +1,15 @@
+// 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.
+
+package protoiface
+
+type MessageV1 interface {
+	Reset()
+	String() string
+	ProtoMessage()
+}
+
+type ExtensionRangeV1 struct {
+	Start, End int32 // both inclusive
+}
diff --git a/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go b/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go
new file mode 100644
index 0000000..32c04f6
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go
@@ -0,0 +1,167 @@
+// 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 protoiface contains types referenced or implemented by messages.
+//
+// WARNING: This package should only be imported by message implementations.
+// The functionality found in this package should be accessed through
+// higher-level abstractions provided by the proto package.
+package protoiface
+
+import (
+	"google.golang.org/protobuf/internal/pragma"
+	"google.golang.org/protobuf/reflect/protoreflect"
+)
+
+// Methods is a set of optional fast-path implementations of various operations.
+type Methods = struct {
+	pragma.NoUnkeyedLiterals
+
+	// Flags indicate support for optional features.
+	Flags SupportFlags
+
+	// Size returns the size in bytes of the wire-format encoding of a message.
+	// Marshal must be provided if a custom Size is provided.
+	Size func(SizeInput) SizeOutput
+
+	// Marshal formats a message in the wire-format encoding to the provided buffer.
+	// Size should be provided if a custom Marshal is provided.
+	// It must not return an error for a partial message.
+	Marshal func(MarshalInput) (MarshalOutput, error)
+
+	// Unmarshal parses the wire-format encoding and merges the result into a message.
+	// It must not reset the target message or return an error for a partial message.
+	Unmarshal func(UnmarshalInput) (UnmarshalOutput, error)
+
+	// Merge merges the contents of a source message into a destination message.
+	Merge func(MergeInput) MergeOutput
+
+	// CheckInitialized returns an error if any required fields in the message are not set.
+	CheckInitialized func(CheckInitializedInput) (CheckInitializedOutput, error)
+}
+
+// SupportFlags indicate support for optional features.
+type SupportFlags = uint64
+
+const (
+	// SupportMarshalDeterministic reports whether MarshalOptions.Deterministic is supported.
+	SupportMarshalDeterministic SupportFlags = 1 << iota
+
+	// SupportUnmarshalDiscardUnknown reports whether UnmarshalOptions.DiscardUnknown is supported.
+	SupportUnmarshalDiscardUnknown
+)
+
+// SizeInput is input to the Size method.
+type SizeInput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Message protoreflect.Message
+	Flags   MarshalInputFlags
+}
+
+// SizeOutput is output from the Size method.
+type SizeOutput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Size int
+}
+
+// MarshalInput is input to the Marshal method.
+type MarshalInput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Message protoreflect.Message
+	Buf     []byte // output is appended to this buffer
+	Flags   MarshalInputFlags
+}
+
+// MarshalOutput is output from the Marshal method.
+type MarshalOutput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Buf []byte // contains marshaled message
+}
+
+// MarshalInputFlags configure the marshaler.
+// Most flags correspond to fields in proto.MarshalOptions.
+type MarshalInputFlags = uint8
+
+const (
+	MarshalDeterministic MarshalInputFlags = 1 << iota
+	MarshalUseCachedSize
+)
+
+// UnmarshalInput is input to the Unmarshal method.
+type UnmarshalInput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Message  protoreflect.Message
+	Buf      []byte // input buffer
+	Flags    UnmarshalInputFlags
+	Resolver interface {
+		FindExtensionByName(field protoreflect.FullName) (protoreflect.ExtensionType, error)
+		FindExtensionByNumber(message protoreflect.FullName, field protoreflect.FieldNumber) (protoreflect.ExtensionType, error)
+	}
+}
+
+// UnmarshalOutput is output from the Unmarshal method.
+type UnmarshalOutput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Flags UnmarshalOutputFlags
+}
+
+// UnmarshalInputFlags configure the unmarshaler.
+// Most flags correspond to fields in proto.UnmarshalOptions.
+type UnmarshalInputFlags = uint8
+
+const (
+	UnmarshalDiscardUnknown UnmarshalInputFlags = 1 << iota
+)
+
+// UnmarshalOutputFlags are output from the Unmarshal method.
+type UnmarshalOutputFlags = uint8
+
+const (
+	// UnmarshalInitialized may be set on return if all required fields are known to be set.
+	// If unset, then it does not necessarily indicate that the message is uninitialized,
+	// only that its status could not be confirmed.
+	UnmarshalInitialized UnmarshalOutputFlags = 1 << iota
+)
+
+// MergeInput is input to the Merge method.
+type MergeInput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Source      protoreflect.Message
+	Destination protoreflect.Message
+}
+
+// MergeOutput is output from the Merge method.
+type MergeOutput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Flags MergeOutputFlags
+}
+
+// MergeOutputFlags are output from the Merge method.
+type MergeOutputFlags = uint8
+
+const (
+	// MergeComplete reports whether the merge was performed.
+	// If unset, the merger must have made no changes to the destination.
+	MergeComplete MergeOutputFlags = 1 << iota
+)
+
+// CheckInitializedInput is input to the CheckInitialized method.
+type CheckInitializedInput = struct {
+	pragma.NoUnkeyedLiterals
+
+	Message protoreflect.Message
+}
+
+// CheckInitializedOutput is output from the CheckInitialized method.
+type CheckInitializedOutput = struct {
+	pragma.NoUnkeyedLiterals
+}
diff --git a/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go b/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go
new file mode 100644
index 0000000..4a1ab7f
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go
@@ -0,0 +1,44 @@
+// 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.
+
+// Package protoimpl contains the default implementation for messages
+// generated by protoc-gen-go.
+//
+// WARNING: This package should only ever be imported by generated messages.
+// The compatibility agreement covers nothing except for functionality needed
+// to keep existing generated messages operational. Breakages that occur due
+// to unauthorized usages of this package are not the author's responsibility.
+package protoimpl
+
+import (
+	"google.golang.org/protobuf/internal/filedesc"
+	"google.golang.org/protobuf/internal/filetype"
+	"google.golang.org/protobuf/internal/impl"
+)
+
+// UnsafeEnabled specifies whether package unsafe can be used.
+const UnsafeEnabled = impl.UnsafeEnabled
+
+type (
+	// Types used by generated code in init functions.
+	DescBuilder = filedesc.Builder
+	TypeBuilder = filetype.Builder
+
+	// Types used by generated code to implement EnumType, MessageType, and ExtensionType.
+	EnumInfo      = impl.EnumInfo
+	MessageInfo   = impl.MessageInfo
+	ExtensionInfo = impl.ExtensionInfo
+
+	// Types embedded in generated messages.
+	MessageState     = impl.MessageState
+	SizeCache        = impl.SizeCache
+	WeakFields       = impl.WeakFields
+	UnknownFields    = impl.UnknownFields
+	ExtensionFields  = impl.ExtensionFields
+	ExtensionFieldV1 = impl.ExtensionField
+
+	Pointer = impl.Pointer
+)
+
+var X impl.Export
diff --git a/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go b/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go
new file mode 100644
index 0000000..ff094e1
--- /dev/null
+++ b/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go
@@ -0,0 +1,56 @@
+// 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 protoimpl
+
+import (
+	"google.golang.org/protobuf/internal/version"
+)
+
+const (
+	// MaxVersion is the maximum supported version for generated .pb.go files.
+	// It is always the current version of the module.
+	MaxVersion = version.Minor
+
+	// GenVersion is the runtime version required by generated .pb.go files.
+	// This is incremented when generated code relies on new functionality
+	// in the runtime.
+	GenVersion = 20
+
+	// MinVersion is the minimum supported version for generated .pb.go files.
+	// This is incremented when the runtime drops support for old code.
+	MinVersion = 0
+)
+
+// EnforceVersion is used by code generated by protoc-gen-go
+// to statically enforce minimum and maximum versions of this package.
+// A compilation failure implies either that:
+//	* the runtime package is too old and needs to be updated OR
+//	* the generated code is too old and needs to be regenerated.
+//
+// The runtime package can be upgraded by running:
+//	go get google.golang.org/protobuf
+//
+// The generated code can be regenerated by running:
+//	protoc --go_out=${PROTOC_GEN_GO_ARGS} ${PROTO_FILES}
+//
+// Example usage by generated code:
+//	const (
+//		// Verify that this generated code is sufficiently up-to-date.
+//		_ = protoimpl.EnforceVersion(genVersion - protoimpl.MinVersion)
+//		// Verify that runtime/protoimpl is sufficiently up-to-date.
+//		_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - genVersion)
+//	)
+//
+// The genVersion is the current minor version used to generated the code.
+// This compile-time check relies on negative integer overflow of a uint
+// being a compilation failure (guaranteed by the Go specification).
+type EnforceVersion uint
+
+// This enforces the following invariant:
+//	MinVersion ≤ GenVersion ≤ MaxVersion
+const (
+	_ = EnforceVersion(GenVersion - MinVersion)
+	_ = EnforceVersion(MaxVersion - GenVersion)
+)
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 933772b..11ccbfa 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -1,4 +1,5 @@
-# github.com/RoaringBitmap/roaring v0.4.23
+# github.com/RoaringBitmap/roaring v0.5.5
+## explicit
 github.com/RoaringBitmap/roaring
 # github.com/blevesearch/bleve v1.0.14
 ## explicit
@@ -69,10 +70,11 @@ github.com/couchbase/vellum
 github.com/couchbase/vellum/levenshtein
 github.com/couchbase/vellum/regexp
 github.com/couchbase/vellum/utf8
-# github.com/glycerine/go-unsnap-stream v0.0.0-20190730064659-98d31706395a
+# github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a
 ## explicit
 github.com/glycerine/go-unsnap-stream
-# github.com/golang/protobuf v1.3.2
+# github.com/golang/protobuf v1.4.3
+## explicit
 github.com/golang/protobuf/proto
 # github.com/golang/snappy v0.0.2
 ## explicit
@@ -91,7 +93,7 @@ github.com/mschoch/smat
 # github.com/nfnt/resize v0.0.0-20160724205520-891127d8d1b5
 ## explicit
 github.com/nfnt/resize
-# github.com/philhofer/fwd v1.0.0
+# github.com/philhofer/fwd v1.1.1
 github.com/philhofer/fwd
 # github.com/steveyen/gtreap v0.1.0
 github.com/steveyen/gtreap
@@ -109,7 +111,7 @@ github.com/syndtr/goleveldb/leveldb/opt
 github.com/syndtr/goleveldb/leveldb/storage
 github.com/syndtr/goleveldb/leveldb/table
 github.com/syndtr/goleveldb/leveldb/util
-# github.com/tinylib/msgp v1.1.1-0.20190628005314-efe20429c9b7
+# github.com/tinylib/msgp v1.1.5
 ## explicit
 github.com/tinylib/msgp/msgp
 # github.com/willf/bitset v1.1.11
@@ -117,16 +119,16 @@ github.com/tinylib/msgp/msgp
 github.com/willf/bitset
 # go.etcd.io/bbolt v1.3.5
 go.etcd.io/bbolt
-# golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3
-## explicit
+# golang.org/x/net v0.0.0-20201021035429-f5854403a974
 golang.org/x/net/html
 golang.org/x/net/html/atom
 golang.org/x/net/html/charset
-# golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5
+# golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c
+## explicit
+golang.org/x/sys/internal/unsafeheader
 golang.org/x/sys/unix
 golang.org/x/sys/windows
-# golang.org/x/text v0.3.2
-## explicit
+# golang.org/x/text v0.3.3
 golang.org/x/text/encoding
 golang.org/x/text/encoding/charmap
 golang.org/x/text/encoding/htmlindex
@@ -144,3 +146,31 @@ golang.org/x/text/internal/utf8internal
 golang.org/x/text/language
 golang.org/x/text/runes
 golang.org/x/text/transform
+# google.golang.org/protobuf v1.25.0
+## explicit
+google.golang.org/protobuf/encoding/prototext
+google.golang.org/protobuf/encoding/protowire
+google.golang.org/protobuf/internal/descfmt
+google.golang.org/protobuf/internal/descopts
+google.golang.org/protobuf/internal/detrand
+google.golang.org/protobuf/internal/encoding/defval
+google.golang.org/protobuf/internal/encoding/messageset
+google.golang.org/protobuf/internal/encoding/tag
+google.golang.org/protobuf/internal/encoding/text
+google.golang.org/protobuf/internal/errors
+google.golang.org/protobuf/internal/fieldsort
+google.golang.org/protobuf/internal/filedesc
+google.golang.org/protobuf/internal/filetype
+google.golang.org/protobuf/internal/flags
+google.golang.org/protobuf/internal/genid
+google.golang.org/protobuf/internal/impl
+google.golang.org/protobuf/internal/mapsort
+google.golang.org/protobuf/internal/pragma
+google.golang.org/protobuf/internal/set
+google.golang.org/protobuf/internal/strs
+google.golang.org/protobuf/internal/version
+google.golang.org/protobuf/proto
+google.golang.org/protobuf/reflect/protoreflect
+google.golang.org/protobuf/reflect/protoregistry
+google.golang.org/protobuf/runtime/protoiface
+google.golang.org/protobuf/runtime/protoimpl
-- 
GitLab