Upgrade toybox to 7c6aecd477a9b898df981197088c9e1d5775fe9c

This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/toybox
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md

Test: TreeHugger
Change-Id: If64ef2632aa46dcb613767151719434e6ac28b2f
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..5d9ec2e
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,611 @@
+/*
+   --- To sync with upstream:
+
+    # Update source and regenerate generated files.
+    git remote add toybox https://github.com/landley/toybox.git
+    git fetch toybox && git merge toybox/master && ./regenerate.sh
+
+    # Make any necessary Android.bp changes and rebuild.
+    mm -j32
+
+    # Run all the tests.
+    ./run-tests-on-android.sh
+    # Run a single test.
+    ./run-tests-on-android.sh wc
+
+    # Upload changes.
+    git commit -a --amend
+    git push aosp HEAD:refs/for/master  # Push to gerrit for review.
+    git push aosp HEAD:master           # Push directly, avoiding gerrit.
+
+
+   --- To add a toy:
+
+    # Edit the three .config-* files to enable the toy you want for the targets
+    # you want it on, and regenerate the generated files:
+    ./post_update.sh .
+
+    # Edit the relevant `srcs` below, depending on where the toy should be
+    # available.
+
+    # If you just want to use the toy via "toybox x" rather than "x", you can
+    # stop now. If you want this toy to have a symbolic link in /system/bin,
+    # add the toy to `symlinks` below.
+
+*/
+
+package {
+    default_applicable_licenses: ["external_toybox_license"],
+}
+
+license {
+    name: "external_toybox_license",
+    visibility: [":__subpackages__"],
+    license_kinds: [
+        "SPDX-license-identifier-0BSD",
+        "SPDX-license-identifier-CC0-1.0",
+        "SPDX-license-identifier-Unlicense",
+        "legacy_unencumbered",
+    ],
+    license_text: [
+        "LICENSE",
+    ],
+}
+
+all_srcs = [
+    "lib/args.c",
+    "lib/commas.c",
+    "lib/dirtree.c",
+    "lib/elf.c",
+    "lib/env.c",
+    "lib/hash.c",
+    "lib/lib.c",
+    "lib/llist.c",
+    "lib/net.c",
+    "lib/portability.c",
+    "lib/tty.c",
+    "lib/utf8.c",
+    "lib/xwrap.c",
+    "main.c",
+    "toys/lsb/gzip.c",
+    "toys/lsb/hostname.c",
+    "toys/lsb/md5sum.c",
+    "toys/lsb/mktemp.c",
+    "toys/lsb/seq.c",
+    "toys/net/microcom.c",
+    "toys/other/dos2unix.c",
+    "toys/other/getopt.c",
+    "toys/other/readlink.c",
+    "toys/other/setsid.c",
+    "toys/other/stat.c",
+    "toys/other/timeout.c",
+    "toys/other/truncate.c",
+    "toys/other/which.c",
+    "toys/other/xxd.c",
+    "toys/other/yes.c",
+    "toys/pending/diff.c",
+    "toys/pending/expr.c",
+    "toys/pending/tr.c",
+    "toys/posix/basename.c",
+    "toys/posix/cat.c",
+    "toys/posix/chmod.c",
+    "toys/posix/cmp.c",
+    "toys/posix/comm.c",
+    "toys/posix/cp.c",
+    "toys/posix/cpio.c",
+    "toys/posix/cut.c",
+    "toys/posix/date.c",
+    "toys/posix/dd.c",
+    "toys/posix/dirname.c",
+    "toys/posix/du.c",
+    "toys/posix/echo.c",
+    "toys/posix/env.c",
+    "toys/posix/file.c",
+    "toys/posix/find.c",
+    "toys/posix/getconf.c",
+    "toys/posix/grep.c",
+    "toys/posix/head.c",
+    "toys/posix/id.c",
+    "toys/posix/ln.c",
+    "toys/posix/ls.c",
+    "toys/posix/mkdir.c",
+    "toys/posix/nl.c",
+    "toys/posix/od.c",
+    "toys/posix/paste.c",
+    "toys/posix/patch.c",
+    "toys/posix/printf.c",
+    "toys/posix/pwd.c",
+    "toys/posix/rm.c",
+    "toys/posix/rmdir.c",
+    "toys/posix/sed.c",
+    "toys/posix/sleep.c",
+    "toys/posix/sort.c",
+    "toys/posix/tail.c",
+    "toys/posix/tar.c",
+    "toys/posix/tee.c",
+    "toys/posix/test.c",
+    "toys/posix/touch.c",
+    "toys/posix/true.c",
+    "toys/posix/uname.c",
+    "toys/posix/uniq.c",
+    "toys/posix/wc.c",
+    "toys/posix/xargs.c",
+]
+
+linux_srcs = [
+    "toys/posix/ps.c",
+    "toys/other/flock.c",
+    "toys/other/taskset.c",
+]
+
+device_srcs = [
+    "toys/android/getenforce.c",
+    "toys/android/load_policy.c",
+    "toys/android/log.c",
+    "toys/android/restorecon.c",
+    "toys/android/runcon.c",
+    "toys/android/sendevent.c",
+    "toys/android/setenforce.c",
+    "toys/lsb/dmesg.c",
+    "toys/lsb/killall.c",
+    "toys/lsb/mknod.c",
+    "toys/lsb/mount.c",
+    "toys/lsb/pidof.c",
+    "toys/lsb/sync.c",
+    "toys/lsb/umount.c",
+    "toys/net/ifconfig.c",
+    "toys/net/netcat.c",
+    "toys/net/netstat.c",
+    "toys/net/ping.c",
+    "toys/net/rfkill.c",
+    "toys/net/tunctl.c",
+    "toys/other/acpi.c",
+    "toys/other/base64.c",
+    "toys/other/blkdiscard.c",
+    "toys/other/blkid.c",
+    "toys/other/blockdev.c",
+    "toys/other/chcon.c",
+    "toys/other/chroot.c",
+    "toys/other/chrt.c",
+    "toys/other/clear.c",
+    "toys/other/devmem.c",
+    "toys/other/fallocate.c",
+    "toys/other/fmt.c",
+    "toys/other/free.c",
+    "toys/other/freeramdisk.c",
+    "toys/other/fsfreeze.c",
+    "toys/other/fsync.c",
+    "toys/other/gpiod.c",
+    "toys/other/help.c",
+    "toys/other/hwclock.c",
+    "toys/other/i2ctools.c",
+    "toys/other/inotifyd.c",
+    "toys/other/insmod.c",
+    "toys/other/ionice.c",
+    "toys/other/losetup.c",
+    "toys/other/lsattr.c",
+    "toys/other/lsmod.c",
+    "toys/other/lsusb.c",
+    "toys/other/makedevs.c",
+    "toys/other/memeater.c",
+    "toys/other/mkswap.c",
+    "toys/other/modinfo.c",
+    "toys/other/mountpoint.c",
+    "toys/other/nbd_client.c",
+    "toys/other/nsenter.c",
+    "toys/other/partprobe.c",
+    "toys/other/pivot_root.c",
+    "toys/other/pmap.c",
+    "toys/other/printenv.c",
+    "toys/other/pwdx.c",
+    "toys/other/readelf.c",
+    "toys/other/rev.c",
+    "toys/other/rmmod.c",
+    "toys/other/rtcwake.c",
+    "toys/other/setfattr.c",
+    "toys/other/swapoff.c",
+    "toys/other/swapon.c",
+    "toys/other/sysctl.c",
+    "toys/other/tac.c",
+    "toys/other/uclampset.c",
+    "toys/other/uptime.c",
+    "toys/other/usleep.c",
+    "toys/other/uuidgen.c",
+    "toys/other/vconfig.c",
+    "toys/other/vmstat.c",
+    "toys/other/watch.c",
+    "toys/pending/brctl.c",
+    "toys/pending/getfattr.c",
+    "toys/pending/lsof.c",
+    "toys/pending/modprobe.c",
+    "toys/pending/more.c",
+    "toys/pending/stty.c",
+    "toys/pending/traceroute.c",
+    "toys/pending/vi.c",
+    "toys/posix/cal.c",
+    "toys/posix/chgrp.c",
+    "toys/posix/cksum.c",
+    "toys/posix/df.c",
+    "toys/posix/expand.c",
+    "toys/posix/false.c",
+    "toys/posix/iconv.c",
+    "toys/posix/kill.c",
+    "toys/posix/logger.c",
+    "toys/posix/mkfifo.c",
+    "toys/posix/nice.c",
+    "toys/posix/nohup.c",
+    "toys/posix/renice.c",
+    "toys/posix/split.c",
+    "toys/posix/strings.c",
+    "toys/posix/time.c",
+    "toys/posix/tty.c",
+    "toys/posix/ulimit.c",
+    "toys/posix/unlink.c",
+    "toys/posix/uudecode.c",
+    "toys/posix/uuencode.c",
+]
+
+toybox_symlinks = [
+    "[",
+    "acpi",
+    "base64",
+    "basename",
+    "blockdev",
+    "brctl",
+    "cal",
+    "cat",
+    "chattr",
+    "chcon",
+    "chgrp",
+    "chmod",
+    "chown",
+    "chroot",
+    "chrt",
+    "cksum",
+    "clear",
+    "comm",
+    "cmp",
+    "cp",
+    "cpio",
+    "cut",
+    "date",
+    "dd",
+    "devmem",
+    "df",
+    "diff",
+    "dirname",
+    "dmesg",
+    "dos2unix",
+    "du",
+    "echo",
+    "egrep",
+    "env",
+    "expand",
+    "expr",
+    "fallocate",
+    "false",
+    "fgrep",
+    "file",
+    "find",
+    "flock",
+    "fmt",
+    "free",
+    "fsync",
+    "getconf",
+    "getenforce",
+    "getfattr",
+    "getopt",
+    "gpiodetect",
+    "gpiofind",
+    "gpioget",
+    "gpioinfo",
+    "gpioset",
+    "grep",
+    "groups",
+    "gunzip",
+    "gzip",
+    "head",
+    "hostname",
+    "hwclock",
+    "i2cdetect",
+    "i2cdump",
+    "i2cget",
+    "i2cset",
+    "i2ctransfer",
+    "iconv",
+    "id",
+    "ifconfig",
+    "inotifyd",
+    "insmod",
+    "install",
+    "ionice",
+    "iorenice",
+    "kill",
+    "killall",
+    "load_policy",
+    "ln",
+    "log",
+    "logger",
+    "logname",
+    "losetup",
+    "ls",
+    "lsattr",
+    "lsmod",
+    "lsof",
+    "lspci",
+    "lsusb",
+    "md5sum",
+    "memeater",
+    "mkdir",
+    "mkfifo",
+    "mknod",
+    "mkswap",
+    "mktemp",
+    "microcom",
+    "modinfo",
+    "more",
+    "mount",
+    "mountpoint",
+    "mv",
+    "nc",
+    "netcat",
+    "netstat",
+    "nice",
+    "nl",
+    "nohup",
+    "nproc",
+    "nsenter",
+    "od",
+    "paste",
+    "patch",
+    "pgrep",
+    "pidof",
+    "pkill",
+    "pmap",
+    "printenv",
+    "printf",
+    "ps",
+    "pwd",
+    "readelf",
+    "readlink",
+    "realpath",
+    "renice",
+    "restorecon",
+    "rm",
+    "rmdir",
+    "rmmod",
+    "rtcwake",
+    "runcon",
+    "sed",
+    "sendevent",
+    "seq",
+    "setenforce",
+    "setfattr",
+    "setsid",
+    "sha1sum",
+    "sha224sum",
+    "sha256sum",
+    "sha384sum",
+    "sha512sum",
+    "sleep",
+    "sort",
+    "split",
+    "stat",
+    "strings",
+    "stty",
+    "swapoff",
+    "swapon",
+    "sync",
+    "sysctl",
+    "tac",
+    "tail",
+    "tar",
+    "taskset",
+    "tee",
+    "test",
+    "time",
+    "timeout",
+    "top",
+    "touch",
+    "tr",
+    "true",
+    "truncate",
+    "tty",
+    "uclampset",
+    "ulimit",
+    "umount",
+    "uname",
+    "uniq",
+    "unix2dos",
+    "unlink",
+    "unshare",
+    "uptime",
+    "usleep",
+    "uudecode",
+    "uuencode",
+    "uuidgen",
+    "vi",
+    "vmstat",
+    "watch",
+    "wc",
+    "which",
+    "whoami",
+    "xargs",
+    "xxd",
+    "yes",
+    "zcat",
+]
+
+cc_defaults {
+    name: "toybox-defaults",
+    srcs: all_srcs,
+
+    cflags: [
+        "-Os",
+        "-Wall",
+        "-Werror",
+        "-Wno-char-subscripts",
+        "-Wno-deprecated-declarations",
+        "-Wno-invalid-source-encoding",
+        "-Wno-missing-field-initializers",
+        "-Wno-pointer-arith",
+        "-Wno-sign-compare",
+        "-Wno-string-plus-int",
+        "-Wno-unused-parameter",
+        "-Wno-unused-variable",
+        "-funsigned-char",
+        "-ffunction-sections",
+        "-fdata-sections",
+        "-fno-asynchronous-unwind-tables",
+        "-DTOYBOX_VENDOR=\"-android\"",
+    ],
+
+    target: {
+        host_linux: {
+            local_include_dirs: ["android/linux"],
+        },
+
+        darwin: {
+            local_include_dirs: ["android/mac"],
+            cflags: [
+                // macOS' getgroups(3) signature differs.
+                "-Wno-pointer-sign",
+                // diff.c defines MIN and MAX which (only on macOS) we're
+                // also getting from <sys/param.h>.
+                "-Wno-macro-redefined",
+            ],
+            ldflags: [
+                "-Wl,-dead_strip",
+            ],
+        },
+
+        linux: {
+            srcs: linux_srcs,
+        },
+
+        android: {
+            local_include_dirs: ["android/device"],
+            srcs: device_srcs,
+        },
+    },
+}
+
+//###########################################
+// toybox for /system, /vendor, and /recovery
+//###########################################
+
+cc_defaults {
+    name: "toybox-shared-defaults",
+    defaults: ["toybox-defaults"],
+
+    // This doesn't actually prevent us from dragging in libc++ at runtime
+    // on the device because libnetd_client.so is C++, but it improves host
+    // startup time.
+    stl: "none",
+
+    target: {
+        android: {
+            shared_libs: [
+                "libcrypto",
+                "liblog",
+                "libprocessgroup",
+                "libselinux",
+                "libz",
+            ],
+            symlinks: toybox_symlinks,
+        },
+        host: {
+            static_libs: [
+                "libcrypto",
+                "libz",
+            ],
+        },
+    },
+}
+
+cc_binary {
+    name: "toybox",
+    defaults: ["toybox-shared-defaults"],
+    host_supported: true,
+    recovery_available: true,
+    vendor_ramdisk_available: true,
+}
+
+cc_binary {
+    name: "toybox_vendor",
+    defaults: ["toybox-shared-defaults"],
+    vendor: true,
+}
+
+//###########################################
+// Static toybox binaries for legacy devices
+//###########################################
+
+cc_binary {
+    name: "toybox-static",
+    defaults: ["toybox-defaults"],
+    static_executable: true,
+    compile_multilib: "both",
+    multilib: {
+        lib32: {
+            suffix: "32",
+        },
+        lib64: {
+            suffix: "64",
+        },
+    },
+    stl: "libc++_static",
+    static_libs: [
+        "libc",
+        "libm",
+        "libz",
+        "libbase",
+        "libcgrouprc",
+        "libcgrouprc_format",
+        "libcrypto_static",
+        "liblog",
+        "libprocessgroup",
+        "libselinux",
+    ],
+    dist: {
+        targets: [
+            "sdk",
+        ],
+    },
+}
+
+//###########################################
+// Running the toybox tests
+//###########################################
+
+sh_test {
+    name: "toybox-tests",
+    src: "run-tests-on-android.sh",
+    filename: "run-tests-on-android.sh",
+    test_suites: ["general-tests"],
+    host_supported: true,
+    device_supported: false,
+    require_root: true,
+    data: [
+        "tests/**/*",
+        "scripts/runtest.sh",
+    ],
+}
+
+cc_test {
+    name: "toybox-gtests",
+    compile_multilib: "first",
+    srcs: [
+        "toybox-gtests.cpp",
+    ],
+    static_libs: [
+        "libbase",
+        "liblog",
+    ],
+    test_suites: ["device-tests"],
+    require_root: true,
+    data: [
+        "tests/**/*",
+        "scripts/runtest.sh",
+    ],
+}
diff --git a/METADATA b/METADATA
new file mode 100644
index 0000000..8730ee2
--- /dev/null
+++ b/METADATA
@@ -0,0 +1,20 @@
+# This project was upgraded with external_updater.
+# Usage: tools/external_updater/updater.sh update external/toybox
+# For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
+
+name: "toybox"
+description: "Toybox: all-in-one Linux command line."
+third_party {
+  license_type: UNENCUMBERED
+  last_upgrade_date {
+    year: 2024
+    month: 4
+    day: 22
+  }
+  homepage: "https://landley.net/toybox/"
+  identifier {
+    type: "Git"
+    value: "https://github.com/landley/toybox"
+    version: "7c6aecd477a9b898df981197088c9e1d5775fe9c"
+  }
+}
diff --git a/MODULE_LICENSE_BSD b/MODULE_LICENSE_BSD
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/MODULE_LICENSE_BSD
diff --git a/OWNERS b/OWNERS
new file mode 100644
index 0000000..7529cb9
--- /dev/null
+++ b/OWNERS
@@ -0,0 +1 @@
+include platform/system/core:/janitors/OWNERS
diff --git a/TEST_MAPPING b/TEST_MAPPING
new file mode 100644
index 0000000..0b110f9
--- /dev/null
+++ b/TEST_MAPPING
@@ -0,0 +1,25 @@
+{
+  "presubmit": [
+    {
+      "name": "toybox-tests"
+    },
+    {
+      "name": "aidl_integration_test"
+    }
+  ],
+  "postsubmit": [
+    {
+      "name": "toybox-gtests"
+    }
+  ],
+  "hwasan-postsubmit": [
+    {
+      "name": "toybox-tests"
+    }
+  ],
+  "kernel-presubmit": [
+    {
+      "name": "toybox-tests"
+    }
+  ]
+}
diff --git a/android/device/generated/config.h b/android/device/generated/config.h
new file mode 100644
index 0000000..7dca383
--- /dev/null
+++ b/android/device/generated/config.h
@@ -0,0 +1,678 @@
+#define CFG_TOYBOX 1
+#define USE_TOYBOX(...) __VA_ARGS__
+#define CFG_TOYBOX_DEBUG 0
+#define USE_TOYBOX_DEBUG(...)
+#define CFG_TOYBOX_FLOAT 1
+#define USE_TOYBOX_FLOAT(...) __VA_ARGS__
+#define CFG_TOYBOX_FORK 1
+#define USE_TOYBOX_FORK(...) __VA_ARGS__
+#define CFG_TOYBOX_FREE 0
+#define USE_TOYBOX_FREE(...)
+#define CFG_TOYBOX_HELP_DASHDASH 1
+#define USE_TOYBOX_HELP_DASHDASH(...) __VA_ARGS__
+#define CFG_TOYBOX_HELP 1
+#define USE_TOYBOX_HELP(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBCRYPTO 1
+#define USE_TOYBOX_LIBCRYPTO(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBZ 1
+#define USE_TOYBOX_LIBZ(...) __VA_ARGS__
+#define CFG_TOYBOX_LSM_NONE 0
+#define USE_TOYBOX_LSM_NONE(...)
+#define CFG_TOYBOX_NORECURSE 1
+#define USE_TOYBOX_NORECURSE(...) __VA_ARGS__
+#define CFG_TOYBOX_ON_ANDROID 1
+#define USE_TOYBOX_ON_ANDROID(...) __VA_ARGS__
+#define CFG_TOYBOX_SELINUX 1
+#define USE_TOYBOX_SELINUX(...) __VA_ARGS__
+#define CFG_TOYBOX_SMACK 0
+#define USE_TOYBOX_SMACK(...)
+#define CFG_TOYBOX_SUID 0
+#define USE_TOYBOX_SUID(...)
+#define CFG_TOYBOX_UID_SYS 100
+#define CFG_TOYBOX_UID_USR 500
+#define CFG_TOYBOX_ZHELP 0
+#define USE_TOYBOX_ZHELP(...)
+#define CFG_ACPI 1
+#define USE_ACPI(...) __VA_ARGS__
+#define CFG_ARCH 0
+#define USE_ARCH(...)
+#define CFG_ARPING 0
+#define USE_ARPING(...)
+#define CFG_ARP 0
+#define USE_ARP(...)
+#define CFG_ASCII 0
+#define USE_ASCII(...)
+#define CFG_BASE32 0
+#define USE_BASE32(...)
+#define CFG_BASE64 1
+#define USE_BASE64(...) __VA_ARGS__
+#define CFG_BASENAME 1
+#define USE_BASENAME(...) __VA_ARGS__
+#define CFG_BC 0
+#define USE_BC(...)
+#define CFG_BLKDISCARD 1
+#define USE_BLKDISCARD(...) __VA_ARGS__
+#define CFG_BLKID 1
+#define USE_BLKID(...) __VA_ARGS__
+#define CFG_BLOCKDEV 1
+#define USE_BLOCKDEV(...) __VA_ARGS__
+#define CFG_BOOTCHARTD 0
+#define USE_BOOTCHARTD(...)
+#define CFG_BRCTL 1
+#define USE_BRCTL(...) __VA_ARGS__
+#define CFG_BUNZIP2 0
+#define USE_BUNZIP2(...)
+#define CFG_BZCAT 0
+#define USE_BZCAT(...)
+#define CFG_CAL 1
+#define USE_CAL(...) __VA_ARGS__
+#define CFG_CAT 1
+#define USE_CAT(...) __VA_ARGS__
+#define CFG_CD 0
+#define USE_CD(...)
+#define CFG_CHATTR 1
+#define USE_CHATTR(...) __VA_ARGS__
+#define CFG_CHCON 1
+#define USE_CHCON(...) __VA_ARGS__
+#define CFG_CHGRP 1
+#define USE_CHGRP(...) __VA_ARGS__
+#define CFG_CHMOD 1
+#define USE_CHMOD(...) __VA_ARGS__
+#define CFG_CHOWN 1
+#define USE_CHOWN(...) __VA_ARGS__
+#define CFG_CHROOT 1
+#define USE_CHROOT(...) __VA_ARGS__
+#define CFG_CHRT 1
+#define USE_CHRT(...) __VA_ARGS__
+#define CFG_CHSH 0
+#define USE_CHSH(...)
+#define CFG_CHVT 0
+#define USE_CHVT(...)
+#define CFG_CKSUM 1
+#define USE_CKSUM(...) __VA_ARGS__
+#define CFG_CLEAR 1
+#define USE_CLEAR(...) __VA_ARGS__
+#define CFG_CMP 1
+#define USE_CMP(...) __VA_ARGS__
+#define CFG_COMM 1
+#define USE_COMM(...) __VA_ARGS__
+#define CFG_COUNT 0
+#define USE_COUNT(...)
+#define CFG_CPIO 1
+#define USE_CPIO(...) __VA_ARGS__
+#define CFG_CP 1
+#define USE_CP(...) __VA_ARGS__
+#define CFG_CRC32 0
+#define USE_CRC32(...)
+#define CFG_CROND 0
+#define USE_CROND(...)
+#define CFG_CRONTAB 0
+#define USE_CRONTAB(...)
+#define CFG_CSPLIT 0
+#define USE_CSPLIT(...)
+#define CFG_CUT 1
+#define USE_CUT(...) __VA_ARGS__
+#define CFG_DATE 1
+#define USE_DATE(...) __VA_ARGS__
+#define CFG_DD 1
+#define USE_DD(...) __VA_ARGS__
+#define CFG_DEALLOCVT 0
+#define USE_DEALLOCVT(...)
+#define CFG_DEBUG_DHCP 0
+#define USE_DEBUG_DHCP(...)
+#define CFG_DEMO_MANY_OPTIONS 0
+#define USE_DEMO_MANY_OPTIONS(...)
+#define CFG_DEMO_NUMBER 0
+#define USE_DEMO_NUMBER(...)
+#define CFG_DEMO_SCANKEY 0
+#define USE_DEMO_SCANKEY(...)
+#define CFG_DEMO_UTF8TOWC 0
+#define USE_DEMO_UTF8TOWC(...)
+#define CFG_DEVMEM 1
+#define USE_DEVMEM(...) __VA_ARGS__
+#define CFG_DF 1
+#define USE_DF(...) __VA_ARGS__
+#define CFG_DHCP6 0
+#define USE_DHCP6(...)
+#define CFG_DHCPD 0
+#define USE_DHCPD(...)
+#define CFG_DHCP 0
+#define USE_DHCP(...)
+#define CFG_DIFF 1
+#define USE_DIFF(...) __VA_ARGS__
+#define CFG_DIRNAME 1
+#define USE_DIRNAME(...) __VA_ARGS__
+#define CFG_DMESG 1
+#define USE_DMESG(...) __VA_ARGS__
+#define CFG_DNSDOMAINNAME 0
+#define USE_DNSDOMAINNAME(...)
+#define CFG_DOS2UNIX 1
+#define USE_DOS2UNIX(...) __VA_ARGS__
+#define CFG_DUMPLEASES 0
+#define USE_DUMPLEASES(...)
+#define CFG_DU 1
+#define USE_DU(...) __VA_ARGS__
+#define CFG_ECHO 1
+#define USE_ECHO(...) __VA_ARGS__
+#define CFG_EGREP 1
+#define USE_EGREP(...) __VA_ARGS__
+#define CFG_EJECT 0
+#define USE_EJECT(...)
+#define CFG_ENV 1
+#define USE_ENV(...) __VA_ARGS__
+#define CFG_EXIT 0
+#define USE_EXIT(...)
+#define CFG_EXPAND 1
+#define USE_EXPAND(...) __VA_ARGS__
+#define CFG_EXPR 1
+#define USE_EXPR(...) __VA_ARGS__
+#define CFG_FACTOR 0
+#define USE_FACTOR(...)
+#define CFG_FALLOCATE 1
+#define USE_FALLOCATE(...) __VA_ARGS__
+#define CFG_FALSE 1
+#define USE_FALSE(...) __VA_ARGS__
+#define CFG_FDISK 0
+#define USE_FDISK(...)
+#define CFG_FGREP 1
+#define USE_FGREP(...) __VA_ARGS__
+#define CFG_FILE 1
+#define USE_FILE(...) __VA_ARGS__
+#define CFG_FIND 1
+#define USE_FIND(...) __VA_ARGS__
+#define CFG_FLOCK 1
+#define USE_FLOCK(...) __VA_ARGS__
+#define CFG_FMT 1
+#define USE_FMT(...) __VA_ARGS__
+#define CFG_FOLD 0
+#define USE_FOLD(...)
+#define CFG_FREERAMDISK 1
+#define USE_FREERAMDISK(...) __VA_ARGS__
+#define CFG_FREE 1
+#define USE_FREE(...) __VA_ARGS__
+#define CFG_FSCK 0
+#define USE_FSCK(...)
+#define CFG_FSFREEZE 1
+#define USE_FSFREEZE(...) __VA_ARGS__
+#define CFG_FSTYPE 0
+#define USE_FSTYPE(...)
+#define CFG_FSYNC 1
+#define USE_FSYNC(...) __VA_ARGS__
+#define CFG_FTPGET 0
+#define USE_FTPGET(...)
+#define CFG_FTPPUT 0
+#define USE_FTPPUT(...)
+#define CFG_GETCONF 1
+#define USE_GETCONF(...) __VA_ARGS__
+#define CFG_GETENFORCE 1
+#define USE_GETENFORCE(...) __VA_ARGS__
+#define CFG_GETFATTR 1
+#define USE_GETFATTR(...) __VA_ARGS__
+#define CFG_GETOPT 1
+#define USE_GETOPT(...) __VA_ARGS__
+#define CFG_GETTY 0
+#define USE_GETTY(...)
+#define CFG_GITCHECKOUT 0
+#define USE_GITCHECKOUT(...)
+#define CFG_GITCLONE 0
+#define USE_GITCLONE(...)
+#define CFG_GITCOMPAT 0
+#define USE_GITCOMPAT(...)
+#define CFG_GITFETCH 0
+#define USE_GITFETCH(...)
+#define CFG_GITINIT 0
+#define USE_GITINIT(...)
+#define CFG_GITREMOTE 0
+#define USE_GITREMOTE(...)
+#define CFG_GPIODETECT 1
+#define USE_GPIODETECT(...) __VA_ARGS__
+#define CFG_GPIOFIND 1
+#define USE_GPIOFIND(...) __VA_ARGS__
+#define CFG_GPIOGET 1
+#define USE_GPIOGET(...) __VA_ARGS__
+#define CFG_GPIOINFO 1
+#define USE_GPIOINFO(...) __VA_ARGS__
+#define CFG_GPIOSET 1
+#define USE_GPIOSET(...) __VA_ARGS__
+#define CFG_GREP 1
+#define USE_GREP(...) __VA_ARGS__
+#define CFG_GROUPADD 0
+#define USE_GROUPADD(...)
+#define CFG_GROUPDEL 0
+#define USE_GROUPDEL(...)
+#define CFG_GROUPS 1
+#define USE_GROUPS(...) __VA_ARGS__
+#define CFG_GUNZIP 1
+#define USE_GUNZIP(...) __VA_ARGS__
+#define CFG_GZIP 1
+#define USE_GZIP(...) __VA_ARGS__
+#define CFG_HEAD 1
+#define USE_HEAD(...) __VA_ARGS__
+#define CFG_HELLO 0
+#define USE_HELLO(...)
+#define CFG_HELP 1
+#define USE_HELP(...) __VA_ARGS__
+#define CFG_HEXDUMP 0
+#define USE_HEXDUMP(...)
+#define CFG_HEXEDIT 0
+#define USE_HEXEDIT(...)
+#define CFG_HD 0
+#define USE_HD(...)
+#define CFG_HOSTID 0
+#define USE_HOSTID(...)
+#define CFG_HOST 0
+#define USE_HOST(...)
+#define CFG_HOSTNAME 1
+#define USE_HOSTNAME(...) __VA_ARGS__
+#define CFG_HTTPD 0
+#define USE_HTTPD(...)
+#define CFG_HWCLOCK 1
+#define USE_HWCLOCK(...) __VA_ARGS__
+#define CFG_I2CDETECT 1
+#define USE_I2CDETECT(...) __VA_ARGS__
+#define CFG_I2CDUMP 1
+#define USE_I2CDUMP(...) __VA_ARGS__
+#define CFG_I2CGET 1
+#define USE_I2CGET(...) __VA_ARGS__
+#define CFG_I2CSET 1
+#define USE_I2CSET(...) __VA_ARGS__
+#define CFG_I2CTRANSFER 1
+#define USE_I2CTRANSFER(...) __VA_ARGS__
+#define CFG_ICONV 1
+#define USE_ICONV(...) __VA_ARGS__
+#define CFG_ID 1
+#define USE_ID(...) __VA_ARGS__
+#define CFG_ID_Z 1
+#define USE_ID_Z(...) __VA_ARGS__
+#define CFG_IFCONFIG 1
+#define USE_IFCONFIG(...) __VA_ARGS__
+#define CFG_INIT 0
+#define USE_INIT(...)
+#define CFG_INOTIFYD 1
+#define USE_INOTIFYD(...) __VA_ARGS__
+#define CFG_INSMOD 1
+#define USE_INSMOD(...) __VA_ARGS__
+#define CFG_INSTALL 1
+#define USE_INSTALL(...) __VA_ARGS__
+#define CFG_IONICE 1
+#define USE_IONICE(...) __VA_ARGS__
+#define CFG_IORENICE 1
+#define USE_IORENICE(...) __VA_ARGS__
+#define CFG_IOTOP 1
+#define USE_IOTOP(...) __VA_ARGS__
+#define CFG_IPCRM 0
+#define USE_IPCRM(...)
+#define CFG_IPCS 0
+#define USE_IPCS(...)
+#define CFG_IP 0
+#define USE_IP(...)
+#define CFG_KILLALL5 0
+#define USE_KILLALL5(...)
+#define CFG_KILLALL 1
+#define USE_KILLALL(...) __VA_ARGS__
+#define CFG_KILL 1
+#define USE_KILL(...) __VA_ARGS__
+#define CFG_KLOGD 0
+#define USE_KLOGD(...)
+#define CFG_KLOGD_SOURCE_RING_BUFFER 0
+#define USE_KLOGD_SOURCE_RING_BUFFER(...)
+#define CFG_LAST 0
+#define USE_LAST(...)
+#define CFG_LINK 0
+#define USE_LINK(...)
+#define CFG_LINUX32 0
+#define USE_LINUX32(...)
+#define CFG_LN 1
+#define USE_LN(...) __VA_ARGS__
+#define CFG_LOAD_POLICY 1
+#define USE_LOAD_POLICY(...) __VA_ARGS__
+#define CFG_LOGGER 1
+#define USE_LOGGER(...) __VA_ARGS__
+#define CFG_LOGIN 0
+#define USE_LOGIN(...)
+#define CFG_LOGNAME 1
+#define USE_LOGNAME(...) __VA_ARGS__
+#define CFG_LOGPATH 0
+#define USE_LOGPATH(...)
+#define CFG_LOG 1
+#define USE_LOG(...) __VA_ARGS__
+#define CFG_LOSETUP 1
+#define USE_LOSETUP(...) __VA_ARGS__
+#define CFG_LSATTR 1
+#define USE_LSATTR(...) __VA_ARGS__
+#define CFG_LSMOD 1
+#define USE_LSMOD(...) __VA_ARGS__
+#define CFG_LSOF 1
+#define USE_LSOF(...) __VA_ARGS__
+#define CFG_LSPCI 1
+#define USE_LSPCI(...) __VA_ARGS__
+#define CFG_LSUSB 1
+#define USE_LSUSB(...) __VA_ARGS__
+#define CFG_LS 1
+#define USE_LS(...) __VA_ARGS__
+#define CFG_MAKEDEVS 1
+#define USE_MAKEDEVS(...) __VA_ARGS__
+#define CFG_MAN 0
+#define USE_MAN(...)
+#define CFG_MCOOKIE 0
+#define USE_MCOOKIE(...)
+#define CFG_MD5SUM 1
+#define USE_MD5SUM(...) __VA_ARGS__
+#define CFG_MDEV_CONF 0
+#define USE_MDEV_CONF(...)
+#define CFG_MDEV 0
+#define USE_MDEV(...)
+#define CFG_MEMEATER 1
+#define USE_MEMEATER(...) __VA_ARGS__
+#define CFG_MICROCOM 1
+#define USE_MICROCOM(...) __VA_ARGS__
+#define CFG_MIX 0
+#define USE_MIX(...)
+#define CFG_MKDIR 1
+#define USE_MKDIR(...) __VA_ARGS__
+#define CFG_MKDIR_Z 1
+#define USE_MKDIR_Z(...) __VA_ARGS__
+#define CFG_MKE2FS_EXTENDED 0
+#define USE_MKE2FS_EXTENDED(...)
+#define CFG_MKE2FS_GEN 0
+#define USE_MKE2FS_GEN(...)
+#define CFG_MKE2FS 0
+#define USE_MKE2FS(...)
+#define CFG_MKE2FS_JOURNAL 0
+#define USE_MKE2FS_JOURNAL(...)
+#define CFG_MKE2FS_LABEL 0
+#define USE_MKE2FS_LABEL(...)
+#define CFG_MKFIFO 1
+#define USE_MKFIFO(...) __VA_ARGS__
+#define CFG_MKFIFO_Z 1
+#define USE_MKFIFO_Z(...) __VA_ARGS__
+#define CFG_MKNOD 1
+#define USE_MKNOD(...) __VA_ARGS__
+#define CFG_MKNOD_Z 1
+#define USE_MKNOD_Z(...) __VA_ARGS__
+#define CFG_MKPASSWD 0
+#define USE_MKPASSWD(...)
+#define CFG_MKSWAP 1
+#define USE_MKSWAP(...) __VA_ARGS__
+#define CFG_MKTEMP 1
+#define USE_MKTEMP(...) __VA_ARGS__
+#define CFG_MODINFO 1
+#define USE_MODINFO(...) __VA_ARGS__
+#define CFG_MODPROBE 1
+#define USE_MODPROBE(...) __VA_ARGS__
+#define CFG_MORE 1
+#define USE_MORE(...) __VA_ARGS__
+#define CFG_MOUNTPOINT 1
+#define USE_MOUNTPOINT(...) __VA_ARGS__
+#define CFG_MOUNT 1
+#define USE_MOUNT(...) __VA_ARGS__
+#define CFG_MV 1
+#define USE_MV(...) __VA_ARGS__
+#define CFG_NBD_CLIENT 1
+#define USE_NBD_CLIENT(...) __VA_ARGS__
+#define CFG_NBD_SERVER 0
+#define USE_NBD_SERVER(...)
+#define CFG_NETCAT 1
+#define USE_NETCAT(...) __VA_ARGS__
+#define CFG_NETSTAT 1
+#define USE_NETSTAT(...) __VA_ARGS__
+#define CFG_NICE 1
+#define USE_NICE(...) __VA_ARGS__
+#define CFG_NL 1
+#define USE_NL(...) __VA_ARGS__
+#define CFG_NOHUP 1
+#define USE_NOHUP(...) __VA_ARGS__
+#define CFG_NPROC 1
+#define USE_NPROC(...) __VA_ARGS__
+#define CFG_NSENTER 1
+#define USE_NSENTER(...) __VA_ARGS__
+#define CFG_OD 1
+#define USE_OD(...) __VA_ARGS__
+#define CFG_ONEIT 0
+#define USE_ONEIT(...)
+#define CFG_OPENVT 0
+#define USE_OPENVT(...)
+#define CFG_PARTPROBE 1
+#define USE_PARTPROBE(...) __VA_ARGS__
+#define CFG_PASSWD 0
+#define USE_PASSWD(...)
+#define CFG_PASTE 1
+#define USE_PASTE(...) __VA_ARGS__
+#define CFG_PATCH 1
+#define USE_PATCH(...) __VA_ARGS__
+#define CFG_PGREP 1
+#define USE_PGREP(...) __VA_ARGS__
+#define CFG_PIDOF 1
+#define USE_PIDOF(...) __VA_ARGS__
+#define CFG_PING 1
+#define USE_PING(...) __VA_ARGS__
+#define CFG_PIVOT_ROOT 1
+#define USE_PIVOT_ROOT(...) __VA_ARGS__
+#define CFG_PKILL 1
+#define USE_PKILL(...) __VA_ARGS__
+#define CFG_PMAP 1
+#define USE_PMAP(...) __VA_ARGS__
+#define CFG_PRINTENV 1
+#define USE_PRINTENV(...) __VA_ARGS__
+#define CFG_PRINTF 1
+#define USE_PRINTF(...) __VA_ARGS__
+#define CFG_PS 1
+#define USE_PS(...) __VA_ARGS__
+#define CFG_PWDX 1
+#define USE_PWDX(...) __VA_ARGS__
+#define CFG_PWD 1
+#define USE_PWD(...) __VA_ARGS__
+#define CFG_PWGEN 0
+#define USE_PWGEN(...)
+#define CFG_READAHEAD 0
+#define USE_READAHEAD(...)
+#define CFG_READELF 1
+#define USE_READELF(...) __VA_ARGS__
+#define CFG_READLINK 1
+#define USE_READLINK(...) __VA_ARGS__
+#define CFG_REALPATH 1
+#define USE_REALPATH(...) __VA_ARGS__
+#define CFG_REBOOT 0
+#define USE_REBOOT(...)
+#define CFG_RENICE 1
+#define USE_RENICE(...) __VA_ARGS__
+#define CFG_RESET 0
+#define USE_RESET(...)
+#define CFG_RESTORECON 1
+#define USE_RESTORECON(...) __VA_ARGS__
+#define CFG_REV 1
+#define USE_REV(...) __VA_ARGS__
+#define CFG_RFKILL 1
+#define USE_RFKILL(...) __VA_ARGS__
+#define CFG_RMDIR 1
+#define USE_RMDIR(...) __VA_ARGS__
+#define CFG_RMMOD 1
+#define USE_RMMOD(...) __VA_ARGS__
+#define CFG_RM 1
+#define USE_RM(...) __VA_ARGS__
+#define CFG_ROUTE 0
+#define USE_ROUTE(...)
+#define CFG_RTCWAKE 1
+#define USE_RTCWAKE(...) __VA_ARGS__
+#define CFG_RUNCON 1
+#define USE_RUNCON(...) __VA_ARGS__
+#define CFG_SED 1
+#define USE_SED(...) __VA_ARGS__
+#define CFG_SENDEVENT 1
+#define USE_SENDEVENT(...) __VA_ARGS__
+#define CFG_SEQ 1
+#define USE_SEQ(...) __VA_ARGS__
+#define CFG_SETENFORCE 1
+#define USE_SETENFORCE(...) __VA_ARGS__
+#define CFG_SETFATTR 1
+#define USE_SETFATTR(...) __VA_ARGS__
+#define CFG_SETSID 1
+#define USE_SETSID(...) __VA_ARGS__
+#define CFG_SHA1SUM 1
+#define USE_SHA1SUM(...) __VA_ARGS__
+#define CFG_SHA224SUM 1
+#define USE_SHA224SUM(...) __VA_ARGS__
+#define CFG_SHA256SUM 1
+#define USE_SHA256SUM(...) __VA_ARGS__
+#define CFG_SHA3SUM 0
+#define USE_SHA3SUM(...)
+#define CFG_SHA384SUM 1
+#define USE_SHA384SUM(...) __VA_ARGS__
+#define CFG_SHA512SUM 1
+#define USE_SHA512SUM(...) __VA_ARGS__
+#define CFG_SH 0
+#define USE_SH(...)
+#define CFG_SHRED 0
+#define USE_SHRED(...)
+#define CFG_SHUF 0
+#define USE_SHUF(...)
+#define CFG_SKELETON_ALIAS 0
+#define USE_SKELETON_ALIAS(...)
+#define CFG_SKELETON 0
+#define USE_SKELETON(...)
+#define CFG_SLEEP 1
+#define USE_SLEEP(...) __VA_ARGS__
+#define CFG_SNTP 0
+#define USE_SNTP(...)
+#define CFG_SORT_FLOAT 1
+#define USE_SORT_FLOAT(...) __VA_ARGS__
+#define CFG_SORT 1
+#define USE_SORT(...) __VA_ARGS__
+#define CFG_SPLIT 1
+#define USE_SPLIT(...) __VA_ARGS__
+#define CFG_STAT 1
+#define USE_STAT(...) __VA_ARGS__
+#define CFG_STRACE 0
+#define USE_STRACE(...)
+#define CFG_STRINGS 1
+#define USE_STRINGS(...) __VA_ARGS__
+#define CFG_STTY 1
+#define USE_STTY(...) __VA_ARGS__
+#define CFG_SU 0
+#define USE_SU(...)
+#define CFG_SULOGIN 0
+#define USE_SULOGIN(...)
+#define CFG_SWAPOFF 1
+#define USE_SWAPOFF(...) __VA_ARGS__
+#define CFG_SWAPON 1
+#define USE_SWAPON(...) __VA_ARGS__
+#define CFG_SWITCH_ROOT 0
+#define USE_SWITCH_ROOT(...)
+#define CFG_SYNC 1
+#define USE_SYNC(...) __VA_ARGS__
+#define CFG_SYSCTL 1
+#define USE_SYSCTL(...) __VA_ARGS__
+#define CFG_SYSLOGD 0
+#define USE_SYSLOGD(...)
+#define CFG_TAC 1
+#define USE_TAC(...) __VA_ARGS__
+#define CFG_TAIL 1
+#define USE_TAIL(...) __VA_ARGS__
+#define CFG_TAR 1
+#define USE_TAR(...) __VA_ARGS__
+#define CFG_TASKSET 1
+#define USE_TASKSET(...) __VA_ARGS__
+#define CFG_TCPSVD 0
+#define USE_TCPSVD(...)
+#define CFG_TEE 1
+#define USE_TEE(...) __VA_ARGS__
+#define CFG_TELNETD 0
+#define USE_TELNETD(...)
+#define CFG_TELNET 0
+#define USE_TELNET(...)
+#define CFG_TEST 1
+#define USE_TEST(...) __VA_ARGS__
+#define CFG_TEST_GLUE 1
+#define USE_TEST_GLUE(...) __VA_ARGS__
+#define CFG_TFTPD 0
+#define USE_TFTPD(...)
+#define CFG_TFTP 0
+#define USE_TFTP(...)
+#define CFG_TIMEOUT 1
+#define USE_TIMEOUT(...) __VA_ARGS__
+#define CFG_TIME 1
+#define USE_TIME(...) __VA_ARGS__
+#define CFG_TOP 1
+#define USE_TOP(...) __VA_ARGS__
+#define CFG_TOUCH 1
+#define USE_TOUCH(...) __VA_ARGS__
+#define CFG_TRACEROUTE 1
+#define USE_TRACEROUTE(...) __VA_ARGS__
+#define CFG_TRUE 1
+#define USE_TRUE(...) __VA_ARGS__
+#define CFG_TRUNCATE 1
+#define USE_TRUNCATE(...) __VA_ARGS__
+#define CFG_TR 1
+#define USE_TR(...) __VA_ARGS__
+#define CFG_TS 0
+#define USE_TS(...)
+#define CFG_TSORT 0
+#define USE_TSORT(...)
+#define CFG_TTY 1
+#define USE_TTY(...) __VA_ARGS__
+#define CFG_TUNCTL 1
+#define USE_TUNCTL(...) __VA_ARGS__
+#define CFG_UCLAMPSET 1
+#define USE_UCLAMPSET(...) __VA_ARGS__
+#define CFG_ULIMIT 1
+#define USE_ULIMIT(...) __VA_ARGS__
+#define CFG_UMOUNT 1
+#define USE_UMOUNT(...) __VA_ARGS__
+#define CFG_UNAME 1
+#define USE_UNAME(...) __VA_ARGS__
+#define CFG_UNICODE 0
+#define USE_UNICODE(...)
+#define CFG_UNIQ 1
+#define USE_UNIQ(...) __VA_ARGS__
+#define CFG_UNIX2DOS 1
+#define USE_UNIX2DOS(...) __VA_ARGS__
+#define CFG_UNLINK 1
+#define USE_UNLINK(...) __VA_ARGS__
+#define CFG_UNSHARE 1
+#define USE_UNSHARE(...) __VA_ARGS__
+#define CFG_UPTIME 1
+#define USE_UPTIME(...) __VA_ARGS__
+#define CFG_USERADD 0
+#define USE_USERADD(...)
+#define CFG_USERDEL 0
+#define USE_USERDEL(...)
+#define CFG_USLEEP 1
+#define USE_USLEEP(...) __VA_ARGS__
+#define CFG_UUDECODE 1
+#define USE_UUDECODE(...) __VA_ARGS__
+#define CFG_UUENCODE 1
+#define USE_UUENCODE(...) __VA_ARGS__
+#define CFG_UUIDGEN 1
+#define USE_UUIDGEN(...) __VA_ARGS__
+#define CFG_VCONFIG 1
+#define USE_VCONFIG(...) __VA_ARGS__
+#define CFG_VI 1
+#define USE_VI(...) __VA_ARGS__
+#define CFG_VMSTAT 1
+#define USE_VMSTAT(...) __VA_ARGS__
+#define CFG_WATCH 1
+#define USE_WATCH(...) __VA_ARGS__
+#define CFG_WATCHDOG 0
+#define USE_WATCHDOG(...)
+#define CFG_WC 1
+#define USE_WC(...) __VA_ARGS__
+#define CFG_WGET 0
+#define USE_WGET(...)
+#define CFG_WHICH 1
+#define USE_WHICH(...) __VA_ARGS__
+#define CFG_WHOAMI 1
+#define USE_WHOAMI(...) __VA_ARGS__
+#define CFG_WHO 0
+#define USE_WHO(...)
+#define CFG_W 0
+#define USE_W(...)
+#define CFG_XARGS 1
+#define USE_XARGS(...) __VA_ARGS__
+#define CFG_XXD 1
+#define USE_XXD(...) __VA_ARGS__
+#define CFG_XZCAT 0
+#define USE_XZCAT(...)
+#define CFG_YES 1
+#define USE_YES(...) __VA_ARGS__
+#define CFG_ZCAT 1
+#define USE_ZCAT(...) __VA_ARGS__
diff --git a/android/device/generated/flags.h b/android/device/generated/flags.h
new file mode 100644
index 0000000..5d87331
--- /dev/null
+++ b/android/device/generated/flags.h
@@ -0,0 +1,7538 @@
+#undef FORCED_FLAG
+#ifdef FORCE_FLAGS
+#define FORCED_FLAG 1LL
+#else
+#define FORCED_FLAG 0LL
+#endif
+
+// acpi abctV abctV
+#undef OPTSTR_acpi
+#define OPTSTR_acpi "abctV"
+#ifdef CLEANUP_acpi
+#undef CLEANUP_acpi
+#undef FOR_acpi
+#undef FLAG_V
+#undef FLAG_t
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// arch    
+#undef OPTSTR_arch
+#define OPTSTR_arch 0
+#ifdef CLEANUP_arch
+#undef CLEANUP_arch
+#undef FOR_arch
+#endif
+
+// arp   vi:nDsdap:A:H:[+Ap][!sd]
+#undef OPTSTR_arp
+#define OPTSTR_arp "vi:nDsdap:A:H:[+Ap][!sd]"
+#ifdef CLEANUP_arp
+#undef CLEANUP_arp
+#undef FOR_arp
+#undef FLAG_H
+#undef FLAG_A
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_D
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_v
+#endif
+
+// arping   <1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]
+#undef OPTSTR_arping
+#define OPTSTR_arping "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]"
+#ifdef CLEANUP_arping
+#undef CLEANUP_arping
+#undef FOR_arping
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_U
+#undef FLAG_A
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_I
+#undef FLAG_s
+#endif
+
+// ascii    
+#undef OPTSTR_ascii
+#define OPTSTR_ascii 0
+#ifdef CLEANUP_ascii
+#undef CLEANUP_ascii
+#undef FOR_ascii
+#endif
+
+// base32   diw#<0=76[!dw]
+#undef OPTSTR_base32
+#define OPTSTR_base32 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base32
+#undef CLEANUP_base32
+#undef FOR_base32
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// base64 diw#<0=76[!dw] diw#<0=76[!dw]
+#undef OPTSTR_base64
+#define OPTSTR_base64 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base64
+#undef CLEANUP_base64
+#undef FOR_base64
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// basename ^<1as: ^<1as:
+#undef OPTSTR_basename
+#define OPTSTR_basename "^<1as:"
+#ifdef CLEANUP_basename
+#undef CLEANUP_basename
+#undef FOR_basename
+#undef FLAG_s
+#undef FLAG_a
+#endif
+
+// bc   i(interactive)l(mathlib)q(quiet)s(standard)w(warn)
+#undef OPTSTR_bc
+#define OPTSTR_bc "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)"
+#ifdef CLEANUP_bc
+#undef CLEANUP_bc
+#undef FOR_bc
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#endif
+
+// blkdiscard <1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz] <1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]
+#undef OPTSTR_blkdiscard
+#define OPTSTR_blkdiscard "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]"
+#ifdef CLEANUP_blkdiscard
+#undef CLEANUP_blkdiscard
+#undef FOR_blkdiscard
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_f
+#endif
+
+// blkid ULo:s*[!LU] ULo:s*[!LU]
+#undef OPTSTR_blkid
+#define OPTSTR_blkid "ULo:s*[!LU]"
+#ifdef CLEANUP_blkid
+#undef CLEANUP_blkid
+#undef FOR_blkid
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_L
+#undef FLAG_U
+#endif
+
+// blockdev <1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt) <1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)
+#undef OPTSTR_blockdev
+#define OPTSTR_blockdev "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)"
+#ifdef CLEANUP_blockdev
+#undef CLEANUP_blockdev
+#undef FOR_blockdev
+#undef FLAG_rereadpt
+#undef FLAG_flushbufs
+#undef FLAG_setra
+#undef FLAG_getra
+#undef FLAG_getsize64
+#undef FLAG_getsize
+#undef FLAG_getsz
+#undef FLAG_setbsz
+#undef FLAG_getbsz
+#undef FLAG_getss
+#undef FLAG_getro
+#undef FLAG_setrw
+#undef FLAG_setro
+#endif
+
+// bootchartd    
+#undef OPTSTR_bootchartd
+#define OPTSTR_bootchartd 0
+#ifdef CLEANUP_bootchartd
+#undef CLEANUP_bootchartd
+#undef FOR_bootchartd
+#endif
+
+// brctl <1 <1
+#undef OPTSTR_brctl
+#define OPTSTR_brctl "<1"
+#ifdef CLEANUP_brctl
+#undef CLEANUP_brctl
+#undef FOR_brctl
+#endif
+
+// bunzip2   cftkv
+#undef OPTSTR_bunzip2
+#define OPTSTR_bunzip2 "cftkv"
+#ifdef CLEANUP_bunzip2
+#undef CLEANUP_bunzip2
+#undef FOR_bunzip2
+#undef FLAG_v
+#undef FLAG_k
+#undef FLAG_t
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// bzcat    
+#undef OPTSTR_bzcat
+#define OPTSTR_bzcat 0
+#ifdef CLEANUP_bzcat
+#undef CLEANUP_bzcat
+#undef FOR_bzcat
+#endif
+
+// cal >3h >3h
+#undef OPTSTR_cal
+#define OPTSTR_cal ">3h"
+#ifdef CLEANUP_cal
+#undef CLEANUP_cal
+#undef FOR_cal
+#undef FLAG_h
+#endif
+
+// cat uvte uvte
+#undef OPTSTR_cat
+#define OPTSTR_cat "uvte"
+#ifdef CLEANUP_cat
+#undef CLEANUP_cat
+#undef FOR_cat
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_u
+#endif
+
+// cd   >1LP[-LP]
+#undef OPTSTR_cd
+#define OPTSTR_cd ">1LP[-LP]"
+#ifdef CLEANUP_cd
+#undef CLEANUP_cd
+#undef FOR_cd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// chattr ?p#v#R ?p#v#R
+#undef OPTSTR_chattr
+#define OPTSTR_chattr "?p#v#R"
+#ifdef CLEANUP_chattr
+#undef CLEANUP_chattr
+#undef FOR_chattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// chcon <2hvR <2hvR
+#undef OPTSTR_chcon
+#define OPTSTR_chcon "<2hvR"
+#ifdef CLEANUP_chcon
+#undef CLEANUP_chcon
+#undef FOR_chcon
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_h
+#endif
+
+// chgrp <2h(no-dereference)PLHRfv[-HLP] <2h(no-dereference)PLHRfv[-HLP]
+#undef OPTSTR_chgrp
+#define OPTSTR_chgrp "<2h(no-dereference)PLHRfv[-HLP]"
+#ifdef CLEANUP_chgrp
+#undef CLEANUP_chgrp
+#undef FOR_chgrp
+#undef FLAG_v
+#undef FLAG_f
+#undef FLAG_R
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_h
+#endif
+
+// chmod <2?vfR[-vf] <2?vfR[-vf]
+#undef OPTSTR_chmod
+#define OPTSTR_chmod "<2?vfR[-vf]"
+#ifdef CLEANUP_chmod
+#undef CLEANUP_chmod
+#undef FOR_chmod
+#undef FLAG_R
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// chroot ^<1 ^<1
+#undef OPTSTR_chroot
+#define OPTSTR_chroot "^<1"
+#ifdef CLEANUP_chroot
+#undef CLEANUP_chroot
+#undef FOR_chroot
+#endif
+
+// chrt ^mp#<0iRbrfo[!ibrfo] ^mp#<0iRbrfo[!ibrfo]
+#undef OPTSTR_chrt
+#define OPTSTR_chrt "^mp#<0iRbrfo[!ibrfo]"
+#ifdef CLEANUP_chrt
+#undef CLEANUP_chrt
+#undef FOR_chrt
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_m
+#endif
+
+// chsh   >1R:s:a
+#undef OPTSTR_chsh
+#define OPTSTR_chsh ">1R:s:a"
+#ifdef CLEANUP_chsh
+#undef CLEANUP_chsh
+#undef FOR_chsh
+#undef FLAG_a
+#undef FLAG_s
+#undef FLAG_R
+#endif
+
+// chvt   <1>1
+#undef OPTSTR_chvt
+#define OPTSTR_chvt "<1>1"
+#ifdef CLEANUP_chvt
+#undef CLEANUP_chvt
+#undef FOR_chvt
+#endif
+
+// cksum HIPLN HIPLN
+#undef OPTSTR_cksum
+#define OPTSTR_cksum "HIPLN"
+#ifdef CLEANUP_cksum
+#undef CLEANUP_cksum
+#undef FOR_cksum
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_I
+#undef FLAG_H
+#endif
+
+// clear    
+#undef OPTSTR_clear
+#define OPTSTR_clear 0
+#ifdef CLEANUP_clear
+#undef CLEANUP_clear
+#undef FOR_clear
+#endif
+
+// cmp <1>4ls(silent)(quiet)n#<1[!ls] <1>4ls(silent)(quiet)n#<1[!ls]
+#undef OPTSTR_cmp
+#define OPTSTR_cmp "<1>4ls(silent)(quiet)n#<1[!ls]"
+#ifdef CLEANUP_cmp
+#undef CLEANUP_cmp
+#undef FOR_cmp
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// comm <2>2321 <2>2321
+#undef OPTSTR_comm
+#define OPTSTR_comm "<2>2321"
+#ifdef CLEANUP_comm
+#undef CLEANUP_comm
+#undef FOR_comm
+#undef FLAG_1
+#undef FLAG_2
+#undef FLAG_3
+#endif
+
+// count   <0>0l
+#undef OPTSTR_count
+#define OPTSTR_count "<0>0l"
+#ifdef CLEANUP_count
+#undef CLEANUP_count
+#undef FOR_count
+#undef FLAG_l
+#endif
+
+// cp <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr] <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]
+#undef OPTSTR_cp
+#define OPTSTR_cp "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]"
+#ifdef CLEANUP_cp
+#undef CLEANUP_cp
+#undef FOR_cp
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_R
+#undef FLAG_D
+#undef FLAG_preserve
+#endif
+
+// cpio (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF] (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]
+#undef OPTSTR_cpio
+#define OPTSTR_cpio "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]"
+#ifdef CLEANUP_cpio
+#undef CLEANUP_cpio
+#undef FOR_cpio
+#undef FLAG_o
+#undef FLAG_v
+#undef FLAG_F
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_m
+#undef FLAG_R
+#undef FLAG_no_preserve_owner
+#undef FLAG_quiet
+#undef FLAG_renumber_inodes
+#undef FLAG_ignore_devno
+#endif
+
+// crc32    
+#undef OPTSTR_crc32
+#define OPTSTR_crc32 0
+#ifdef CLEANUP_crc32
+#undef CLEANUP_crc32
+#undef FOR_crc32
+#endif
+
+// crond   fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]
+#undef OPTSTR_crond
+#define OPTSTR_crond "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]"
+#ifdef CLEANUP_crond
+#undef CLEANUP_crond
+#undef FOR_crond
+#undef FLAG_c
+#undef FLAG_L
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_S
+#undef FLAG_b
+#undef FLAG_f
+#endif
+
+// crontab   c:u:elr[!elr]
+#undef OPTSTR_crontab
+#define OPTSTR_crontab "c:u:elr[!elr]"
+#ifdef CLEANUP_crontab
+#undef CLEANUP_crontab
+#undef FOR_crontab
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_e
+#undef FLAG_u
+#undef FLAG_c
+#endif
+
+// csplit   <2skf:n#
+#undef OPTSTR_csplit
+#define OPTSTR_csplit "<2skf:n#"
+#ifdef CLEANUP_csplit
+#undef CLEANUP_csplit
+#undef FOR_csplit
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_k
+#undef FLAG_s
+#endif
+
+// cut b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF] b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]
+#undef OPTSTR_cut
+#define OPTSTR_cut "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]"
+#ifdef CLEANUP_cut
+#undef CLEANUP_cut
+#undef FOR_cut
+#undef FLAG_n
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_O
+#undef FLAG_C
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// date >1d:D:I(iso-8601):;r:s:u(utc)[!dr] >1d:D:I(iso-8601):;r:s:u(utc)[!dr]
+#undef OPTSTR_date
+#define OPTSTR_date ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]"
+#ifdef CLEANUP_date
+#undef CLEANUP_date
+#undef FOR_date
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_I
+#undef FLAG_D
+#undef FLAG_d
+#endif
+
+// dd    
+#undef OPTSTR_dd
+#define OPTSTR_dd 0
+#ifdef CLEANUP_dd
+#undef CLEANUP_dd
+#undef FOR_dd
+#endif
+
+// deallocvt   >1
+#undef OPTSTR_deallocvt
+#define OPTSTR_deallocvt ">1"
+#ifdef CLEANUP_deallocvt
+#undef CLEANUP_deallocvt
+#undef FOR_deallocvt
+#endif
+
+// declare   pAailunxr
+#undef OPTSTR_declare
+#define OPTSTR_declare "pAailunxr"
+#ifdef CLEANUP_declare
+#undef CLEANUP_declare
+#undef FOR_declare
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_p
+#endif
+
+// demo_many_options   ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba
+#undef OPTSTR_demo_many_options
+#define OPTSTR_demo_many_options "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba"
+#ifdef CLEANUP_demo_many_options
+#undef CLEANUP_demo_many_options
+#undef FOR_demo_many_options
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_i
+#undef FLAG_j
+#undef FLAG_k
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_o
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_y
+#undef FLAG_z
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_D
+#undef FLAG_E
+#undef FLAG_F
+#undef FLAG_G
+#undef FLAG_H
+#undef FLAG_I
+#undef FLAG_J
+#undef FLAG_K
+#undef FLAG_L
+#undef FLAG_M
+#undef FLAG_N
+#undef FLAG_O
+#undef FLAG_P
+#undef FLAG_Q
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_T
+#undef FLAG_U
+#undef FLAG_V
+#undef FLAG_W
+#undef FLAG_X
+#undef FLAG_Y
+#undef FLAG_Z
+#endif
+
+// demo_number   D#=3<3M#<0hcdbs
+#undef OPTSTR_demo_number
+#define OPTSTR_demo_number "D#=3<3M#<0hcdbs"
+#ifdef CLEANUP_demo_number
+#undef CLEANUP_demo_number
+#undef FOR_demo_number
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_h
+#undef FLAG_M
+#undef FLAG_D
+#endif
+
+// demo_scankey    
+#undef OPTSTR_demo_scankey
+#define OPTSTR_demo_scankey 0
+#ifdef CLEANUP_demo_scankey
+#undef CLEANUP_demo_scankey
+#undef FOR_demo_scankey
+#endif
+
+// demo_utf8towc    
+#undef OPTSTR_demo_utf8towc
+#define OPTSTR_demo_utf8towc 0
+#ifdef CLEANUP_demo_utf8towc
+#undef CLEANUP_demo_utf8towc
+#undef FOR_demo_utf8towc
+#endif
+
+// devmem <1>3 <1>3
+#undef OPTSTR_devmem
+#define OPTSTR_devmem "<1>3"
+#ifdef CLEANUP_devmem
+#undef CLEANUP_devmem
+#undef FOR_devmem
+#endif
+
+// df HPkhit*a[-HPh] HPkhit*a[-HPh]
+#undef OPTSTR_df
+#define OPTSTR_df "HPkhit*a[-HPh]"
+#ifdef CLEANUP_df
+#undef CLEANUP_df
+#undef FOR_df
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_k
+#undef FLAG_P
+#undef FLAG_H
+#endif
+
+// dhcp   V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf
+#undef OPTSTR_dhcp
+#define OPTSTR_dhcp "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf"
+#ifdef CLEANUP_dhcp
+#undef CLEANUP_dhcp
+#undef FOR_dhcp
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_C
+#undef FLAG_R
+#undef FLAG_B
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_O
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_F
+#undef FLAG_H
+#undef FLAG_V
+#endif
+
+// dhcp6   r:A#<0T#<0t#<0s:p:i:SRvqnbf
+#undef OPTSTR_dhcp6
+#define OPTSTR_dhcp6 "r:A#<0T#<0t#<0s:p:i:SRvqnbf"
+#ifdef CLEANUP_dhcp6
+#undef CLEANUP_dhcp6
+#undef FOR_dhcp6
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_r
+#endif
+
+// dhcpd   >1P#<0>65535fi:S46[!46]
+#undef OPTSTR_dhcpd
+#define OPTSTR_dhcpd ">1P#<0>65535fi:S46[!46]"
+#ifdef CLEANUP_dhcpd
+#undef CLEANUP_dhcpd
+#undef FOR_dhcpd
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_P
+#endif
+
+// diff <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3 <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3
+#undef OPTSTR_diff
+#define OPTSTR_diff "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3"
+#ifdef CLEANUP_diff
+#undef CLEANUP_diff
+#undef FOR_diff
+#undef FLAG_U
+#undef FLAG_r
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_F
+#undef FLAG_S
+#undef FLAG_a
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_T
+#undef FLAG_i
+#undef FLAG_w
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_B
+#undef FLAG_strip_trailing_cr
+#undef FLAG_color
+#undef FLAG_new_line_format
+#undef FLAG_old_line_format
+#undef FLAG_unchanged_line_format
+#endif
+
+// dirname <1 <1
+#undef OPTSTR_dirname
+#define OPTSTR_dirname "<1"
+#ifdef CLEANUP_dirname
+#undef CLEANUP_dirname
+#undef FOR_dirname
+#endif
+
+// dmesg w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw] w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]
+#undef OPTSTR_dmesg
+#define OPTSTR_dmesg "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]"
+#ifdef CLEANUP_dmesg
+#undef CLEANUP_dmesg
+#undef FOR_dmesg
+#undef FLAG_c
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_C
+#undef FLAG_w
+#endif
+
+// dnsdomainname   >0
+#undef OPTSTR_dnsdomainname
+#define OPTSTR_dnsdomainname ">0"
+#ifdef CLEANUP_dnsdomainname
+#undef CLEANUP_dnsdomainname
+#undef FOR_dnsdomainname
+#endif
+
+// dos2unix    
+#undef OPTSTR_dos2unix
+#define OPTSTR_dos2unix 0
+#ifdef CLEANUP_dos2unix
+#undef CLEANUP_dos2unix
+#undef FOR_dos2unix
+#endif
+
+// du d#<0=-1hmlcaHkKLsxb[-HL][-kKmh] d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]
+#undef OPTSTR_du
+#define OPTSTR_du "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]"
+#ifdef CLEANUP_du
+#undef CLEANUP_du
+#undef FOR_du
+#undef FLAG_b
+#undef FLAG_x
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_h
+#undef FLAG_d
+#endif
+
+// dumpleases   >0arf:[!ar]
+#undef OPTSTR_dumpleases
+#define OPTSTR_dumpleases ">0arf:[!ar]"
+#ifdef CLEANUP_dumpleases
+#undef CLEANUP_dumpleases
+#undef FOR_dumpleases
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_a
+#endif
+
+// echo ^?Een[-eE] ^?Een[-eE]
+#undef OPTSTR_echo
+#define OPTSTR_echo "^?Een[-eE]"
+#ifdef CLEANUP_echo
+#undef CLEANUP_echo
+#undef FOR_echo
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_E
+#endif
+
+// eject   >1stT[!tT]
+#undef OPTSTR_eject
+#define OPTSTR_eject ">1stT[!tT]"
+#ifdef CLEANUP_eject
+#undef CLEANUP_eject
+#undef FOR_eject
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#endif
+
+// env ^e:i0u* ^e:i0u*
+#undef OPTSTR_env
+#define OPTSTR_env "^e:i0u*"
+#ifdef CLEANUP_env
+#undef CLEANUP_env
+#undef FOR_env
+#undef FLAG_u
+#undef FLAG_0
+#undef FLAG_i
+#undef FLAG_e
+#endif
+
+// eval    
+#undef OPTSTR_eval
+#define OPTSTR_eval 0
+#ifdef CLEANUP_eval
+#undef CLEANUP_eval
+#undef FOR_eval
+#endif
+
+// exec   ^cla:
+#undef OPTSTR_exec
+#define OPTSTR_exec "^cla:"
+#ifdef CLEANUP_exec
+#undef CLEANUP_exec
+#undef FOR_exec
+#undef FLAG_a
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// exit    
+#undef OPTSTR_exit
+#define OPTSTR_exit 0
+#ifdef CLEANUP_exit
+#undef CLEANUP_exit
+#undef FOR_exit
+#endif
+
+// expand t* t*
+#undef OPTSTR_expand
+#define OPTSTR_expand "t*"
+#ifdef CLEANUP_expand
+#undef CLEANUP_expand
+#undef FOR_expand
+#undef FLAG_t
+#endif
+
+// export   np
+#undef OPTSTR_export
+#define OPTSTR_export "np"
+#ifdef CLEANUP_export
+#undef CLEANUP_export
+#undef FOR_export
+#undef FLAG_p
+#undef FLAG_n
+#endif
+
+// expr    
+#undef OPTSTR_expr
+#define OPTSTR_expr 0
+#ifdef CLEANUP_expr
+#undef CLEANUP_expr
+#undef FOR_expr
+#endif
+
+// factor   ?hx
+#undef OPTSTR_factor
+#define OPTSTR_factor "?hx"
+#ifdef CLEANUP_factor
+#undef CLEANUP_factor
+#undef FOR_factor
+#undef FLAG_x
+#undef FLAG_h
+#endif
+
+// fallocate >1l#|o# >1l#|o#
+#undef OPTSTR_fallocate
+#define OPTSTR_fallocate ">1l#|o#"
+#ifdef CLEANUP_fallocate
+#undef CLEANUP_fallocate
+#undef FOR_fallocate
+#undef FLAG_o
+#undef FLAG_l
+#endif
+
+// false    
+#undef OPTSTR_false
+#define OPTSTR_false 0
+#ifdef CLEANUP_false
+#undef CLEANUP_false
+#undef FOR_false
+#endif
+
+// fdisk   C#<0H#<0S#<0b#<512ul
+#undef OPTSTR_fdisk
+#define OPTSTR_fdisk "C#<0H#<0S#<0b#<512ul"
+#ifdef CLEANUP_fdisk
+#undef CLEANUP_fdisk
+#undef FOR_fdisk
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_S
+#undef FLAG_H
+#undef FLAG_C
+#endif
+
+// file <1b(brief)hLs[!hL] <1b(brief)hLs[!hL]
+#undef OPTSTR_file
+#define OPTSTR_file "<1b(brief)hLs[!hL]"
+#ifdef CLEANUP_file
+#undef CLEANUP_file
+#undef FOR_file
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_h
+#undef FLAG_b
+#endif
+
+// find ?^HL[-HL] ?^HL[-HL]
+#undef OPTSTR_find
+#define OPTSTR_find "?^HL[-HL]"
+#ifdef CLEANUP_find
+#undef CLEANUP_find
+#undef FOR_find
+#undef FLAG_L
+#undef FLAG_H
+#endif
+
+// flock <1>1nsux[-sux] <1>1nsux[-sux]
+#undef OPTSTR_flock
+#define OPTSTR_flock "<1>1nsux[-sux]"
+#ifdef CLEANUP_flock
+#undef CLEANUP_flock
+#undef FOR_flock
+#undef FLAG_x
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_n
+#endif
+
+// fmt w#<0=75 w#<0=75
+#undef OPTSTR_fmt
+#define OPTSTR_fmt "w#<0=75"
+#ifdef CLEANUP_fmt
+#undef CLEANUP_fmt
+#undef FOR_fmt
+#undef FLAG_w
+#endif
+
+// fold   bsw#<1=80
+#undef OPTSTR_fold
+#define OPTSTR_fold "bsw#<1=80"
+#ifdef CLEANUP_fold
+#undef CLEANUP_fold
+#undef FOR_fold
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_b
+#endif
+
+// free hgmkb[!hgmkb] hgmkb[!hgmkb]
+#undef OPTSTR_free
+#define OPTSTR_free "hgmkb[!hgmkb]"
+#ifdef CLEANUP_free
+#undef CLEANUP_free
+#undef FOR_free
+#undef FLAG_b
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_g
+#undef FLAG_h
+#endif
+
+// freeramdisk <1>1 <1>1
+#undef OPTSTR_freeramdisk
+#define OPTSTR_freeramdisk "<1>1"
+#ifdef CLEANUP_freeramdisk
+#undef CLEANUP_freeramdisk
+#undef FOR_freeramdisk
+#endif
+
+// fsck   ?t:ANPRTVsC#
+#undef OPTSTR_fsck
+#define OPTSTR_fsck "?t:ANPRTVsC#"
+#ifdef CLEANUP_fsck
+#undef CLEANUP_fsck
+#undef FOR_fsck
+#undef FLAG_C
+#undef FLAG_s
+#undef FLAG_V
+#undef FLAG_T
+#undef FLAG_R
+#undef FLAG_P
+#undef FLAG_N
+#undef FLAG_A
+#undef FLAG_t
+#endif
+
+// fsfreeze <1>1f|u|[!fu] <1>1f|u|[!fu]
+#undef OPTSTR_fsfreeze
+#define OPTSTR_fsfreeze "<1>1f|u|[!fu]"
+#ifdef CLEANUP_fsfreeze
+#undef CLEANUP_fsfreeze
+#undef FOR_fsfreeze
+#undef FLAG_u
+#undef FLAG_f
+#endif
+
+// fstype   <1
+#undef OPTSTR_fstype
+#define OPTSTR_fstype "<1"
+#ifdef CLEANUP_fstype
+#undef CLEANUP_fstype
+#undef FOR_fstype
+#endif
+
+// fsync <1d <1d
+#undef OPTSTR_fsync
+#define OPTSTR_fsync "<1d"
+#ifdef CLEANUP_fsync
+#undef CLEANUP_fsync
+#undef FOR_fsync
+#undef FLAG_d
+#endif
+
+// ftpget   <2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]
+#undef OPTSTR_ftpget
+#define OPTSTR_ftpget "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]"
+#ifdef CLEANUP_ftpget
+#undef CLEANUP_ftpget
+#undef FOR_ftpget
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_g
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_P
+#endif
+
+// getconf >2al >2al
+#undef OPTSTR_getconf
+#define OPTSTR_getconf ">2al"
+#ifdef CLEANUP_getconf
+#undef CLEANUP_getconf
+#undef FOR_getconf
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// getenforce >0 >0
+#undef OPTSTR_getenforce
+#define OPTSTR_getenforce ">0"
+#ifdef CLEANUP_getenforce
+#undef CLEANUP_getenforce
+#undef FOR_getenforce
+#endif
+
+// getfattr (only-values)dhn: (only-values)dhn:
+#undef OPTSTR_getfattr
+#define OPTSTR_getfattr "(only-values)dhn:"
+#ifdef CLEANUP_getfattr
+#undef CLEANUP_getfattr
+#undef FOR_getfattr
+#undef FLAG_n
+#undef FLAG_h
+#undef FLAG_d
+#undef FLAG_only_values
+#endif
+
+// getopt ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu
+#undef OPTSTR_getopt
+#define OPTSTR_getopt "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu"
+#ifdef CLEANUP_getopt
+#undef CLEANUP_getopt
+#undef FOR_getopt
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_l
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_a
+#endif
+
+// getty   <2t#<0H:I:l:f:iwnmLh
+#undef OPTSTR_getty
+#define OPTSTR_getty "<2t#<0H:I:l:f:iwnmLh"
+#ifdef CLEANUP_getty
+#undef CLEANUP_getty
+#undef FOR_getty
+#undef FLAG_h
+#undef FLAG_L
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_l
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_t
+#endif
+
+// gitcheckout   <1
+#undef OPTSTR_gitcheckout
+#define OPTSTR_gitcheckout "<1"
+#ifdef CLEANUP_gitcheckout
+#undef CLEANUP_gitcheckout
+#undef FOR_gitcheckout
+#endif
+
+// gitclone   <1
+#undef OPTSTR_gitclone
+#define OPTSTR_gitclone "<1"
+#ifdef CLEANUP_gitclone
+#undef CLEANUP_gitclone
+#undef FOR_gitclone
+#endif
+
+// gitfetch    
+#undef OPTSTR_gitfetch
+#define OPTSTR_gitfetch 0
+#ifdef CLEANUP_gitfetch
+#undef CLEANUP_gitfetch
+#undef FOR_gitfetch
+#endif
+
+// gitinit   <1
+#undef OPTSTR_gitinit
+#define OPTSTR_gitinit "<1"
+#ifdef CLEANUP_gitinit
+#undef CLEANUP_gitinit
+#undef FOR_gitinit
+#endif
+
+// gitremote   <1
+#undef OPTSTR_gitremote
+#define OPTSTR_gitremote "<1"
+#ifdef CLEANUP_gitremote
+#undef CLEANUP_gitremote
+#undef FOR_gitremote
+#endif
+
+// gpiodetect >0 >0
+#undef OPTSTR_gpiodetect
+#define OPTSTR_gpiodetect ">0"
+#ifdef CLEANUP_gpiodetect
+#undef CLEANUP_gpiodetect
+#undef FOR_gpiodetect
+#endif
+
+// gpiofind <1>1 <1>1
+#undef OPTSTR_gpiofind
+#define OPTSTR_gpiofind "<1>1"
+#ifdef CLEANUP_gpiofind
+#undef CLEANUP_gpiofind
+#undef FOR_gpiofind
+#endif
+
+// gpioget <2l <2l
+#undef OPTSTR_gpioget
+#define OPTSTR_gpioget "<2l"
+#ifdef CLEANUP_gpioget
+#undef CLEANUP_gpioget
+#undef FOR_gpioget
+#undef FLAG_l
+#endif
+
+// gpioinfo    
+#undef OPTSTR_gpioinfo
+#define OPTSTR_gpioinfo 0
+#ifdef CLEANUP_gpioinfo
+#undef CLEANUP_gpioinfo
+#undef FOR_gpioinfo
+#endif
+
+// gpioset <2l <2l
+#undef OPTSTR_gpioset
+#define OPTSTR_gpioset "<2l"
+#ifdef CLEANUP_gpioset
+#undef CLEANUP_gpioset
+#undef FOR_gpioset
+#undef FLAG_l
+#endif
+
+// grep (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF] (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]
+#undef OPTSTR_grep
+#define OPTSTR_grep "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]"
+#ifdef CLEANUP_grep
+#undef CLEANUP_grep
+#undef FOR_grep
+#undef FLAG_x
+#undef FLAG_m
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_L
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_E
+#undef FLAG_z
+#undef FLAG_Z
+#undef FLAG_M
+#undef FLAG_S
+#undef FLAG_exclude_dir
+#undef FLAG_color
+#undef FLAG_line_buffered
+#endif
+
+// groupadd   <1>2R:g#<0>2147483647S
+#undef OPTSTR_groupadd
+#define OPTSTR_groupadd "<1>2R:g#<0>2147483647S"
+#ifdef CLEANUP_groupadd
+#undef CLEANUP_groupadd
+#undef FOR_groupadd
+#undef FLAG_S
+#undef FLAG_g
+#undef FLAG_R
+#endif
+
+// groupdel   <1>2?
+#undef OPTSTR_groupdel
+#define OPTSTR_groupdel "<1>2?"
+#ifdef CLEANUP_groupdel
+#undef CLEANUP_groupdel
+#undef FOR_groupdel
+#endif
+
+// groups    
+#undef OPTSTR_groups
+#define OPTSTR_groups 0
+#ifdef CLEANUP_groups
+#undef CLEANUP_groups
+#undef FOR_groups
+#endif
+
+// gunzip cdfkt123456789[-123456789] cdfkt123456789[-123456789]
+#undef OPTSTR_gunzip
+#define OPTSTR_gunzip "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gunzip
+#undef CLEANUP_gunzip
+#undef FOR_gunzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// gzip n(no-name)cdfkt123456789[-123456789] n(no-name)cdfkt123456789[-123456789]
+#undef OPTSTR_gzip
+#define OPTSTR_gzip "n(no-name)cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gzip
+#undef CLEANUP_gzip
+#undef FOR_gzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// head ?n(lines)#<0=10c(bytes)#<0qv[-nc] ?n(lines)#<0=10c(bytes)#<0qv[-nc]
+#undef OPTSTR_head
+#define OPTSTR_head "?n(lines)#<0=10c(bytes)#<0qv[-nc]"
+#ifdef CLEANUP_head
+#undef CLEANUP_head
+#undef FOR_head
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// hello    
+#undef OPTSTR_hello
+#define OPTSTR_hello 0
+#ifdef CLEANUP_hello
+#undef CLEANUP_hello
+#undef FOR_hello
+#endif
+
+// help ahu ahu
+#undef OPTSTR_help
+#define OPTSTR_help "ahu"
+#ifdef CLEANUP_help
+#undef CLEANUP_help
+#undef FOR_help
+#undef FLAG_u
+#undef FLAG_h
+#undef FLAG_a
+#endif
+
+// hexdump   bcCdn#<0os#<0vx[!bcCdox]
+#undef OPTSTR_hexdump
+#define OPTSTR_hexdump "bcCdn#<0os#<0vx[!bcCdox]"
+#ifdef CLEANUP_hexdump
+#undef CLEANUP_hexdump
+#undef FOR_hexdump
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_d
+#undef FLAG_C
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// hexedit   <1>1r
+#undef OPTSTR_hexedit
+#define OPTSTR_hexedit "<1>1r"
+#ifdef CLEANUP_hexedit
+#undef CLEANUP_hexedit
+#undef FOR_hexedit
+#undef FLAG_r
+#endif
+
+// host   <1>2avt:
+#undef OPTSTR_host
+#define OPTSTR_host "<1>2avt:"
+#ifdef CLEANUP_host
+#undef CLEANUP_host
+#undef FOR_host
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// hostid   >0
+#undef OPTSTR_hostid
+#define OPTSTR_hostid ">0"
+#ifdef CLEANUP_hostid
+#undef CLEANUP_hostid
+#undef FOR_hostid
+#endif
+
+// hostname >1bdsfF:[!bdsf] >1bdsfF:[!bdsf]
+#undef OPTSTR_hostname
+#define OPTSTR_hostname ">1bdsfF:[!bdsf]"
+#ifdef CLEANUP_hostname
+#undef CLEANUP_hostname
+#undef FOR_hostname
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// httpd   >1v
+#undef OPTSTR_httpd
+#define OPTSTR_httpd ">1v"
+#ifdef CLEANUP_httpd
+#undef CLEANUP_httpd
+#undef FOR_httpd
+#undef FLAG_v
+#endif
+
+// hwclock >0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw] >0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]
+#undef OPTSTR_hwclock
+#define OPTSTR_hwclock ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]"
+#ifdef CLEANUP_hwclock
+#undef CLEANUP_hwclock
+#undef FOR_hwclock
+#undef FLAG_w
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_fast
+#endif
+
+// i2cdetect >3aF#<0>63lqry[!qr][!Fl] >3aF#<0>63lqry[!qr][!Fl]
+#undef OPTSTR_i2cdetect
+#define OPTSTR_i2cdetect ">3aF#<0>63lqry[!qr][!Fl]"
+#ifdef CLEANUP_i2cdetect
+#undef CLEANUP_i2cdetect
+#undef FOR_i2cdetect
+#undef FLAG_y
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// i2cdump <2>2fy <2>2fy
+#undef OPTSTR_i2cdump
+#define OPTSTR_i2cdump "<2>2fy"
+#ifdef CLEANUP_i2cdump
+#undef CLEANUP_i2cdump
+#undef FOR_i2cdump
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cget <2>3fy <2>3fy
+#undef OPTSTR_i2cget
+#define OPTSTR_i2cget "<2>3fy"
+#ifdef CLEANUP_i2cget
+#undef CLEANUP_i2cget
+#undef FOR_i2cget
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cset <4fy <4fy
+#undef OPTSTR_i2cset
+#define OPTSTR_i2cset "<4fy"
+#ifdef CLEANUP_i2cset
+#undef CLEANUP_i2cset
+#undef FOR_i2cset
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2ctransfer <2vfy <2vfy
+#undef OPTSTR_i2ctransfer
+#define OPTSTR_i2ctransfer "<2vfy"
+#ifdef CLEANUP_i2ctransfer
+#undef CLEANUP_i2ctransfer
+#undef FOR_i2ctransfer
+#undef FLAG_y
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// iconv cst:f: cst:f:
+#undef OPTSTR_iconv
+#define OPTSTR_iconv "cst:f:"
+#ifdef CLEANUP_iconv
+#undef CLEANUP_iconv
+#undef FOR_iconv
+#undef FLAG_f
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// id >1ZnGgru[!ZGgu] >1ZnGgru[!ZGgu]
+#undef OPTSTR_id
+#define OPTSTR_id ">1ZnGgru[!ZGgu]"
+#ifdef CLEANUP_id
+#undef CLEANUP_id
+#undef FOR_id
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_g
+#undef FLAG_G
+#undef FLAG_n
+#undef FLAG_Z
+#endif
+
+// ifconfig ^?aS ^?aS
+#undef OPTSTR_ifconfig
+#define OPTSTR_ifconfig "^?aS"
+#ifdef CLEANUP_ifconfig
+#undef CLEANUP_ifconfig
+#undef FOR_ifconfig
+#undef FLAG_S
+#undef FLAG_a
+#endif
+
+// init    
+#undef OPTSTR_init
+#define OPTSTR_init 0
+#ifdef CLEANUP_init
+#undef CLEANUP_init
+#undef FOR_init
+#endif
+
+// inotifyd <2 <2
+#undef OPTSTR_inotifyd
+#define OPTSTR_inotifyd "<2"
+#ifdef CLEANUP_inotifyd
+#undef CLEANUP_inotifyd
+#undef FOR_inotifyd
+#endif
+
+// insmod <1 <1
+#undef OPTSTR_insmod
+#define OPTSTR_insmod "<1"
+#ifdef CLEANUP_insmod
+#undef CLEANUP_insmod
+#undef FOR_insmod
+#endif
+
+// install <1cdDp(preserve-timestamps)svt:m:o:g: <1cdDp(preserve-timestamps)svt:m:o:g:
+#undef OPTSTR_install
+#define OPTSTR_install "<1cdDp(preserve-timestamps)svt:m:o:g:"
+#ifdef CLEANUP_install
+#undef CLEANUP_install
+#undef FOR_install
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// ionice ^tc#<0>3=2n#<0>7=5p# ^tc#<0>3=2n#<0>7=5p#
+#undef OPTSTR_ionice
+#define OPTSTR_ionice "^tc#<0>3=2n#<0>7=5p#"
+#ifdef CLEANUP_ionice
+#undef CLEANUP_ionice
+#undef FOR_ionice
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_t
+#endif
+
+// iorenice <1>3 <1>3
+#undef OPTSTR_iorenice
+#define OPTSTR_iorenice "<1>3"
+#ifdef CLEANUP_iorenice
+#undef CLEANUP_iorenice
+#undef FOR_iorenice
+#endif
+
+// iotop >0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq >0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq
+#undef OPTSTR_iotop
+#define OPTSTR_iotop ">0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq"
+#ifdef CLEANUP_iotop
+#undef CLEANUP_iotop
+#undef FOR_iotop
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_O
+#undef FLAG_K
+#undef FLAG_a
+#undef FLAG_A
+#endif
+
+// ip    
+#undef OPTSTR_ip
+#define OPTSTR_ip 0
+#ifdef CLEANUP_ip
+#undef CLEANUP_ip
+#undef FOR_ip
+#endif
+
+// ipcrm   m*M*s*S*q*Q*
+#undef OPTSTR_ipcrm
+#define OPTSTR_ipcrm "m*M*s*S*q*Q*"
+#ifdef CLEANUP_ipcrm
+#undef CLEANUP_ipcrm
+#undef FOR_ipcrm
+#undef FLAG_Q
+#undef FLAG_q
+#undef FLAG_S
+#undef FLAG_s
+#undef FLAG_M
+#undef FLAG_m
+#endif
+
+// ipcs   acptulsqmi#
+#undef OPTSTR_ipcs
+#define OPTSTR_ipcs "acptulsqmi#"
+#ifdef CLEANUP_ipcs
+#undef CLEANUP_ipcs
+#undef FOR_ipcs
+#undef FLAG_i
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// jobs   lnprs
+#undef OPTSTR_jobs
+#define OPTSTR_jobs "lnprs"
+#ifdef CLEANUP_jobs
+#undef CLEANUP_jobs
+#undef FOR_jobs
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#endif
+
+// kill ?ls:  ?ls: 
+#undef OPTSTR_kill
+#define OPTSTR_kill "?ls: "
+#ifdef CLEANUP_kill
+#undef CLEANUP_kill
+#undef FOR_kill
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// killall ?s:ilqvw ?s:ilqvw
+#undef OPTSTR_killall
+#define OPTSTR_killall "?s:ilqvw"
+#ifdef CLEANUP_killall
+#undef CLEANUP_killall
+#undef FOR_killall
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_s
+#endif
+
+// killall5   ?o*ls: [!lo][!ls]
+#undef OPTSTR_killall5
+#define OPTSTR_killall5 "?o*ls: [!lo][!ls]"
+#ifdef CLEANUP_killall5
+#undef CLEANUP_killall5
+#undef FOR_killall5
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_o
+#endif
+
+// klogd   c#<1>8n
+#undef OPTSTR_klogd
+#define OPTSTR_klogd "c#<1>8n"
+#ifdef CLEANUP_klogd
+#undef CLEANUP_klogd
+#undef FOR_klogd
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// last   f:W
+#undef OPTSTR_last
+#define OPTSTR_last "f:W"
+#ifdef CLEANUP_last
+#undef CLEANUP_last
+#undef FOR_last
+#undef FLAG_W
+#undef FLAG_f
+#endif
+
+// link   <2>2
+#undef OPTSTR_link
+#define OPTSTR_link "<2>2"
+#ifdef CLEANUP_link
+#undef CLEANUP_link
+#undef FOR_link
+#endif
+
+// linux32    
+#undef OPTSTR_linux32
+#define OPTSTR_linux32 0
+#ifdef CLEANUP_linux32
+#undef CLEANUP_linux32
+#undef FOR_linux32
+#endif
+
+// ln <1rt:Tvnfs <1rt:Tvnfs
+#undef OPTSTR_ln
+#define OPTSTR_ln "<1rt:Tvnfs"
+#ifdef CLEANUP_ln
+#undef CLEANUP_ln
+#undef FOR_ln
+#undef FLAG_s
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_r
+#endif
+
+// load_policy <1>1 <1>1
+#undef OPTSTR_load_policy
+#define OPTSTR_load_policy "<1>1"
+#ifdef CLEANUP_load_policy
+#undef CLEANUP_load_policy
+#undef FOR_load_policy
+#endif
+
+// local    
+#undef OPTSTR_local
+#define OPTSTR_local 0
+#ifdef CLEANUP_local
+#undef CLEANUP_local
+#undef FOR_local
+#endif
+
+// log p:t: p:t:
+#undef OPTSTR_log
+#define OPTSTR_log "p:t:"
+#ifdef CLEANUP_log
+#undef CLEANUP_log
+#undef FOR_log
+#undef FLAG_t
+#undef FLAG_p
+#endif
+
+// logger t:p:s t:p:s
+#undef OPTSTR_logger
+#define OPTSTR_logger "t:p:s"
+#ifdef CLEANUP_logger
+#undef CLEANUP_logger
+#undef FOR_logger
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_t
+#endif
+
+// login   >1f:ph:
+#undef OPTSTR_login
+#define OPTSTR_login ">1f:ph:"
+#ifdef CLEANUP_login
+#undef CLEANUP_login
+#undef FOR_login
+#undef FLAG_h
+#undef FLAG_p
+#undef FLAG_f
+#endif
+
+// logname >0 >0
+#undef OPTSTR_logname
+#define OPTSTR_logname ">0"
+#ifdef CLEANUP_logname
+#undef CLEANUP_logname
+#undef FOR_logname
+#endif
+
+// logpath    
+#undef OPTSTR_logpath
+#define OPTSTR_logpath 0
+#ifdef CLEANUP_logpath
+#undef CLEANUP_logpath
+#undef FOR_logpath
+#endif
+
+// losetup >2S(sizelimit)#s(show)ro#j:fdcaD[!afj] >2S(sizelimit)#s(show)ro#j:fdcaD[!afj]
+#undef OPTSTR_losetup
+#define OPTSTR_losetup ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]"
+#ifdef CLEANUP_losetup
+#undef CLEANUP_losetup
+#undef FOR_losetup
+#undef FLAG_D
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_f
+#undef FLAG_j
+#undef FLAG_o
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_S
+#endif
+
+// ls (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ] (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]
+#undef OPTSTR_ls
+#define OPTSTR_ls "(sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]"
+#ifdef CLEANUP_ls
+#undef CLEANUP_ls
+#undef FOR_ls
+#undef FLAG_1
+#undef FLAG_x
+#undef FLAG_w
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_k
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_X
+#undef FLAG_U
+#undef FLAG_S
+#undef FLAG_R
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_C
+#undef FLAG_A
+#undef FLAG_o
+#undef FLAG_g
+#undef FLAG_Z
+#undef FLAG_X7E
+#undef FLAG_X21
+#undef FLAG_X7F
+#undef FLAG_show_control_chars
+#undef FLAG_full_time
+#undef FLAG_color
+#undef FLAG_sort
+#endif
+
+// lsattr ldapvR ldapvR
+#undef OPTSTR_lsattr
+#define OPTSTR_lsattr "ldapvR"
+#ifdef CLEANUP_lsattr
+#undef CLEANUP_lsattr
+#undef FOR_lsattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_l
+#endif
+
+// lsmod    
+#undef OPTSTR_lsmod
+#define OPTSTR_lsmod 0
+#ifdef CLEANUP_lsmod
+#undef CLEANUP_lsmod
+#undef FOR_lsmod
+#endif
+
+// lsof lp*t lp*t
+#undef OPTSTR_lsof
+#define OPTSTR_lsof "lp*t"
+#ifdef CLEANUP_lsof
+#undef CLEANUP_lsof
+#undef FOR_lsof
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_l
+#endif
+
+// lspci emkn@x@i: emkn@x@i:
+#undef OPTSTR_lspci
+#define OPTSTR_lspci "emkn@x@i:"
+#ifdef CLEANUP_lspci
+#undef CLEANUP_lspci
+#undef FOR_lspci
+#undef FLAG_i
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_e
+#endif
+
+// lsusb i: i:
+#undef OPTSTR_lsusb
+#define OPTSTR_lsusb "i:"
+#ifdef CLEANUP_lsusb
+#undef CLEANUP_lsusb
+#undef FOR_lsusb
+#undef FLAG_i
+#endif
+
+// makedevs <1>1d: <1>1d:
+#undef OPTSTR_makedevs
+#define OPTSTR_makedevs "<1>1d:"
+#ifdef CLEANUP_makedevs
+#undef CLEANUP_makedevs
+#undef FOR_makedevs
+#undef FLAG_d
+#endif
+
+// man   k:M:
+#undef OPTSTR_man
+#define OPTSTR_man "k:M:"
+#ifdef CLEANUP_man
+#undef CLEANUP_man
+#undef FOR_man
+#undef FLAG_M
+#undef FLAG_k
+#endif
+
+// mcookie   v(verbose)V(version)
+#undef OPTSTR_mcookie
+#define OPTSTR_mcookie "v(verbose)V(version)"
+#ifdef CLEANUP_mcookie
+#undef CLEANUP_mcookie
+#undef FOR_mcookie
+#undef FLAG_V
+#undef FLAG_v
+#endif
+
+// md5sum bc(check)s(status)[!bc] bc(check)s(status)[!bc]
+#undef OPTSTR_md5sum
+#define OPTSTR_md5sum "bc(check)s(status)[!bc]"
+#ifdef CLEANUP_md5sum
+#undef CLEANUP_md5sum
+#undef FOR_md5sum
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// mdev   s
+#undef OPTSTR_mdev
+#define OPTSTR_mdev "s"
+#ifdef CLEANUP_mdev
+#undef CLEANUP_mdev
+#undef FOR_mdev
+#undef FLAG_s
+#endif
+
+// memeater <1>1M <1>1M
+#undef OPTSTR_memeater
+#define OPTSTR_memeater "<1>1M"
+#ifdef CLEANUP_memeater
+#undef CLEANUP_memeater
+#undef FOR_memeater
+#undef FLAG_M
+#endif
+
+// microcom <1>1s#=115200X <1>1s#=115200X
+#undef OPTSTR_microcom
+#define OPTSTR_microcom "<1>1s#=115200X"
+#ifdef CLEANUP_microcom
+#undef CLEANUP_microcom
+#undef FOR_microcom
+#undef FLAG_X
+#undef FLAG_s
+#endif
+
+// mix   c:d:l#r#
+#undef OPTSTR_mix
+#define OPTSTR_mix "c:d:l#r#"
+#ifdef CLEANUP_mix
+#undef CLEANUP_mix
+#undef FOR_mix
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// mkdir <1Z:vp(parent)(parents)m: <1Z:vp(parent)(parents)m:
+#undef OPTSTR_mkdir
+#define OPTSTR_mkdir "<1Z:vp(parent)(parents)m:"
+#ifdef CLEANUP_mkdir
+#undef CLEANUP_mkdir
+#undef FOR_mkdir
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_v
+#undef FLAG_Z
+#endif
+
+// mke2fs   <1>2g:Fnqm#N#i#b#
+#undef OPTSTR_mke2fs
+#define OPTSTR_mke2fs "<1>2g:Fnqm#N#i#b#"
+#ifdef CLEANUP_mke2fs
+#undef CLEANUP_mke2fs
+#undef FOR_mke2fs
+#undef FLAG_b
+#undef FLAG_i
+#undef FLAG_N
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_g
+#endif
+
+// mkfifo <1Z:m: <1Z:m:
+#undef OPTSTR_mkfifo
+#define OPTSTR_mkfifo "<1Z:m:"
+#ifdef CLEANUP_mkfifo
+#undef CLEANUP_mkfifo
+#undef FOR_mkfifo
+#undef FLAG_m
+#undef FLAG_Z
+#endif
+
+// mknod <2>4m(mode):Z: <2>4m(mode):Z:
+#undef OPTSTR_mknod
+#define OPTSTR_mknod "<2>4m(mode):Z:"
+#ifdef CLEANUP_mknod
+#undef CLEANUP_mknod
+#undef FOR_mknod
+#undef FLAG_Z
+#undef FLAG_m
+#endif
+
+// mkpasswd   >2S:m:P#=0<0
+#undef OPTSTR_mkpasswd
+#define OPTSTR_mkpasswd ">2S:m:P#=0<0"
+#ifdef CLEANUP_mkpasswd
+#undef CLEANUP_mkpasswd
+#undef FOR_mkpasswd
+#undef FLAG_P
+#undef FLAG_m
+#undef FLAG_S
+#endif
+
+// mkswap <1>1L: <1>1L:
+#undef OPTSTR_mkswap
+#define OPTSTR_mkswap "<1>1L:"
+#ifdef CLEANUP_mkswap
+#undef CLEANUP_mkswap
+#undef FOR_mkswap
+#undef FLAG_L
+#endif
+
+// mktemp >1(tmpdir);:uqd(directory)p:t >1(tmpdir);:uqd(directory)p:t
+#undef OPTSTR_mktemp
+#define OPTSTR_mktemp ">1(tmpdir);:uqd(directory)p:t"
+#ifdef CLEANUP_mktemp
+#undef CLEANUP_mktemp
+#undef FOR_mktemp
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_d
+#undef FLAG_q
+#undef FLAG_u
+#undef FLAG_tmpdir
+#endif
+
+// modinfo <1b:k:F:0 <1b:k:F:0
+#undef OPTSTR_modinfo
+#define OPTSTR_modinfo "<1b:k:F:0"
+#ifdef CLEANUP_modinfo
+#undef CLEANUP_modinfo
+#undef FOR_modinfo
+#undef FLAG_0
+#undef FLAG_F
+#undef FLAG_k
+#undef FLAG_b
+#endif
+
+// modprobe alrqvsDbd* alrqvsDbd*
+#undef OPTSTR_modprobe
+#define OPTSTR_modprobe "alrqvsDbd*"
+#ifdef CLEANUP_modprobe
+#undef CLEANUP_modprobe
+#undef FOR_modprobe
+#undef FLAG_d
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// more    
+#undef OPTSTR_more
+#define OPTSTR_more 0
+#ifdef CLEANUP_more
+#undef CLEANUP_more
+#undef FOR_more
+#endif
+
+// mount ?RO:afnrvwt:o*[-rw] ?RO:afnrvwt:o*[-rw]
+#undef OPTSTR_mount
+#define OPTSTR_mount "?RO:afnrvwt:o*[-rw]"
+#ifdef CLEANUP_mount
+#undef CLEANUP_mount
+#undef FOR_mount
+#undef FLAG_o
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_a
+#undef FLAG_O
+#undef FLAG_R
+#endif
+
+// mountpoint <1qdx[-dx] <1qdx[-dx]
+#undef OPTSTR_mountpoint
+#define OPTSTR_mountpoint "<1qdx[-dx]"
+#ifdef CLEANUP_mountpoint
+#undef CLEANUP_mountpoint
+#undef FOR_mountpoint
+#undef FLAG_x
+#undef FLAG_d
+#undef FLAG_q
+#endif
+
+// mv <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni] <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]
+#undef OPTSTR_mv
+#define OPTSTR_mv "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]"
+#ifdef CLEANUP_mv
+#undef CLEANUP_mv
+#undef FOR_mv
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_x
+#endif
+
+// nbd_client <3>3b#<1>4294967295=4096ns <3>3b#<1>4294967295=4096ns
+#undef OPTSTR_nbd_client
+#define OPTSTR_nbd_client "<3>3b#<1>4294967295=4096ns"
+#ifdef CLEANUP_nbd_client
+#undef CLEANUP_nbd_client
+#undef FOR_nbd_client
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#endif
+
+// nbd_server   <1>1r
+#undef OPTSTR_nbd_server
+#define OPTSTR_nbd_server "<1>1r"
+#ifdef CLEANUP_nbd_server
+#undef CLEANUP_nbd_server
+#undef FOR_nbd_server
+#undef FLAG_r
+#endif
+
+// netcat ^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U] ^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]
+#undef OPTSTR_netcat
+#define OPTSTR_netcat "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]"
+#ifdef CLEANUP_netcat
+#undef CLEANUP_netcat
+#undef FOR_netcat
+#undef FLAG_z
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_W
+#undef FLAG_w
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_E
+#undef FLAG_t
+#endif
+
+// netstat pWrxwutneal pWrxwutneal
+#undef OPTSTR_netstat
+#define OPTSTR_netstat "pWrxwutneal"
+#ifdef CLEANUP_netstat
+#undef CLEANUP_netstat
+#undef FOR_netstat
+#undef FLAG_l
+#undef FLAG_a
+#undef FLAG_e
+#undef FLAG_n
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_r
+#undef FLAG_W
+#undef FLAG_p
+#endif
+
+// nice ^<1n# ^<1n#
+#undef OPTSTR_nice
+#define OPTSTR_nice "^<1n#"
+#ifdef CLEANUP_nice
+#undef CLEANUP_nice
+#undef FOR_nice
+#undef FLAG_n
+#endif
+
+// nl v#=1l#w#<0=6b:n:s:E v#=1l#w#<0=6b:n:s:E
+#undef OPTSTR_nl
+#define OPTSTR_nl "v#=1l#w#<0=6b:n:s:E"
+#ifdef CLEANUP_nl
+#undef CLEANUP_nl
+#undef FOR_nl
+#undef FLAG_E
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#undef FLAG_w
+#undef FLAG_l
+#undef FLAG_v
+#endif
+
+// nohup <1^ <1^
+#undef OPTSTR_nohup
+#define OPTSTR_nohup "<1^"
+#ifdef CLEANUP_nohup
+#undef CLEANUP_nohup
+#undef FOR_nohup
+#endif
+
+// nproc (all) (all)
+#undef OPTSTR_nproc
+#define OPTSTR_nproc "(all)"
+#ifdef CLEANUP_nproc
+#undef CLEANUP_nproc
+#undef FOR_nproc
+#undef FLAG_all
+#endif
+
+// nsenter <1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):;  <1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_nsenter
+#define OPTSTR_nsenter "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_nsenter
+#undef CLEANUP_nsenter
+#undef FOR_nsenter
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_t
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// od j#vw#<1=16N#xsodcbA:t* j#vw#<1=16N#xsodcbA:t*
+#undef OPTSTR_od
+#define OPTSTR_od "j#vw#<1=16N#xsodcbA:t*"
+#ifdef CLEANUP_od
+#undef CLEANUP_od
+#undef FOR_od
+#undef FLAG_t
+#undef FLAG_A
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_o
+#undef FLAG_s
+#undef FLAG_x
+#undef FLAG_N
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_j
+#endif
+
+// oneit   ^<1nc:p3[!pn]
+#undef OPTSTR_oneit
+#define OPTSTR_oneit "^<1nc:p3[!pn]"
+#ifdef CLEANUP_oneit
+#undef CLEANUP_oneit
+#undef FOR_oneit
+#undef FLAG_3
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// openvt   ^<1c#<1>63sw
+#undef OPTSTR_openvt
+#define OPTSTR_openvt "^<1c#<1>63sw"
+#ifdef CLEANUP_openvt
+#undef CLEANUP_openvt
+#undef FOR_openvt
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// partprobe <1 <1
+#undef OPTSTR_partprobe
+#define OPTSTR_partprobe "<1"
+#ifdef CLEANUP_partprobe
+#undef CLEANUP_partprobe
+#undef FOR_partprobe
+#endif
+
+// passwd   >1a:dlu
+#undef OPTSTR_passwd
+#define OPTSTR_passwd ">1a:dlu"
+#ifdef CLEANUP_passwd
+#undef CLEANUP_passwd
+#undef FOR_passwd
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#endif
+
+// paste d:s d:s
+#undef OPTSTR_paste
+#define OPTSTR_paste "d:s"
+#ifdef CLEANUP_paste
+#undef CLEANUP_paste
+#undef FOR_paste
+#undef FLAG_s
+#undef FLAG_d
+#endif
+
+// patch >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv] >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]
+#undef OPTSTR_patch
+#define OPTSTR_patch ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]"
+#ifdef CLEANUP_patch
+#undef CLEANUP_patch
+#undef FOR_patch
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_d
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_dry_run
+#undef FLAG_no_backup_if_mismatch
+#endif
+
+// pgrep ?cld:u*U*t*s*P*g*G*fnovxL:[-no] ?cld:u*U*t*s*P*g*G*fnovxL:[-no]
+#undef OPTSTR_pgrep
+#define OPTSTR_pgrep "?cld:u*U*t*s*P*g*G*fnovxL:[-no]"
+#ifdef CLEANUP_pgrep
+#undef CLEANUP_pgrep
+#undef FOR_pgrep
+#undef FLAG_L
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// pidof so:x so:x
+#undef OPTSTR_pidof
+#define OPTSTR_pidof "so:x"
+#ifdef CLEANUP_pidof
+#undef CLEANUP_pidof
+#undef FOR_pidof
+#undef FLAG_x
+#undef FLAG_o
+#undef FLAG_s
+#endif
+
+// ping <1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46] <1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]
+#undef OPTSTR_ping
+#define OPTSTR_ping "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]"
+#ifdef CLEANUP_ping
+#undef CLEANUP_ping
+#undef FOR_ping
+#undef FLAG_I
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_w
+#undef FLAG_W
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_t
+#undef FLAG_m
+#endif
+
+// pivot_root <2>2 <2>2
+#undef OPTSTR_pivot_root
+#define OPTSTR_pivot_root "<2>2"
+#ifdef CLEANUP_pivot_root
+#undef CLEANUP_pivot_root
+#undef FOR_pivot_root
+#endif
+
+// pkill ?Vu*U*t*s*P*g*G*fnovxl:[-no] ?Vu*U*t*s*P*g*G*fnovxl:[-no]
+#undef OPTSTR_pkill
+#define OPTSTR_pkill "?Vu*U*t*s*P*g*G*fnovxl:[-no]"
+#ifdef CLEANUP_pkill
+#undef CLEANUP_pkill
+#undef FOR_pkill
+#undef FLAG_l
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_V
+#endif
+
+// pmap <1pqx <1pqx
+#undef OPTSTR_pmap
+#define OPTSTR_pmap "<1pqx"
+#ifdef CLEANUP_pmap
+#undef CLEANUP_pmap
+#undef FOR_pmap
+#undef FLAG_x
+#undef FLAG_q
+#undef FLAG_p
+#endif
+
+// printenv (null)0 (null)0
+#undef OPTSTR_printenv
+#define OPTSTR_printenv "(null)0"
+#ifdef CLEANUP_printenv
+#undef CLEANUP_printenv
+#undef FOR_printenv
+#undef FLAG_0
+#undef FLAG_null
+#endif
+
+// printf <1?^ <1?^
+#undef OPTSTR_printf
+#define OPTSTR_printf "<1?^"
+#ifdef CLEANUP_printf
+#undef CLEANUP_printf
+#undef FOR_printf
+#endif
+
+// ps k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO] k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]
+#undef OPTSTR_ps
+#define OPTSTR_ps "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]"
+#ifdef CLEANUP_ps
+#undef CLEANUP_ps
+#undef FOR_ps
+#undef FLAG_Z
+#undef FLAG_w
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_M
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_P
+#undef FLAG_k
+#endif
+
+// pwd >0LP[-LP] >0LP[-LP]
+#undef OPTSTR_pwd
+#define OPTSTR_pwd ">0LP[-LP]"
+#ifdef CLEANUP_pwd
+#undef CLEANUP_pwd
+#undef FOR_pwd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// pwdx <1a <1a
+#undef OPTSTR_pwdx
+#define OPTSTR_pwdx "<1a"
+#ifdef CLEANUP_pwdx
+#undef CLEANUP_pwdx
+#undef FOR_pwdx
+#undef FLAG_a
+#endif
+
+// pwgen   >2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]
+#undef OPTSTR_pwgen
+#define OPTSTR_pwgen ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]"
+#ifdef CLEANUP_pwgen
+#undef CLEANUP_pwgen
+#undef FOR_pwgen
+#undef FLAG_0
+#undef FLAG_A
+#undef FLAG_v
+#undef FLAG_1
+#undef FLAG_C
+#undef FLAG_h
+#undef FLAG_B
+#undef FLAG_s
+#undef FLAG_y
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// readahead    
+#undef OPTSTR_readahead
+#define OPTSTR_readahead 0
+#ifdef CLEANUP_readahead
+#undef CLEANUP_readahead
+#undef FOR_readahead
+#endif
+
+// readelf <1(dyn-syms)Aadehlnp:SsWx: <1(dyn-syms)Aadehlnp:SsWx:
+#undef OPTSTR_readelf
+#define OPTSTR_readelf "<1(dyn-syms)Aadehlnp:SsWx:"
+#ifdef CLEANUP_readelf
+#undef CLEANUP_readelf
+#undef FOR_readelf
+#undef FLAG_x
+#undef FLAG_W
+#undef FLAG_s
+#undef FLAG_S
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_h
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_dyn_syms
+#endif
+
+// readlink <1vnf(canonicalize)emqz[-mef][-qv] <1vnf(canonicalize)emqz[-mef][-qv]
+#undef OPTSTR_readlink
+#define OPTSTR_readlink "<1vnf(canonicalize)emqz[-mef][-qv]"
+#ifdef CLEANUP_readlink
+#undef CLEANUP_readlink
+#undef FOR_readlink
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#endif
+
+// realpath <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me] <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]
+#undef OPTSTR_realpath
+#define OPTSTR_realpath "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]"
+#ifdef CLEANUP_realpath
+#undef CLEANUP_realpath
+#undef FOR_realpath
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_relative_base
+#endif
+
+// reboot   d:fn
+#undef OPTSTR_reboot
+#define OPTSTR_reboot "d:fn"
+#ifdef CLEANUP_reboot
+#undef CLEANUP_reboot
+#undef FOR_reboot
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_d
+#endif
+
+// renice <1gpun#| <1gpun#|
+#undef OPTSTR_renice
+#define OPTSTR_renice "<1gpun#|"
+#ifdef CLEANUP_renice
+#undef CLEANUP_renice
+#undef FOR_renice
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_g
+#endif
+
+// reset    
+#undef OPTSTR_reset
+#define OPTSTR_reset 0
+#ifdef CLEANUP_reset
+#undef CLEANUP_reset
+#undef FOR_reset
+#endif
+
+// restorecon <1DFnRrv <1DFnRrv
+#undef OPTSTR_restorecon
+#define OPTSTR_restorecon "<1DFnRrv"
+#ifdef CLEANUP_restorecon
+#undef CLEANUP_restorecon
+#undef FOR_restorecon
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_D
+#endif
+
+// rev    
+#undef OPTSTR_rev
+#define OPTSTR_rev 0
+#ifdef CLEANUP_rev
+#undef CLEANUP_rev
+#undef FOR_rev
+#endif
+
+// rfkill <1>2 <1>2
+#undef OPTSTR_rfkill
+#define OPTSTR_rfkill "<1>2"
+#ifdef CLEANUP_rfkill
+#undef CLEANUP_rfkill
+#undef FOR_rfkill
+#endif
+
+// rm f(force)iRrv[-fi] f(force)iRrv[-fi]
+#undef OPTSTR_rm
+#define OPTSTR_rm "f(force)iRrv[-fi]"
+#ifdef CLEANUP_rm
+#undef CLEANUP_rm
+#undef FOR_rm
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_f
+#endif
+
+// rmdir <1(ignore-fail-on-non-empty)p(parents) <1(ignore-fail-on-non-empty)p(parents)
+#undef OPTSTR_rmdir
+#define OPTSTR_rmdir "<1(ignore-fail-on-non-empty)p(parents)"
+#ifdef CLEANUP_rmdir
+#undef CLEANUP_rmdir
+#undef FOR_rmdir
+#undef FLAG_p
+#undef FLAG_ignore_fail_on_non_empty
+#endif
+
+// rmmod <1wf <1wf
+#undef OPTSTR_rmmod
+#define OPTSTR_rmmod "<1wf"
+#ifdef CLEANUP_rmmod
+#undef CLEANUP_rmmod
+#undef FOR_rmmod
+#undef FLAG_f
+#undef FLAG_w
+#endif
+
+// route   ?neA:
+#undef OPTSTR_route
+#define OPTSTR_route "?neA:"
+#ifdef CLEANUP_route
+#undef CLEANUP_route
+#undef FOR_route
+#undef FLAG_A
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// rtcwake (list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu] (list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]
+#undef OPTSTR_rtcwake
+#define OPTSTR_rtcwake "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]"
+#ifdef CLEANUP_rtcwake
+#undef CLEANUP_rtcwake
+#undef FOR_rtcwake
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_auto
+#undef FLAG_list_modes
+#endif
+
+// runcon ^<2 ^<2
+#undef OPTSTR_runcon
+#define OPTSTR_runcon "^<2"
+#ifdef CLEANUP_runcon
+#undef CLEANUP_runcon
+#undef FOR_runcon
+#endif
+
+// sed (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er] (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]
+#undef OPTSTR_sed
+#define OPTSTR_sed "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]"
+#ifdef CLEANUP_sed
+#undef CLEANUP_sed
+#undef FOR_sed
+#undef FLAG_s
+#undef FLAG_z
+#undef FLAG_r
+#undef FLAG_E
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_tarxform
+#undef FLAG_version
+#undef FLAG_help
+#endif
+
+// sendevent <4>4 <4>4
+#undef OPTSTR_sendevent
+#define OPTSTR_sendevent "<4>4"
+#ifdef CLEANUP_sendevent
+#undef CLEANUP_sendevent
+#undef FOR_sendevent
+#endif
+
+// seq <1>3?f:s:w[!fw] <1>3?f:s:w[!fw]
+#undef OPTSTR_seq
+#define OPTSTR_seq "<1>3?f:s:w[!fw]"
+#ifdef CLEANUP_seq
+#undef CLEANUP_seq
+#undef FOR_seq
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// set    
+#undef OPTSTR_set
+#define OPTSTR_set 0
+#ifdef CLEANUP_set
+#undef CLEANUP_set
+#undef FOR_set
+#endif
+
+// setenforce <1>1 <1>1
+#undef OPTSTR_setenforce
+#define OPTSTR_setenforce "<1>1"
+#ifdef CLEANUP_setenforce
+#undef CLEANUP_setenforce
+#undef FOR_setenforce
+#endif
+
+// setfattr hn:|v:x:|[!xv] hn:|v:x:|[!xv]
+#undef OPTSTR_setfattr
+#define OPTSTR_setfattr "hn:|v:x:|[!xv]"
+#ifdef CLEANUP_setfattr
+#undef CLEANUP_setfattr
+#undef FOR_setfattr
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_h
+#endif
+
+// setsid ^<1wc@d[!dc] ^<1wc@d[!dc]
+#undef OPTSTR_setsid
+#define OPTSTR_setsid "^<1wc@d[!dc]"
+#ifdef CLEANUP_setsid
+#undef CLEANUP_setsid
+#undef FOR_setsid
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_w
+#endif
+
+// sh   0^(noediting)(noprofile)(norc)sc:i
+#undef OPTSTR_sh
+#define OPTSTR_sh "0^(noediting)(noprofile)(norc)sc:i"
+#ifdef CLEANUP_sh
+#undef CLEANUP_sh
+#undef FOR_sh
+#undef FLAG_i
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_norc
+#undef FLAG_noprofile
+#undef FLAG_noediting
+#endif
+
+// sha3sum   bSa#<128>512=224
+#undef OPTSTR_sha3sum
+#define OPTSTR_sha3sum "bSa#<128>512=224"
+#ifdef CLEANUP_sha3sum
+#undef CLEANUP_sha3sum
+#undef FOR_sha3sum
+#undef FLAG_a
+#undef FLAG_S
+#undef FLAG_b
+#endif
+
+// shift   >1
+#undef OPTSTR_shift
+#define OPTSTR_shift ">1"
+#ifdef CLEANUP_shift
+#undef CLEANUP_shift
+#undef FOR_shift
+#endif
+
+// shred   <1zxus#<1n#<1o#<0f
+#undef OPTSTR_shred
+#define OPTSTR_shred "<1zxus#<1n#<1o#<0f"
+#ifdef CLEANUP_shred
+#undef CLEANUP_shred
+#undef FOR_shred
+#undef FLAG_f
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_x
+#undef FLAG_z
+#endif
+
+// shuf   zen#<0
+#undef OPTSTR_shuf
+#define OPTSTR_shuf "zen#<0"
+#ifdef CLEANUP_shuf
+#undef CLEANUP_shuf
+#undef FOR_shuf
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_z
+#endif
+
+// skeleton   (walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a
+#undef OPTSTR_skeleton
+#define OPTSTR_skeleton "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a"
+#ifdef CLEANUP_skeleton
+#undef CLEANUP_skeleton
+#undef FOR_skeleton
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_also
+#undef FLAG_blubber
+#undef FLAG_walrus
+#endif
+
+// skeleton_alias   b#dq
+#undef OPTSTR_skeleton_alias
+#define OPTSTR_skeleton_alias "b#dq"
+#ifdef CLEANUP_skeleton_alias
+#undef CLEANUP_skeleton_alias
+#undef FOR_skeleton_alias
+#undef FLAG_q
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// sleep <1 <1
+#undef OPTSTR_sleep
+#define OPTSTR_sleep "<1"
+#ifdef CLEANUP_sleep
+#undef CLEANUP_sleep
+#undef FOR_sleep
+#endif
+
+// sntp   >1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]
+#undef OPTSTR_sntp
+#define OPTSTR_sntp ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]"
+#ifdef CLEANUP_sntp
+#undef CLEANUP_sntp
+#undef FOR_sntp
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_S
+#undef FLAG_m
+#undef FLAG_M
+#endif
+
+// sort gS:T:mo:k*t:xVbMCcszdfirun gS:T:mo:k*t:xVbMCcszdfirun
+#undef OPTSTR_sort
+#define OPTSTR_sort "gS:T:mo:k*t:xVbMCcszdfirun"
+#ifdef CLEANUP_sort
+#undef CLEANUP_sort
+#undef FOR_sort
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#undef FLAG_M
+#undef FLAG_b
+#undef FLAG_V
+#undef FLAG_x
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_g
+#endif
+
+// source   <1
+#undef OPTSTR_source
+#define OPTSTR_source "<1"
+#ifdef CLEANUP_source
+#undef CLEANUP_source
+#undef FOR_source
+#endif
+
+// split >2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln] >2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]
+#undef OPTSTR_split
+#define OPTSTR_split ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]"
+#ifdef CLEANUP_split
+#undef CLEANUP_split
+#undef FOR_split
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// stat <1c:(format)fLt <1c:(format)fLt
+#undef OPTSTR_stat
+#define OPTSTR_stat "<1c:(format)fLt"
+#ifdef CLEANUP_stat
+#undef CLEANUP_stat
+#undef FOR_stat
+#undef FLAG_t
+#undef FLAG_L
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// strace   ^p#s#v
+#undef OPTSTR_strace
+#define OPTSTR_strace "^p#s#v"
+#ifdef CLEANUP_strace
+#undef CLEANUP_strace
+#undef FOR_strace
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// strings t:an#=4<1fo t:an#=4<1fo
+#undef OPTSTR_strings
+#define OPTSTR_strings "t:an#=4<1fo"
+#ifdef CLEANUP_strings
+#undef CLEANUP_strings
+#undef FOR_strings
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_t
+#endif
+
+// stty ?aF:g[!ag] ?aF:g[!ag]
+#undef OPTSTR_stty
+#define OPTSTR_stty "?aF:g[!ag]"
+#ifdef CLEANUP_stty
+#undef CLEANUP_stty
+#undef FOR_stty
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// su   ^lmpu:g:c:s:[!lmp]
+#undef OPTSTR_su
+#define OPTSTR_su "^lmpu:g:c:s:[!lmp]"
+#ifdef CLEANUP_su
+#undef CLEANUP_su
+#undef FOR_su
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_g
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_m
+#undef FLAG_l
+#endif
+
+// sulogin   t#<0=0
+#undef OPTSTR_sulogin
+#define OPTSTR_sulogin "t#<0=0"
+#ifdef CLEANUP_sulogin
+#undef CLEANUP_sulogin
+#undef FOR_sulogin
+#undef FLAG_t
+#endif
+
+// swapoff <1>1av <1>1av
+#undef OPTSTR_swapoff
+#define OPTSTR_swapoff "<1>1av"
+#ifdef CLEANUP_swapoff
+#undef CLEANUP_swapoff
+#undef FOR_swapoff
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// swapon <1>1p#<0>32767d <1>1p#<0>32767d
+#undef OPTSTR_swapon
+#define OPTSTR_swapon "<1>1p#<0>32767d"
+#ifdef CLEANUP_swapon
+#undef CLEANUP_swapon
+#undef FOR_swapon
+#undef FLAG_d
+#undef FLAG_p
+#endif
+
+// switch_root   <2c:h
+#undef OPTSTR_switch_root
+#define OPTSTR_switch_root "<2c:h"
+#ifdef CLEANUP_switch_root
+#undef CLEANUP_switch_root
+#undef FOR_switch_root
+#undef FLAG_h
+#undef FLAG_c
+#endif
+
+// sync    
+#undef OPTSTR_sync
+#define OPTSTR_sync 0
+#ifdef CLEANUP_sync
+#undef CLEANUP_sync
+#undef FOR_sync
+#endif
+
+// sysctl ^neNqwpaA[!ap][!aq][!aw][+aA] ^neNqwpaA[!ap][!aq][!aw][+aA]
+#undef OPTSTR_sysctl
+#define OPTSTR_sysctl "^neNqwpaA[!ap][!aq][!aw][+aA]"
+#ifdef CLEANUP_sysctl
+#undef CLEANUP_sysctl
+#undef FOR_sysctl
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_p
+#undef FLAG_w
+#undef FLAG_q
+#undef FLAG_N
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// syslogd   >0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD
+#undef OPTSTR_syslogd
+#define OPTSTR_syslogd ">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD"
+#ifdef CLEANUP_syslogd
+#undef CLEANUP_syslogd
+#undef FOR_syslogd
+#undef FLAG_D
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_m
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_l
+#endif
+
+// tac    
+#undef OPTSTR_tac
+#define OPTSTR_tac 0
+#ifdef CLEANUP_tac
+#undef CLEANUP_tac
+#undef FOR_tac
+#endif
+
+// tail ?fFs:c(bytes)-n(lines)-[-cn][-fF] ?fFs:c(bytes)-n(lines)-[-cn][-fF]
+#undef OPTSTR_tail
+#define OPTSTR_tail "?fFs:c(bytes)-n(lines)-[-cn][-fF]"
+#ifdef CLEANUP_tail
+#undef CLEANUP_tail
+#undef FOR_tail
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_F
+#undef FLAG_f
+#endif
+
+// tar &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa] &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]
+#undef OPTSTR_tar
+#define OPTSTR_tar "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]"
+#ifdef CLEANUP_tar
+#undef CLEANUP_tar
+#undef FOR_tar
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_C
+#undef FLAG_I
+#undef FLAG_T
+#undef FLAG_X
+#undef FLAG_m
+#undef FLAG_P
+#undef FLAG_O
+#undef FLAG_S
+#undef FLAG_z
+#undef FLAG_j
+#undef FLAG_J
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_x
+#undef FLAG_h
+#undef FLAG_c
+#undef FLAG_k
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_xform
+#undef FLAG_strip
+#undef FLAG_to_command
+#undef FLAG_owner
+#undef FLAG_group
+#undef FLAG_mtime
+#undef FLAG_mode
+#undef FLAG_sort
+#undef FLAG_exclude
+#undef FLAG_overwrite
+#undef FLAG_no_same_permissions
+#undef FLAG_numeric_owner
+#undef FLAG_null
+#undef FLAG_no_recursion
+#undef FLAG_full_time
+#undef FLAG_restrict
+#undef FLAG_selinux
+#undef FLAG_show_transformed_names
+#undef FLAG_wildcards_match_slash
+#undef FLAG_no_wildcards_match_slash
+#undef FLAG_wildcards
+#undef FLAG_no_wildcards
+#undef FLAG_anchored
+#undef FLAG_no_anchored
+#undef FLAG_ignore_case
+#undef FLAG_no_ignore_case
+#undef FLAG_one_file_system
+#endif
+
+// taskset <1^pa <1^pa
+#undef OPTSTR_taskset
+#define OPTSTR_taskset "<1^pa"
+#ifdef CLEANUP_taskset
+#undef CLEANUP_taskset
+#undef FOR_taskset
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// tcpsvd   ^<3c#=30<1b#=20<0C:u:l:hEv
+#undef OPTSTR_tcpsvd
+#define OPTSTR_tcpsvd "^<3c#=30<1b#=20<0C:u:l:hEv"
+#ifdef CLEANUP_tcpsvd
+#undef CLEANUP_tcpsvd
+#undef FOR_tcpsvd
+#undef FLAG_v
+#undef FLAG_E
+#undef FLAG_h
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_C
+#undef FLAG_b
+#undef FLAG_c
+#endif
+
+// tee ia ia
+#undef OPTSTR_tee
+#define OPTSTR_tee "ia"
+#ifdef CLEANUP_tee
+#undef CLEANUP_tee
+#undef FOR_tee
+#undef FLAG_a
+#undef FLAG_i
+#endif
+
+// telnet   <1>2
+#undef OPTSTR_telnet
+#define OPTSTR_telnet "<1>2"
+#ifdef CLEANUP_telnet
+#undef CLEANUP_telnet
+#undef FOR_telnet
+#endif
+
+// telnetd   w#<0b:p#<0>65535=23f:l:FSKi[!wi]
+#undef OPTSTR_telnetd
+#define OPTSTR_telnetd "w#<0b:p#<0>65535=23f:l:FSKi[!wi]"
+#ifdef CLEANUP_telnetd
+#undef CLEANUP_telnetd
+#undef FOR_telnetd
+#undef FLAG_i
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_F
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_b
+#undef FLAG_w
+#endif
+
+// test    
+#undef OPTSTR_test
+#define OPTSTR_test 0
+#ifdef CLEANUP_test
+#undef CLEANUP_test
+#undef FOR_test
+#endif
+
+// tftp   <1b#<8>65464r:l:g|p|[!gp]
+#undef OPTSTR_tftp
+#define OPTSTR_tftp "<1b#<8>65464r:l:g|p|[!gp]"
+#ifdef CLEANUP_tftp
+#undef CLEANUP_tftp
+#undef FOR_tftp
+#undef FLAG_p
+#undef FLAG_g
+#undef FLAG_l
+#undef FLAG_r
+#undef FLAG_b
+#endif
+
+// tftpd   rcu:l
+#undef OPTSTR_tftpd
+#define OPTSTR_tftpd "rcu:l"
+#ifdef CLEANUP_tftpd
+#undef CLEANUP_tftpd
+#undef FOR_tftpd
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// time <1^pv[-pv] <1^pv[-pv]
+#undef OPTSTR_time
+#define OPTSTR_time "<1^pv[-pv]"
+#ifdef CLEANUP_time
+#undef CLEANUP_time
+#undef FOR_time
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// timeout <2^(foreground)(preserve-status)vk:s(signal):i <2^(foreground)(preserve-status)vk:s(signal):i
+#undef OPTSTR_timeout
+#define OPTSTR_timeout "<2^(foreground)(preserve-status)vk:s(signal):i"
+#ifdef CLEANUP_timeout
+#undef CLEANUP_timeout
+#undef FOR_timeout
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_k
+#undef FLAG_v
+#undef FLAG_preserve_status
+#undef FLAG_foreground
+#endif
+
+// top >0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO] >0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]
+#undef OPTSTR_top
+#define OPTSTR_top ">0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]"
+#ifdef CLEANUP_top
+#undef CLEANUP_top
+#undef FOR_top
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_h
+#undef FLAG_O
+#endif
+
+// touch <1acd:fmr:t:h[!dtr] <1acd:fmr:t:h[!dtr]
+#undef OPTSTR_touch
+#define OPTSTR_touch "<1acd:fmr:t:h[!dtr]"
+#ifdef CLEANUP_touch
+#undef CLEANUP_touch
+#undef FOR_touch
+#undef FLAG_h
+#undef FLAG_t
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// toybox    
+#undef OPTSTR_toybox
+#define OPTSTR_toybox 0
+#ifdef CLEANUP_toybox
+#undef CLEANUP_toybox
+#undef FOR_toybox
+#endif
+
+// tr ^<1>2Ccstd[+cC] ^<1>2Ccstd[+cC]
+#undef OPTSTR_tr
+#define OPTSTR_tr "^<1>2Ccstd[+cC]"
+#ifdef CLEANUP_tr
+#undef CLEANUP_tr
+#undef FOR_tr
+#undef FLAG_d
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#endif
+
+// traceroute <1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64 <1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64
+#undef OPTSTR_traceroute
+#define OPTSTR_traceroute "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64"
+#ifdef CLEANUP_traceroute
+#undef CLEANUP_traceroute
+#undef FOR_traceroute
+#undef FLAG_4
+#undef FLAG_6
+#undef FLAG_F
+#undef FLAG_U
+#undef FLAG_I
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_g
+#undef FLAG_z
+#undef FLAG_f
+#undef FLAG_i
+#endif
+
+// true    
+#undef OPTSTR_true
+#define OPTSTR_true 0
+#ifdef CLEANUP_true
+#undef CLEANUP_true
+#undef FOR_true
+#endif
+
+// truncate <1s:|c <1s:|c
+#undef OPTSTR_truncate
+#define OPTSTR_truncate "<1s:|c"
+#ifdef CLEANUP_truncate
+#undef CLEANUP_truncate
+#undef FOR_truncate
+#undef FLAG_c
+#undef FLAG_s
+#endif
+
+// ts   ims
+#undef OPTSTR_ts
+#define OPTSTR_ts "ims"
+#ifdef CLEANUP_ts
+#undef CLEANUP_ts
+#undef FOR_ts
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_i
+#endif
+
+// tsort   >1
+#undef OPTSTR_tsort
+#define OPTSTR_tsort ">1"
+#ifdef CLEANUP_tsort
+#undef CLEANUP_tsort
+#undef FOR_tsort
+#endif
+
+// tty s s
+#undef OPTSTR_tty
+#define OPTSTR_tty "s"
+#ifdef CLEANUP_tty
+#undef CLEANUP_tty
+#undef FOR_tty
+#undef FLAG_s
+#endif
+
+// tunctl <1>1t|d|u:T[!td] <1>1t|d|u:T[!td]
+#undef OPTSTR_tunctl
+#define OPTSTR_tunctl "<1>1t|d|u:T[!td]"
+#ifdef CLEANUP_tunctl
+#undef CLEANUP_tunctl
+#undef FOR_tunctl
+#undef FLAG_T
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_t
+#endif
+
+// uclampset p#am#<-1>1024M#<-1>1024R p#am#<-1>1024M#<-1>1024R
+#undef OPTSTR_uclampset
+#define OPTSTR_uclampset "p#am#<-1>1024M#<-1>1024R"
+#ifdef CLEANUP_uclampset
+#undef CLEANUP_uclampset
+#undef FOR_uclampset
+#undef FLAG_R
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// ulimit >1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc] >1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]
+#undef OPTSTR_ulimit
+#define OPTSTR_ulimit ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]"
+#ifdef CLEANUP_ulimit
+#undef CLEANUP_ulimit
+#undef FOR_ulimit
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_i
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_a
+#undef FLAG_H
+#undef FLAG_S
+#undef FLAG_P
+#endif
+
+// umount cndDflrat*v[!na] cndDflrat*v[!na]
+#undef OPTSTR_umount
+#define OPTSTR_umount "cndDflrat*v[!na]"
+#ifdef CLEANUP_umount
+#undef CLEANUP_umount
+#undef FOR_umount
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_a
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// uname paomvrns paomvrns
+#undef OPTSTR_uname
+#define OPTSTR_uname "paomvrns"
+#ifdef CLEANUP_uname
+#undef CLEANUP_uname
+#undef FOR_uname
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_v
+#undef FLAG_m
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// unicode   <1
+#undef OPTSTR_unicode
+#define OPTSTR_unicode "<1"
+#ifdef CLEANUP_unicode
+#undef CLEANUP_unicode
+#undef FOR_unicode
+#endif
+
+// uniq f#s#w#zicdu f#s#w#zicdu
+#undef OPTSTR_uniq
+#define OPTSTR_uniq "f#s#w#zicdu"
+#ifdef CLEANUP_uniq
+#undef CLEANUP_uniq
+#undef FOR_uniq
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_i
+#undef FLAG_z
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// unix2dos    
+#undef OPTSTR_unix2dos
+#define OPTSTR_unix2dos 0
+#ifdef CLEANUP_unix2dos
+#undef CLEANUP_unix2dos
+#undef FOR_unix2dos
+#endif
+
+// unlink <1>1 <1>1
+#undef OPTSTR_unlink
+#define OPTSTR_unlink "<1>1"
+#ifdef CLEANUP_unlink
+#undef CLEANUP_unlink
+#undef FOR_unlink
+#endif
+
+// unset   fvn[!fv]
+#undef OPTSTR_unset
+#define OPTSTR_unset "fvn[!fv]"
+#ifdef CLEANUP_unset
+#undef CLEANUP_unset
+#undef FOR_unset
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_f
+#endif
+
+// unshare <1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):;  <1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_unshare
+#define OPTSTR_unshare "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_unshare
+#undef CLEANUP_unshare
+#undef FOR_unshare
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_r
+#undef FLAG_f
+#undef FLAG_a
+#endif
+
+// uptime >0ps >0ps
+#undef OPTSTR_uptime
+#define OPTSTR_uptime ">0ps"
+#ifdef CLEANUP_uptime
+#undef CLEANUP_uptime
+#undef FOR_uptime
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// useradd   <1>2u#<0G:s:g:h:SDH
+#undef OPTSTR_useradd
+#define OPTSTR_useradd "<1>2u#<0G:s:g:h:SDH"
+#ifdef CLEANUP_useradd
+#undef CLEANUP_useradd
+#undef FOR_useradd
+#undef FLAG_H
+#undef FLAG_D
+#undef FLAG_S
+#undef FLAG_h
+#undef FLAG_g
+#undef FLAG_s
+#undef FLAG_G
+#undef FLAG_u
+#endif
+
+// userdel   <1>1r
+#undef OPTSTR_userdel
+#define OPTSTR_userdel "<1>1r"
+#ifdef CLEANUP_userdel
+#undef CLEANUP_userdel
+#undef FOR_userdel
+#undef FLAG_r
+#endif
+
+// usleep <1>1 <1>1
+#undef OPTSTR_usleep
+#define OPTSTR_usleep "<1>1"
+#ifdef CLEANUP_usleep
+#undef CLEANUP_usleep
+#undef FOR_usleep
+#endif
+
+// uudecode >1o: >1o:
+#undef OPTSTR_uudecode
+#define OPTSTR_uudecode ">1o:"
+#ifdef CLEANUP_uudecode
+#undef CLEANUP_uudecode
+#undef FOR_uudecode
+#undef FLAG_o
+#endif
+
+// uuencode <1>2m <1>2m
+#undef OPTSTR_uuencode
+#define OPTSTR_uuencode "<1>2m"
+#ifdef CLEANUP_uuencode
+#undef CLEANUP_uuencode
+#undef FOR_uuencode
+#undef FLAG_m
+#endif
+
+// uuidgen >0r(random) >0r(random)
+#undef OPTSTR_uuidgen
+#define OPTSTR_uuidgen ">0r(random)"
+#ifdef CLEANUP_uuidgen
+#undef CLEANUP_uuidgen
+#undef FOR_uuidgen
+#undef FLAG_r
+#endif
+
+// vconfig <2>4 <2>4
+#undef OPTSTR_vconfig
+#define OPTSTR_vconfig "<2>4"
+#ifdef CLEANUP_vconfig
+#undef CLEANUP_vconfig
+#undef FOR_vconfig
+#endif
+
+// vi >1s: >1s:
+#undef OPTSTR_vi
+#define OPTSTR_vi ">1s:"
+#ifdef CLEANUP_vi
+#undef CLEANUP_vi
+#undef FOR_vi
+#undef FLAG_s
+#endif
+
+// vmstat >2n >2n
+#undef OPTSTR_vmstat
+#define OPTSTR_vmstat ">2n"
+#ifdef CLEANUP_vmstat
+#undef CLEANUP_vmstat
+#undef FOR_vmstat
+#undef FLAG_n
+#endif
+
+// w    
+#undef OPTSTR_w
+#define OPTSTR_w 0
+#ifdef CLEANUP_w
+#undef CLEANUP_w
+#undef FOR_w
+#endif
+
+// wait   n
+#undef OPTSTR_wait
+#define OPTSTR_wait "n"
+#ifdef CLEANUP_wait
+#undef CLEANUP_wait
+#undef FOR_wait
+#undef FLAG_n
+#endif
+
+// watch ^<1n%<100=2000tebx ^<1n%<100=2000tebx
+#undef OPTSTR_watch
+#define OPTSTR_watch "^<1n%<100=2000tebx"
+#ifdef CLEANUP_watch
+#undef CLEANUP_watch
+#undef FOR_watch
+#undef FLAG_x
+#undef FLAG_b
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_n
+#endif
+
+// watchdog   <1>1Ft#=4<1T#=60<1
+#undef OPTSTR_watchdog
+#define OPTSTR_watchdog "<1>1Ft#=4<1T#=60<1"
+#ifdef CLEANUP_watchdog
+#undef CLEANUP_watchdog
+#undef FOR_watchdog
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_F
+#endif
+
+// wc Lcmwl Lcmwl
+#undef OPTSTR_wc
+#define OPTSTR_wc "Lcmwl"
+#ifdef CLEANUP_wc
+#undef CLEANUP_wc
+#undef FOR_wc
+#undef FLAG_l
+#undef FLAG_w
+#undef FLAG_m
+#undef FLAG_c
+#undef FLAG_L
+#endif
+
+// wget   <1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):
+#undef OPTSTR_wget
+#define OPTSTR_wget "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):"
+#ifdef CLEANUP_wget
+#undef CLEANUP_wget
+#undef FOR_wget
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_d
+#undef FLAG_max_redirect
+#endif
+
+// which <1a <1a
+#undef OPTSTR_which
+#define OPTSTR_which "<1a"
+#ifdef CLEANUP_which
+#undef CLEANUP_which
+#undef FOR_which
+#undef FLAG_a
+#endif
+
+// who   a
+#undef OPTSTR_who
+#define OPTSTR_who "a"
+#ifdef CLEANUP_who
+#undef CLEANUP_who
+#undef FOR_who
+#undef FLAG_a
+#endif
+
+// xargs ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E] ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]
+#undef OPTSTR_xargs
+#define OPTSTR_xargs "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]"
+#ifdef CLEANUP_xargs
+#undef CLEANUP_xargs
+#undef FOR_xargs
+#undef FLAG_0
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_P
+#undef FLAG_E
+#endif
+
+// xxd >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re] >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]
+#undef OPTSTR_xxd
+#define OPTSTR_xxd ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]"
+#ifdef CLEANUP_xxd
+#undef CLEANUP_xxd
+#undef FOR_xxd
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_i
+#undef FLAG_e
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// xzcat    
+#undef OPTSTR_xzcat
+#define OPTSTR_xzcat 0
+#ifdef CLEANUP_xzcat
+#undef CLEANUP_xzcat
+#undef FOR_xzcat
+#endif
+
+// yes    
+#undef OPTSTR_yes
+#define OPTSTR_yes 0
+#ifdef CLEANUP_yes
+#undef CLEANUP_yes
+#undef FOR_yes
+#endif
+
+// zcat cdfkt123456789[-123456789] cdfkt123456789[-123456789]
+#undef OPTSTR_zcat
+#define OPTSTR_zcat "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_zcat
+#undef CLEANUP_zcat
+#undef FOR_zcat
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+#ifdef FOR_acpi
+#define CLEANUP_acpi
+#ifndef TT
+#define TT this.acpi
+#endif
+#define FLAG_V (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_b (1LL<<3)
+#define FLAG_a (1LL<<4)
+#endif
+
+#ifdef FOR_arch
+#define CLEANUP_arch
+#ifndef TT
+#define TT this.arch
+#endif
+#endif
+
+#ifdef FOR_arp
+#define CLEANUP_arp
+#ifndef TT
+#define TT this.arp
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_v (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_arping
+#define CLEANUP_arping
+#ifndef TT
+#define TT this.arping
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_D (FORCED_FLAG<<3)
+#define FLAG_U (FORCED_FLAG<<4)
+#define FLAG_A (FORCED_FLAG<<5)
+#define FLAG_c (FORCED_FLAG<<6)
+#define FLAG_w (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_ascii
+#define CLEANUP_ascii
+#ifndef TT
+#define TT this.ascii
+#endif
+#endif
+
+#ifdef FOR_base32
+#define CLEANUP_base32
+#ifndef TT
+#define TT this.base32
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_base64
+#define CLEANUP_base64
+#ifndef TT
+#define TT this.base64
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_i (1LL<<1)
+#define FLAG_d (1LL<<2)
+#endif
+
+#ifdef FOR_basename
+#define CLEANUP_basename
+#ifndef TT
+#define TT this.basename
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_bc
+#define CLEANUP_bc
+#ifndef TT
+#define TT this.bc
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_blkdiscard
+#define CLEANUP_blkdiscard
+#ifndef TT
+#define TT this.blkdiscard
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_o (1LL<<2)
+#define FLAG_l (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_blkid
+#define CLEANUP_blkid
+#ifndef TT
+#define TT this.blkid
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_o (1LL<<1)
+#define FLAG_L (1LL<<2)
+#define FLAG_U (1LL<<3)
+#endif
+
+#ifdef FOR_blockdev
+#define CLEANUP_blockdev
+#ifndef TT
+#define TT this.blockdev
+#endif
+#define FLAG_rereadpt (1LL<<0)
+#define FLAG_flushbufs (1LL<<1)
+#define FLAG_setra (1LL<<2)
+#define FLAG_getra (1LL<<3)
+#define FLAG_getsize64 (1LL<<4)
+#define FLAG_getsize (1LL<<5)
+#define FLAG_getsz (1LL<<6)
+#define FLAG_setbsz (1LL<<7)
+#define FLAG_getbsz (1LL<<8)
+#define FLAG_getss (1LL<<9)
+#define FLAG_getro (1LL<<10)
+#define FLAG_setrw (1LL<<11)
+#define FLAG_setro (1LL<<12)
+#endif
+
+#ifdef FOR_bootchartd
+#define CLEANUP_bootchartd
+#ifndef TT
+#define TT this.bootchartd
+#endif
+#endif
+
+#ifdef FOR_brctl
+#define CLEANUP_brctl
+#ifndef TT
+#define TT this.brctl
+#endif
+#endif
+
+#ifdef FOR_bunzip2
+#define CLEANUP_bunzip2
+#ifndef TT
+#define TT this.bunzip2
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_bzcat
+#define CLEANUP_bzcat
+#ifndef TT
+#define TT this.bzcat
+#endif
+#endif
+
+#ifdef FOR_cal
+#define CLEANUP_cal
+#ifndef TT
+#define TT this.cal
+#endif
+#define FLAG_h (1LL<<0)
+#endif
+
+#ifdef FOR_cat
+#define CLEANUP_cat
+#ifndef TT
+#define TT this.cat
+#endif
+#define FLAG_e (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_u (1LL<<3)
+#endif
+
+#ifdef FOR_cd
+#define CLEANUP_cd
+#ifndef TT
+#define TT this.cd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_chattr
+#define CLEANUP_chattr
+#ifndef TT
+#define TT this.chattr
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_p (1LL<<2)
+#endif
+
+#ifdef FOR_chcon
+#define CLEANUP_chcon
+#ifndef TT
+#define TT this.chcon
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_h (1LL<<2)
+#endif
+
+#ifdef FOR_chgrp
+#define CLEANUP_chgrp
+#ifndef TT
+#define TT this.chgrp
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_R (1LL<<2)
+#define FLAG_H (1LL<<3)
+#define FLAG_L (1LL<<4)
+#define FLAG_P (1LL<<5)
+#define FLAG_h (1LL<<6)
+#endif
+
+#ifdef FOR_chmod
+#define CLEANUP_chmod
+#ifndef TT
+#define TT this.chmod
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_v (1LL<<2)
+#endif
+
+#ifdef FOR_chroot
+#define CLEANUP_chroot
+#ifndef TT
+#define TT this.chroot
+#endif
+#endif
+
+#ifdef FOR_chrt
+#define CLEANUP_chrt
+#ifndef TT
+#define TT this.chrt
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_b (1LL<<3)
+#define FLAG_R (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_p (1LL<<6)
+#define FLAG_m (1LL<<7)
+#endif
+
+#ifdef FOR_chsh
+#define CLEANUP_chsh
+#ifndef TT
+#define TT this.chsh
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chvt
+#define CLEANUP_chvt
+#ifndef TT
+#define TT this.chvt
+#endif
+#endif
+
+#ifdef FOR_cksum
+#define CLEANUP_cksum
+#ifndef TT
+#define TT this.cksum
+#endif
+#define FLAG_N (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_P (1LL<<2)
+#define FLAG_I (1LL<<3)
+#define FLAG_H (1LL<<4)
+#endif
+
+#ifdef FOR_clear
+#define CLEANUP_clear
+#ifndef TT
+#define TT this.clear
+#endif
+#endif
+
+#ifdef FOR_cmp
+#define CLEANUP_cmp
+#ifndef TT
+#define TT this.cmp
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_l (1LL<<2)
+#endif
+
+#ifdef FOR_comm
+#define CLEANUP_comm
+#ifndef TT
+#define TT this.comm
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_2 (1LL<<1)
+#define FLAG_3 (1LL<<2)
+#endif
+
+#ifdef FOR_count
+#define CLEANUP_count
+#ifndef TT
+#define TT this.count
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_cp
+#define CLEANUP_cp
+#ifndef TT
+#define TT this.cp
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_a (1LL<<9)
+#define FLAG_d (1LL<<10)
+#define FLAG_u (1LL<<11)
+#define FLAG_r (1LL<<12)
+#define FLAG_p (1LL<<13)
+#define FLAG_P (1LL<<14)
+#define FLAG_L (1LL<<15)
+#define FLAG_H (1LL<<16)
+#define FLAG_R (1LL<<17)
+#define FLAG_D (1LL<<18)
+#define FLAG_preserve (1LL<<19)
+#endif
+
+#ifdef FOR_cpio
+#define CLEANUP_cpio
+#ifndef TT
+#define TT this.cpio
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_F (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_i (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_L (1LL<<7)
+#define FLAG_u (1LL<<8)
+#define FLAG_d (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_R (1LL<<11)
+#define FLAG_no_preserve_owner (1LL<<12)
+#define FLAG_quiet (1LL<<13)
+#define FLAG_renumber_inodes (1LL<<14)
+#define FLAG_ignore_devno (1LL<<15)
+#endif
+
+#ifdef FOR_crc32
+#define CLEANUP_crc32
+#ifndef TT
+#define TT this.crc32
+#endif
+#endif
+
+#ifdef FOR_crond
+#define CLEANUP_crond
+#ifndef TT
+#define TT this.crond
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_S (FORCED_FLAG<<4)
+#define FLAG_b (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_crontab
+#define CLEANUP_crontab
+#ifndef TT
+#define TT this.crontab
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_csplit
+#define CLEANUP_csplit
+#ifndef TT
+#define TT this.csplit
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_k (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_cut
+#define CLEANUP_cut
+#ifndef TT
+#define TT this.cut
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_D (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_O (1LL<<4)
+#define FLAG_C (1LL<<5)
+#define FLAG_F (1LL<<6)
+#define FLAG_f (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_b (1LL<<9)
+#endif
+
+#ifdef FOR_date
+#define CLEANUP_date
+#ifndef TT
+#define TT this.date
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_I (1LL<<3)
+#define FLAG_D (1LL<<4)
+#define FLAG_d (1LL<<5)
+#endif
+
+#ifdef FOR_dd
+#define CLEANUP_dd
+#ifndef TT
+#define TT this.dd
+#endif
+#endif
+
+#ifdef FOR_deallocvt
+#define CLEANUP_deallocvt
+#ifndef TT
+#define TT this.deallocvt
+#endif
+#endif
+
+#ifdef FOR_declare
+#define CLEANUP_declare
+#ifndef TT
+#define TT this.declare
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_demo_many_options
+#define CLEANUP_demo_many_options
+#ifndef TT
+#define TT this.demo_many_options
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_j (FORCED_FLAG<<9)
+#define FLAG_k (FORCED_FLAG<<10)
+#define FLAG_l (FORCED_FLAG<<11)
+#define FLAG_m (FORCED_FLAG<<12)
+#define FLAG_n (FORCED_FLAG<<13)
+#define FLAG_o (FORCED_FLAG<<14)
+#define FLAG_p (FORCED_FLAG<<15)
+#define FLAG_q (FORCED_FLAG<<16)
+#define FLAG_r (FORCED_FLAG<<17)
+#define FLAG_s (FORCED_FLAG<<18)
+#define FLAG_t (FORCED_FLAG<<19)
+#define FLAG_u (FORCED_FLAG<<20)
+#define FLAG_v (FORCED_FLAG<<21)
+#define FLAG_w (FORCED_FLAG<<22)
+#define FLAG_x (FORCED_FLAG<<23)
+#define FLAG_y (FORCED_FLAG<<24)
+#define FLAG_z (FORCED_FLAG<<25)
+#define FLAG_A (FORCED_FLAG<<26)
+#define FLAG_B (FORCED_FLAG<<27)
+#define FLAG_C (FORCED_FLAG<<28)
+#define FLAG_D (FORCED_FLAG<<29)
+#define FLAG_E (FORCED_FLAG<<30)
+#define FLAG_F (FORCED_FLAG<<31)
+#define FLAG_G (FORCED_FLAG<<32)
+#define FLAG_H (FORCED_FLAG<<33)
+#define FLAG_I (FORCED_FLAG<<34)
+#define FLAG_J (FORCED_FLAG<<35)
+#define FLAG_K (FORCED_FLAG<<36)
+#define FLAG_L (FORCED_FLAG<<37)
+#define FLAG_M (FORCED_FLAG<<38)
+#define FLAG_N (FORCED_FLAG<<39)
+#define FLAG_O (FORCED_FLAG<<40)
+#define FLAG_P (FORCED_FLAG<<41)
+#define FLAG_Q (FORCED_FLAG<<42)
+#define FLAG_R (FORCED_FLAG<<43)
+#define FLAG_S (FORCED_FLAG<<44)
+#define FLAG_T (FORCED_FLAG<<45)
+#define FLAG_U (FORCED_FLAG<<46)
+#define FLAG_V (FORCED_FLAG<<47)
+#define FLAG_W (FORCED_FLAG<<48)
+#define FLAG_X (FORCED_FLAG<<49)
+#define FLAG_Y (FORCED_FLAG<<50)
+#define FLAG_Z (FORCED_FLAG<<51)
+#endif
+
+#ifdef FOR_demo_number
+#define CLEANUP_demo_number
+#ifndef TT
+#define TT this.demo_number
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#define FLAG_h (FORCED_FLAG<<4)
+#define FLAG_M (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_demo_scankey
+#define CLEANUP_demo_scankey
+#ifndef TT
+#define TT this.demo_scankey
+#endif
+#endif
+
+#ifdef FOR_demo_utf8towc
+#define CLEANUP_demo_utf8towc
+#ifndef TT
+#define TT this.demo_utf8towc
+#endif
+#endif
+
+#ifdef FOR_devmem
+#define CLEANUP_devmem
+#ifndef TT
+#define TT this.devmem
+#endif
+#endif
+
+#ifdef FOR_df
+#define CLEANUP_df
+#ifndef TT
+#define TT this.df
+#endif
+#define FLAG_a (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_h (1LL<<3)
+#define FLAG_k (1LL<<4)
+#define FLAG_P (1LL<<5)
+#define FLAG_H (1LL<<6)
+#endif
+
+#ifdef FOR_dhcp
+#define CLEANUP_dhcp
+#ifndef TT
+#define TT this.dhcp
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_o (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_C (FORCED_FLAG<<7)
+#define FLAG_R (FORCED_FLAG<<8)
+#define FLAG_B (FORCED_FLAG<<9)
+#define FLAG_S (FORCED_FLAG<<10)
+#define FLAG_i (FORCED_FLAG<<11)
+#define FLAG_p (FORCED_FLAG<<12)
+#define FLAG_s (FORCED_FLAG<<13)
+#define FLAG_t (FORCED_FLAG<<14)
+#define FLAG_T (FORCED_FLAG<<15)
+#define FLAG_A (FORCED_FLAG<<16)
+#define FLAG_O (FORCED_FLAG<<17)
+#define FLAG_r (FORCED_FLAG<<18)
+#define FLAG_x (FORCED_FLAG<<19)
+#define FLAG_F (FORCED_FLAG<<20)
+#define FLAG_H (FORCED_FLAG<<21)
+#define FLAG_V (FORCED_FLAG<<22)
+#endif
+
+#ifdef FOR_dhcp6
+#define CLEANUP_dhcp6
+#ifndef TT
+#define TT this.dhcp6
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_R (FORCED_FLAG<<5)
+#define FLAG_S (FORCED_FLAG<<6)
+#define FLAG_i (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_T (FORCED_FLAG<<11)
+#define FLAG_A (FORCED_FLAG<<12)
+#define FLAG_r (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_dhcpd
+#define CLEANUP_dhcpd
+#ifndef TT
+#define TT this.dhcpd
+#endif
+#define FLAG_6 (FORCED_FLAG<<0)
+#define FLAG_4 (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_i (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_diff
+#define CLEANUP_diff
+#ifndef TT
+#define TT this.diff
+#endif
+#define FLAG_U (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_N (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_S (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_T (1LL<<9)
+#define FLAG_i (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_t (1LL<<12)
+#define FLAG_u (1LL<<13)
+#define FLAG_b (1LL<<14)
+#define FLAG_d (1LL<<15)
+#define FLAG_B (1LL<<16)
+#define FLAG_strip_trailing_cr (1LL<<17)
+#define FLAG_color (1LL<<18)
+#define FLAG_new_line_format (1LL<<19)
+#define FLAG_old_line_format (1LL<<20)
+#define FLAG_unchanged_line_format (1LL<<21)
+#endif
+
+#ifdef FOR_dirname
+#define CLEANUP_dirname
+#ifndef TT
+#define TT this.dirname
+#endif
+#endif
+
+#ifdef FOR_dmesg
+#define CLEANUP_dmesg
+#ifndef TT
+#define TT this.dmesg
+#endif
+#define FLAG_c (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_r (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_T (1LL<<5)
+#define FLAG_S (1LL<<6)
+#define FLAG_C (1LL<<7)
+#define FLAG_w (1LL<<8)
+#endif
+
+#ifdef FOR_dnsdomainname
+#define CLEANUP_dnsdomainname
+#ifndef TT
+#define TT this.dnsdomainname
+#endif
+#endif
+
+#ifdef FOR_dos2unix
+#define CLEANUP_dos2unix
+#ifndef TT
+#define TT this.dos2unix
+#endif
+#endif
+
+#ifdef FOR_du
+#define CLEANUP_du
+#ifndef TT
+#define TT this.du
+#endif
+#define FLAG_b (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_K (1LL<<4)
+#define FLAG_k (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_a (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_l (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_h (1LL<<11)
+#define FLAG_d (1LL<<12)
+#endif
+
+#ifdef FOR_dumpleases
+#define CLEANUP_dumpleases
+#ifndef TT
+#define TT this.dumpleases
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_echo
+#define CLEANUP_echo
+#ifndef TT
+#define TT this.echo
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_e (1LL<<1)
+#define FLAG_E (1LL<<2)
+#endif
+
+#ifdef FOR_eject
+#define CLEANUP_eject
+#ifndef TT
+#define TT this.eject
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_env
+#define CLEANUP_env
+#ifndef TT
+#define TT this.env
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_0 (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_e (1LL<<3)
+#endif
+
+#ifdef FOR_eval
+#define CLEANUP_eval
+#ifndef TT
+#define TT this.eval
+#endif
+#endif
+
+#ifdef FOR_exec
+#define CLEANUP_exec
+#ifndef TT
+#define TT this.exec
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_exit
+#define CLEANUP_exit
+#ifndef TT
+#define TT this.exit
+#endif
+#endif
+
+#ifdef FOR_expand
+#define CLEANUP_expand
+#ifndef TT
+#define TT this.expand
+#endif
+#define FLAG_t (1LL<<0)
+#endif
+
+#ifdef FOR_export
+#define CLEANUP_export
+#ifndef TT
+#define TT this.export
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_expr
+#define CLEANUP_expr
+#ifndef TT
+#define TT this.expr
+#endif
+#endif
+
+#ifdef FOR_factor
+#define CLEANUP_factor
+#ifndef TT
+#define TT this.factor
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_fallocate
+#define CLEANUP_fallocate
+#ifndef TT
+#define TT this.fallocate
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_l (1LL<<1)
+#endif
+
+#ifdef FOR_false
+#define CLEANUP_false
+#ifndef TT
+#define TT this.false
+#endif
+#endif
+
+#ifdef FOR_fdisk
+#define CLEANUP_fdisk
+#ifndef TT
+#define TT this.fdisk
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_H (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_file
+#define CLEANUP_file
+#ifndef TT
+#define TT this.file
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_h (1LL<<2)
+#define FLAG_b (1LL<<3)
+#endif
+
+#ifdef FOR_find
+#define CLEANUP_find
+#ifndef TT
+#define TT this.find
+#endif
+#define FLAG_L (1LL<<0)
+#define FLAG_H (1LL<<1)
+#endif
+
+#ifdef FOR_flock
+#define CLEANUP_flock
+#ifndef TT
+#define TT this.flock
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_n (1LL<<3)
+#endif
+
+#ifdef FOR_fmt
+#define CLEANUP_fmt
+#ifndef TT
+#define TT this.fmt
+#endif
+#define FLAG_w (1LL<<0)
+#endif
+
+#ifdef FOR_fold
+#define CLEANUP_fold
+#ifndef TT
+#define TT this.fold
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_free
+#define CLEANUP_free
+#ifndef TT
+#define TT this.free
+#endif
+#define FLAG_b (1LL<<0)
+#define FLAG_k (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_g (1LL<<3)
+#define FLAG_h (1LL<<4)
+#endif
+
+#ifdef FOR_freeramdisk
+#define CLEANUP_freeramdisk
+#ifndef TT
+#define TT this.freeramdisk
+#endif
+#endif
+
+#ifdef FOR_fsck
+#define CLEANUP_fsck
+#ifndef TT
+#define TT this.fsck
+#endif
+#define FLAG_C (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_V (FORCED_FLAG<<2)
+#define FLAG_T (FORCED_FLAG<<3)
+#define FLAG_R (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_N (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_t (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_fsfreeze
+#define CLEANUP_fsfreeze
+#ifndef TT
+#define TT this.fsfreeze
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_f (1LL<<1)
+#endif
+
+#ifdef FOR_fstype
+#define CLEANUP_fstype
+#ifndef TT
+#define TT this.fstype
+#endif
+#endif
+
+#ifdef FOR_fsync
+#define CLEANUP_fsync
+#ifndef TT
+#define TT this.fsync
+#endif
+#define FLAG_d (1LL<<0)
+#endif
+
+#ifdef FOR_ftpget
+#define CLEANUP_ftpget
+#ifndef TT
+#define TT this.ftpget
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_M (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_L (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_s (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#define FLAG_v (FORCED_FLAG<<8)
+#define FLAG_u (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#define FLAG_c (FORCED_FLAG<<11)
+#define FLAG_P (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_getconf
+#define CLEANUP_getconf
+#ifndef TT
+#define TT this.getconf
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_getenforce
+#define CLEANUP_getenforce
+#ifndef TT
+#define TT this.getenforce
+#endif
+#endif
+
+#ifdef FOR_getfattr
+#define CLEANUP_getfattr
+#ifndef TT
+#define TT this.getfattr
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_h (1LL<<1)
+#define FLAG_d (1LL<<2)
+#define FLAG_only_values (1LL<<3)
+#endif
+
+#ifdef FOR_getopt
+#define CLEANUP_getopt
+#ifndef TT
+#define TT this.getopt
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_T (1LL<<1)
+#define FLAG_l (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_a (1LL<<5)
+#endif
+
+#ifdef FOR_getty
+#define CLEANUP_getty
+#ifndef TT
+#define TT this.getty
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_w (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_l (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_H (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_gitcheckout
+#define CLEANUP_gitcheckout
+#ifndef TT
+#define TT this.gitcheckout
+#endif
+#endif
+
+#ifdef FOR_gitclone
+#define CLEANUP_gitclone
+#ifndef TT
+#define TT this.gitclone
+#endif
+#endif
+
+#ifdef FOR_gitfetch
+#define CLEANUP_gitfetch
+#ifndef TT
+#define TT this.gitfetch
+#endif
+#endif
+
+#ifdef FOR_gitinit
+#define CLEANUP_gitinit
+#ifndef TT
+#define TT this.gitinit
+#endif
+#endif
+
+#ifdef FOR_gitremote
+#define CLEANUP_gitremote
+#ifndef TT
+#define TT this.gitremote
+#endif
+#endif
+
+#ifdef FOR_gpiodetect
+#define CLEANUP_gpiodetect
+#ifndef TT
+#define TT this.gpiodetect
+#endif
+#endif
+
+#ifdef FOR_gpiofind
+#define CLEANUP_gpiofind
+#ifndef TT
+#define TT this.gpiofind
+#endif
+#endif
+
+#ifdef FOR_gpioget
+#define CLEANUP_gpioget
+#ifndef TT
+#define TT this.gpioget
+#endif
+#define FLAG_l (1LL<<0)
+#endif
+
+#ifdef FOR_gpioinfo
+#define CLEANUP_gpioinfo
+#ifndef TT
+#define TT this.gpioinfo
+#endif
+#endif
+
+#ifdef FOR_gpioset
+#define CLEANUP_gpioset
+#ifndef TT
+#define TT this.gpioset
+#endif
+#define FLAG_l (1LL<<0)
+#endif
+
+#ifdef FOR_grep
+#define CLEANUP_grep
+#ifndef TT
+#define TT this.grep
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_m (1LL<<1)
+#define FLAG_A (1LL<<2)
+#define FLAG_B (1LL<<3)
+#define FLAG_C (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_e (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_l (1LL<<8)
+#define FLAG_L (1LL<<9)
+#define FLAG_c (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_v (1LL<<12)
+#define FLAG_s (1LL<<13)
+#define FLAG_R (1LL<<14)
+#define FLAG_r (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_n (1LL<<17)
+#define FLAG_i (1LL<<18)
+#define FLAG_h (1LL<<19)
+#define FLAG_b (1LL<<20)
+#define FLAG_a (1LL<<21)
+#define FLAG_I (1LL<<22)
+#define FLAG_H (1LL<<23)
+#define FLAG_F (1LL<<24)
+#define FLAG_E (1LL<<25)
+#define FLAG_z (1LL<<26)
+#define FLAG_Z (1LL<<27)
+#define FLAG_M (1LL<<28)
+#define FLAG_S (1LL<<29)
+#define FLAG_exclude_dir (1LL<<30)
+#define FLAG_color (1LL<<31)
+#define FLAG_line_buffered (1LL<<32)
+#endif
+
+#ifdef FOR_groupadd
+#define CLEANUP_groupadd
+#ifndef TT
+#define TT this.groupadd
+#endif
+#define FLAG_S (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_groupdel
+#define CLEANUP_groupdel
+#ifndef TT
+#define TT this.groupdel
+#endif
+#endif
+
+#ifdef FOR_groups
+#define CLEANUP_groups
+#ifndef TT
+#define TT this.groups
+#endif
+#endif
+
+#ifdef FOR_gunzip
+#define CLEANUP_gunzip
+#ifndef TT
+#define TT this.gunzip
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#endif
+
+#ifdef FOR_gzip
+#define CLEANUP_gzip
+#ifndef TT
+#define TT this.gzip
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#define FLAG_n (1LL<<14)
+#endif
+
+#ifdef FOR_head
+#define CLEANUP_head
+#ifndef TT
+#define TT this.head
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_n (1LL<<3)
+#endif
+
+#ifdef FOR_hello
+#define CLEANUP_hello
+#ifndef TT
+#define TT this.hello
+#endif
+#endif
+
+#ifdef FOR_help
+#define CLEANUP_help
+#ifndef TT
+#define TT this.help
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_h (1LL<<1)
+#define FLAG_a (1LL<<2)
+#endif
+
+#ifdef FOR_hexdump
+#define CLEANUP_hexdump
+#ifndef TT
+#define TT this.hexdump
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_o (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_d (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#define FLAG_b (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_hexedit
+#define CLEANUP_hexedit
+#ifndef TT
+#define TT this.hexedit
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_host
+#define CLEANUP_host
+#ifndef TT
+#define TT this.host
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_hostid
+#define CLEANUP_hostid
+#ifndef TT
+#define TT this.hostid
+#endif
+#endif
+
+#ifdef FOR_hostname
+#define CLEANUP_hostname
+#ifndef TT
+#define TT this.hostname
+#endif
+#define FLAG_F (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_b (1LL<<4)
+#endif
+
+#ifdef FOR_httpd
+#define CLEANUP_httpd
+#ifndef TT
+#define TT this.httpd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_hwclock
+#define CLEANUP_hwclock
+#ifndef TT
+#define TT this.hwclock
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_l (1LL<<4)
+#define FLAG_u (1LL<<5)
+#define FLAG_f (1LL<<6)
+#define FLAG_fast (1LL<<7)
+#endif
+
+#ifdef FOR_i2cdetect
+#define CLEANUP_i2cdetect
+#ifndef TT
+#define TT this.i2cdetect
+#endif
+#define FLAG_y (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_q (1LL<<2)
+#define FLAG_l (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_a (1LL<<5)
+#endif
+
+#ifdef FOR_i2cdump
+#define CLEANUP_i2cdump
+#ifndef TT
+#define TT this.i2cdump
+#endif
+#define FLAG_y (1LL<<0)
+#define FLAG_f (1LL<<1)
+#endif
+
+#ifdef FOR_i2cget
+#define CLEANUP_i2cget
+#ifndef TT
+#define TT this.i2cget
+#endif
+#define FLAG_y (1LL<<0)
+#define FLAG_f (1LL<<1)
+#endif
+
+#ifdef FOR_i2cset
+#define CLEANUP_i2cset
+#ifndef TT
+#define TT this.i2cset
+#endif
+#define FLAG_y (1LL<<0)
+#define FLAG_f (1LL<<1)
+#endif
+
+#ifdef FOR_i2ctransfer
+#define CLEANUP_i2ctransfer
+#ifndef TT
+#define TT this.i2ctransfer
+#endif
+#define FLAG_y (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_v (1LL<<2)
+#endif
+
+#ifdef FOR_iconv
+#define CLEANUP_iconv
+#ifndef TT
+#define TT this.iconv
+#endif
+#define FLAG_f (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_c (1LL<<3)
+#endif
+
+#ifdef FOR_id
+#define CLEANUP_id
+#ifndef TT
+#define TT this.id
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_g (1LL<<2)
+#define FLAG_G (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_Z (1LL<<5)
+#endif
+
+#ifdef FOR_ifconfig
+#define CLEANUP_ifconfig
+#ifndef TT
+#define TT this.ifconfig
+#endif
+#define FLAG_S (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_init
+#define CLEANUP_init
+#ifndef TT
+#define TT this.init
+#endif
+#endif
+
+#ifdef FOR_inotifyd
+#define CLEANUP_inotifyd
+#ifndef TT
+#define TT this.inotifyd
+#endif
+#endif
+
+#ifdef FOR_insmod
+#define CLEANUP_insmod
+#ifndef TT
+#define TT this.insmod
+#endif
+#endif
+
+#ifdef FOR_install
+#define CLEANUP_install
+#ifndef TT
+#define TT this.install
+#endif
+#define FLAG_g (1LL<<0)
+#define FLAG_o (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_p (1LL<<6)
+#define FLAG_D (1LL<<7)
+#define FLAG_d (1LL<<8)
+#define FLAG_c (1LL<<9)
+#endif
+
+#ifdef FOR_ionice
+#define CLEANUP_ionice
+#ifndef TT
+#define TT this.ionice
+#endif
+#define FLAG_p (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_t (1LL<<3)
+#endif
+
+#ifdef FOR_iorenice
+#define CLEANUP_iorenice
+#ifndef TT
+#define TT this.iorenice
+#endif
+#endif
+
+#ifdef FOR_iotop
+#define CLEANUP_iotop
+#ifndef TT
+#define TT this.iotop
+#endif
+#define FLAG_q (1LL<<0)
+#define FLAG_b (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_m (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_u (1LL<<6)
+#define FLAG_p (1LL<<7)
+#define FLAG_o (1LL<<8)
+#define FLAG_k (1LL<<9)
+#define FLAG_H (1LL<<10)
+#define FLAG_O (1LL<<11)
+#define FLAG_K (1LL<<12)
+#define FLAG_a (1LL<<13)
+#define FLAG_A (1LL<<14)
+#endif
+
+#ifdef FOR_ip
+#define CLEANUP_ip
+#ifndef TT
+#define TT this.ip
+#endif
+#endif
+
+#ifdef FOR_ipcrm
+#define CLEANUP_ipcrm
+#ifndef TT
+#define TT this.ipcrm
+#endif
+#define FLAG_Q (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_M (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_ipcs
+#define CLEANUP_ipcs
+#ifndef TT
+#define TT this.ipcs
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_c (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_jobs
+#define CLEANUP_jobs
+#ifndef TT
+#define TT this.jobs
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_kill
+#define CLEANUP_kill
+#ifndef TT
+#define TT this.kill
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_l (1LL<<1)
+#endif
+
+#ifdef FOR_killall
+#define CLEANUP_killall
+#ifndef TT
+#define TT this.killall
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_q (1LL<<2)
+#define FLAG_l (1LL<<3)
+#define FLAG_i (1LL<<4)
+#define FLAG_s (1LL<<5)
+#endif
+
+#ifdef FOR_killall5
+#define CLEANUP_killall5
+#ifndef TT
+#define TT this.killall5
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_o (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_klogd
+#define CLEANUP_klogd
+#ifndef TT
+#define TT this.klogd
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_last
+#define CLEANUP_last
+#ifndef TT
+#define TT this.last
+#endif
+#define FLAG_W (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_link
+#define CLEANUP_link
+#ifndef TT
+#define TT this.link
+#endif
+#endif
+
+#ifdef FOR_linux32
+#define CLEANUP_linux32
+#ifndef TT
+#define TT this.linux32
+#endif
+#endif
+
+#ifdef FOR_ln
+#define CLEANUP_ln
+#ifndef TT
+#define TT this.ln
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_T (1LL<<4)
+#define FLAG_t (1LL<<5)
+#define FLAG_r (1LL<<6)
+#endif
+
+#ifdef FOR_load_policy
+#define CLEANUP_load_policy
+#ifndef TT
+#define TT this.load_policy
+#endif
+#endif
+
+#ifdef FOR_local
+#define CLEANUP_local
+#ifndef TT
+#define TT this.local
+#endif
+#endif
+
+#ifdef FOR_log
+#define CLEANUP_log
+#ifndef TT
+#define TT this.log
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_p (1LL<<1)
+#endif
+
+#ifdef FOR_logger
+#define CLEANUP_logger
+#ifndef TT
+#define TT this.logger
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_t (1LL<<2)
+#endif
+
+#ifdef FOR_login
+#define CLEANUP_login
+#ifndef TT
+#define TT this.login
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_logname
+#define CLEANUP_logname
+#ifndef TT
+#define TT this.logname
+#endif
+#endif
+
+#ifdef FOR_logpath
+#define CLEANUP_logpath
+#ifndef TT
+#define TT this.logpath
+#endif
+#endif
+
+#ifdef FOR_losetup
+#define CLEANUP_losetup
+#ifndef TT
+#define TT this.losetup
+#endif
+#define FLAG_D (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_j (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_r (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_S (1LL<<9)
+#endif
+
+#ifdef FOR_ls
+#define CLEANUP_ls
+#ifndef TT
+#define TT this.ls
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_w (1LL<<2)
+#define FLAG_u (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_r (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_p (1LL<<8)
+#define FLAG_n (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_l (1LL<<11)
+#define FLAG_k (1LL<<12)
+#define FLAG_i (1LL<<13)
+#define FLAG_h (1LL<<14)
+#define FLAG_f (1LL<<15)
+#define FLAG_d (1LL<<16)
+#define FLAG_c (1LL<<17)
+#define FLAG_b (1LL<<18)
+#define FLAG_a (1LL<<19)
+#define FLAG_X (1LL<<20)
+#define FLAG_U (1LL<<21)
+#define FLAG_S (1LL<<22)
+#define FLAG_R (1LL<<23)
+#define FLAG_N (1LL<<24)
+#define FLAG_L (1LL<<25)
+#define FLAG_H (1LL<<26)
+#define FLAG_F (1LL<<27)
+#define FLAG_C (1LL<<28)
+#define FLAG_A (1LL<<29)
+#define FLAG_o (1LL<<30)
+#define FLAG_g (1LL<<31)
+#define FLAG_Z (1LL<<32)
+#define FLAG_X7E (1LL<<33)
+#define FLAG_X21 (1LL<<34)
+#define FLAG_X7F (1LL<<35)
+#define FLAG_show_control_chars (1LL<<36)
+#define FLAG_full_time (1LL<<37)
+#define FLAG_color (1LL<<38)
+#define FLAG_sort (1LL<<39)
+#endif
+
+#ifdef FOR_lsattr
+#define CLEANUP_lsattr
+#ifndef TT
+#define TT this.lsattr
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_a (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_l (1LL<<5)
+#endif
+
+#ifdef FOR_lsmod
+#define CLEANUP_lsmod
+#ifndef TT
+#define TT this.lsmod
+#endif
+#endif
+
+#ifdef FOR_lsof
+#define CLEANUP_lsof
+#ifndef TT
+#define TT this.lsof
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_l (1LL<<2)
+#endif
+
+#ifdef FOR_lspci
+#define CLEANUP_lspci
+#ifndef TT
+#define TT this.lspci
+#endif
+#define FLAG_i (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_k (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_e (1LL<<5)
+#endif
+
+#ifdef FOR_lsusb
+#define CLEANUP_lsusb
+#ifndef TT
+#define TT this.lsusb
+#endif
+#define FLAG_i (1LL<<0)
+#endif
+
+#ifdef FOR_makedevs
+#define CLEANUP_makedevs
+#ifndef TT
+#define TT this.makedevs
+#endif
+#define FLAG_d (1LL<<0)
+#endif
+
+#ifdef FOR_man
+#define CLEANUP_man
+#ifndef TT
+#define TT this.man
+#endif
+#define FLAG_M (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mcookie
+#define CLEANUP_mcookie
+#ifndef TT
+#define TT this.mcookie
+#endif
+#define FLAG_V (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_md5sum
+#define CLEANUP_md5sum
+#ifndef TT
+#define TT this.md5sum
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_b (1LL<<2)
+#endif
+
+#ifdef FOR_mdev
+#define CLEANUP_mdev
+#ifndef TT
+#define TT this.mdev
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_memeater
+#define CLEANUP_memeater
+#ifndef TT
+#define TT this.memeater
+#endif
+#define FLAG_M (1LL<<0)
+#endif
+
+#ifdef FOR_microcom
+#define CLEANUP_microcom
+#ifndef TT
+#define TT this.microcom
+#endif
+#define FLAG_X (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_mix
+#define CLEANUP_mix
+#ifndef TT
+#define TT this.mix
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_mkdir
+#define CLEANUP_mkdir
+#ifndef TT
+#define TT this.mkdir
+#endif
+#define FLAG_m (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_Z (1LL<<3)
+#endif
+
+#ifdef FOR_mke2fs
+#define CLEANUP_mke2fs
+#ifndef TT
+#define TT this.mke2fs
+#endif
+#define FLAG_b (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_N (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_F (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_mkfifo
+#define CLEANUP_mkfifo
+#ifndef TT
+#define TT this.mkfifo
+#endif
+#define FLAG_m (1LL<<0)
+#define FLAG_Z (1LL<<1)
+#endif
+
+#ifdef FOR_mknod
+#define CLEANUP_mknod
+#ifndef TT
+#define TT this.mknod
+#endif
+#define FLAG_Z (1LL<<0)
+#define FLAG_m (1LL<<1)
+#endif
+
+#ifdef FOR_mkpasswd
+#define CLEANUP_mkpasswd
+#ifndef TT
+#define TT this.mkpasswd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_mkswap
+#define CLEANUP_mkswap
+#ifndef TT
+#define TT this.mkswap
+#endif
+#define FLAG_L (1LL<<0)
+#endif
+
+#ifdef FOR_mktemp
+#define CLEANUP_mktemp
+#ifndef TT
+#define TT this.mktemp
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_d (1LL<<2)
+#define FLAG_q (1LL<<3)
+#define FLAG_u (1LL<<4)
+#define FLAG_tmpdir (1LL<<5)
+#endif
+
+#ifdef FOR_modinfo
+#define CLEANUP_modinfo
+#ifndef TT
+#define TT this.modinfo
+#endif
+#define FLAG_0 (1LL<<0)
+#define FLAG_F (1LL<<1)
+#define FLAG_k (1LL<<2)
+#define FLAG_b (1LL<<3)
+#endif
+
+#ifdef FOR_modprobe
+#define CLEANUP_modprobe
+#ifndef TT
+#define TT this.modprobe
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_b (1LL<<1)
+#define FLAG_D (1LL<<2)
+#define FLAG_s (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_q (1LL<<5)
+#define FLAG_r (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_a (1LL<<8)
+#endif
+
+#ifdef FOR_more
+#define CLEANUP_more
+#ifndef TT
+#define TT this.more
+#endif
+#endif
+
+#ifdef FOR_mount
+#define CLEANUP_mount
+#ifndef TT
+#define TT this.mount
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_w (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_r (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_f (1LL<<6)
+#define FLAG_a (1LL<<7)
+#define FLAG_O (1LL<<8)
+#define FLAG_R (1LL<<9)
+#endif
+
+#ifdef FOR_mountpoint
+#define CLEANUP_mountpoint
+#ifndef TT
+#define TT this.mountpoint
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_d (1LL<<1)
+#define FLAG_q (1LL<<2)
+#endif
+
+#ifdef FOR_mv
+#define CLEANUP_mv
+#ifndef TT
+#define TT this.mv
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_x (1LL<<7)
+#endif
+
+#ifdef FOR_nbd_client
+#define CLEANUP_nbd_client
+#ifndef TT
+#define TT this.nbd_client
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_b (1LL<<2)
+#endif
+
+#ifdef FOR_nbd_server
+#define CLEANUP_nbd_server
+#ifndef TT
+#define TT this.nbd_server
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_netcat
+#define CLEANUP_netcat
+#ifndef TT
+#define TT this.netcat
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_U (1LL<<3)
+#define FLAG_u (1LL<<4)
+#define FLAG_6 (1LL<<5)
+#define FLAG_4 (1LL<<6)
+#define FLAG_f (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_q (1LL<<9)
+#define FLAG_p (1LL<<10)
+#define FLAG_W (1LL<<11)
+#define FLAG_w (1LL<<12)
+#define FLAG_L (1LL<<13)
+#define FLAG_l (1LL<<14)
+#define FLAG_E (1LL<<15)
+#define FLAG_t (1LL<<16)
+#endif
+
+#ifdef FOR_netstat
+#define CLEANUP_netstat
+#ifndef TT
+#define TT this.netstat
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_e (1LL<<2)
+#define FLAG_n (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_u (1LL<<5)
+#define FLAG_w (1LL<<6)
+#define FLAG_x (1LL<<7)
+#define FLAG_r (1LL<<8)
+#define FLAG_W (1LL<<9)
+#define FLAG_p (1LL<<10)
+#endif
+
+#ifdef FOR_nice
+#define CLEANUP_nice
+#ifndef TT
+#define TT this.nice
+#endif
+#define FLAG_n (1LL<<0)
+#endif
+
+#ifdef FOR_nl
+#define CLEANUP_nl
+#ifndef TT
+#define TT this.nl
+#endif
+#define FLAG_E (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_b (1LL<<3)
+#define FLAG_w (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_nohup
+#define CLEANUP_nohup
+#ifndef TT
+#define TT this.nohup
+#endif
+#endif
+
+#ifdef FOR_nproc
+#define CLEANUP_nproc
+#ifndef TT
+#define TT this.nproc
+#endif
+#define FLAG_all (1LL<<0)
+#endif
+
+#ifdef FOR_nsenter
+#define CLEANUP_nsenter
+#ifndef TT
+#define TT this.nsenter
+#endif
+#define FLAG_U (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_n (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_C (1LL<<6)
+#define FLAG_t (1LL<<7)
+#define FLAG_F (1LL<<8)
+#define FLAG_a (1LL<<9)
+#endif
+
+#ifdef FOR_od
+#define CLEANUP_od
+#ifndef TT
+#define TT this.od
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_A (1LL<<1)
+#define FLAG_b (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_x (1LL<<7)
+#define FLAG_N (1LL<<8)
+#define FLAG_w (1LL<<9)
+#define FLAG_v (1LL<<10)
+#define FLAG_j (1LL<<11)
+#endif
+
+#ifdef FOR_oneit
+#define CLEANUP_oneit
+#ifndef TT
+#define TT this.oneit
+#endif
+#define FLAG_3 (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_openvt
+#define CLEANUP_openvt
+#ifndef TT
+#define TT this.openvt
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_partprobe
+#define CLEANUP_partprobe
+#ifndef TT
+#define TT this.partprobe
+#endif
+#endif
+
+#ifdef FOR_passwd
+#define CLEANUP_passwd
+#ifndef TT
+#define TT this.passwd
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_paste
+#define CLEANUP_paste
+#ifndef TT
+#define TT this.paste
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_d (1LL<<1)
+#endif
+
+#ifdef FOR_patch
+#define CLEANUP_patch
+#ifndef TT
+#define TT this.patch
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_R (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_l (1LL<<6)
+#define FLAG_u (1LL<<7)
+#define FLAG_f (1LL<<8)
+#define FLAG_g (1LL<<9)
+#define FLAG_F (1LL<<10)
+#define FLAG_dry_run (1LL<<11)
+#define FLAG_no_backup_if_mismatch (1LL<<12)
+#endif
+
+#ifdef FOR_pgrep
+#define CLEANUP_pgrep
+#ifndef TT
+#define TT this.pgrep
+#endif
+#define FLAG_L (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_G (1LL<<6)
+#define FLAG_g (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_s (1LL<<9)
+#define FLAG_t (1LL<<10)
+#define FLAG_U (1LL<<11)
+#define FLAG_u (1LL<<12)
+#define FLAG_d (1LL<<13)
+#define FLAG_l (1LL<<14)
+#define FLAG_c (1LL<<15)
+#endif
+
+#ifdef FOR_pidof
+#define CLEANUP_pidof
+#ifndef TT
+#define TT this.pidof
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_o (1LL<<1)
+#define FLAG_s (1LL<<2)
+#endif
+
+#ifdef FOR_ping
+#define CLEANUP_ping
+#ifndef TT
+#define TT this.ping
+#endif
+#define FLAG_I (1LL<<0)
+#define FLAG_6 (1LL<<1)
+#define FLAG_4 (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_q (1LL<<4)
+#define FLAG_w (1LL<<5)
+#define FLAG_W (1LL<<6)
+#define FLAG_i (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_c (1LL<<9)
+#define FLAG_t (1LL<<10)
+#define FLAG_m (1LL<<11)
+#endif
+
+#ifdef FOR_pivot_root
+#define CLEANUP_pivot_root
+#ifndef TT
+#define TT this.pivot_root
+#endif
+#endif
+
+#ifdef FOR_pkill
+#define CLEANUP_pkill
+#ifndef TT
+#define TT this.pkill
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_G (1LL<<6)
+#define FLAG_g (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_s (1LL<<9)
+#define FLAG_t (1LL<<10)
+#define FLAG_U (1LL<<11)
+#define FLAG_u (1LL<<12)
+#define FLAG_V (1LL<<13)
+#endif
+
+#ifdef FOR_pmap
+#define CLEANUP_pmap
+#ifndef TT
+#define TT this.pmap
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_p (1LL<<2)
+#endif
+
+#ifdef FOR_printenv
+#define CLEANUP_printenv
+#ifndef TT
+#define TT this.printenv
+#endif
+#define FLAG_0 (1LL<<0)
+#define FLAG_null (1LL<<1)
+#endif
+
+#ifdef FOR_printf
+#define CLEANUP_printf
+#ifndef TT
+#define TT this.printf
+#endif
+#endif
+
+#ifdef FOR_ps
+#define CLEANUP_ps
+#ifndef TT
+#define TT this.ps
+#endif
+#define FLAG_Z (1LL<<0)
+#define FLAG_w (1LL<<1)
+#define FLAG_G (1LL<<2)
+#define FLAG_g (1LL<<3)
+#define FLAG_U (1LL<<4)
+#define FLAG_u (1LL<<5)
+#define FLAG_T (1LL<<6)
+#define FLAG_t (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_p (1LL<<9)
+#define FLAG_O (1LL<<10)
+#define FLAG_o (1LL<<11)
+#define FLAG_n (1LL<<12)
+#define FLAG_M (1LL<<13)
+#define FLAG_l (1LL<<14)
+#define FLAG_f (1LL<<15)
+#define FLAG_e (1LL<<16)
+#define FLAG_d (1LL<<17)
+#define FLAG_A (1LL<<18)
+#define FLAG_a (1LL<<19)
+#define FLAG_P (1LL<<20)
+#define FLAG_k (1LL<<21)
+#endif
+
+#ifdef FOR_pwd
+#define CLEANUP_pwd
+#ifndef TT
+#define TT this.pwd
+#endif
+#define FLAG_P (1LL<<0)
+#define FLAG_L (1LL<<1)
+#endif
+
+#ifdef FOR_pwdx
+#define CLEANUP_pwdx
+#ifndef TT
+#define TT this.pwdx
+#endif
+#define FLAG_a (1LL<<0)
+#endif
+
+#ifdef FOR_pwgen
+#define CLEANUP_pwgen
+#ifndef TT
+#define TT this.pwgen
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#define FLAG_1 (FORCED_FLAG<<3)
+#define FLAG_C (FORCED_FLAG<<4)
+#define FLAG_h (FORCED_FLAG<<5)
+#define FLAG_B (FORCED_FLAG<<6)
+#define FLAG_s (FORCED_FLAG<<7)
+#define FLAG_y (FORCED_FLAG<<8)
+#define FLAG_n (FORCED_FLAG<<9)
+#define FLAG_c (FORCED_FLAG<<10)
+#define FLAG_r (FORCED_FLAG<<11)
+#endif
+
+#ifdef FOR_readahead
+#define CLEANUP_readahead
+#ifndef TT
+#define TT this.readahead
+#endif
+#endif
+
+#ifdef FOR_readelf
+#define CLEANUP_readelf
+#ifndef TT
+#define TT this.readelf
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_W (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_S (1LL<<3)
+#define FLAG_p (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_l (1LL<<6)
+#define FLAG_h (1LL<<7)
+#define FLAG_e (1LL<<8)
+#define FLAG_d (1LL<<9)
+#define FLAG_a (1LL<<10)
+#define FLAG_A (1LL<<11)
+#define FLAG_dyn_syms (1LL<<12)
+#endif
+
+#ifdef FOR_readlink
+#define CLEANUP_readlink
+#ifndef TT
+#define TT this.readlink
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_realpath
+#define CLEANUP_realpath
+#ifndef TT
+#define TT this.realpath
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_P (1LL<<4)
+#define FLAG_L (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_R (1LL<<7)
+#define FLAG_relative_base (1LL<<8)
+#endif
+
+#ifdef FOR_reboot
+#define CLEANUP_reboot
+#ifndef TT
+#define TT this.reboot
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_renice
+#define CLEANUP_renice
+#ifndef TT
+#define TT this.renice
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_g (1LL<<3)
+#endif
+
+#ifdef FOR_reset
+#define CLEANUP_reset
+#ifndef TT
+#define TT this.reset
+#endif
+#endif
+
+#ifdef FOR_restorecon
+#define CLEANUP_restorecon
+#ifndef TT
+#define TT this.restorecon
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_R (1LL<<2)
+#define FLAG_n (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_D (1LL<<5)
+#endif
+
+#ifdef FOR_rev
+#define CLEANUP_rev
+#ifndef TT
+#define TT this.rev
+#endif
+#endif
+
+#ifdef FOR_rfkill
+#define CLEANUP_rfkill
+#ifndef TT
+#define TT this.rfkill
+#endif
+#endif
+
+#ifdef FOR_rm
+#define CLEANUP_rm
+#ifndef TT
+#define TT this.rm
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_R (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_rmdir
+#define CLEANUP_rmdir
+#ifndef TT
+#define TT this.rmdir
+#endif
+#define FLAG_p (1LL<<0)
+#define FLAG_ignore_fail_on_non_empty (1LL<<1)
+#endif
+
+#ifdef FOR_rmmod
+#define CLEANUP_rmmod
+#ifndef TT
+#define TT this.rmmod
+#endif
+#define FLAG_f (1LL<<0)
+#define FLAG_w (1LL<<1)
+#endif
+
+#ifdef FOR_route
+#define CLEANUP_route
+#ifndef TT
+#define TT this.route
+#endif
+#define FLAG_A (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_rtcwake
+#define CLEANUP_rtcwake
+#ifndef TT
+#define TT this.rtcwake
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_t (1LL<<2)
+#define FLAG_s (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_d (1LL<<6)
+#define FLAG_a (1LL<<7)
+#define FLAG_auto (1LL<<8)
+#define FLAG_list_modes (1LL<<9)
+#endif
+
+#ifdef FOR_runcon
+#define CLEANUP_runcon
+#ifndef TT
+#define TT this.runcon
+#endif
+#endif
+
+#ifdef FOR_sed
+#define CLEANUP_sed
+#ifndef TT
+#define TT this.sed
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_z (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_E (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_f (1LL<<6)
+#define FLAG_e (1LL<<7)
+#define FLAG_tarxform (1LL<<8)
+#define FLAG_version (1LL<<9)
+#define FLAG_help (1LL<<10)
+#endif
+
+#ifdef FOR_sendevent
+#define CLEANUP_sendevent
+#ifndef TT
+#define TT this.sendevent
+#endif
+#endif
+
+#ifdef FOR_seq
+#define CLEANUP_seq
+#ifndef TT
+#define TT this.seq
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_f (1LL<<2)
+#endif
+
+#ifdef FOR_set
+#define CLEANUP_set
+#ifndef TT
+#define TT this.set
+#endif
+#endif
+
+#ifdef FOR_setenforce
+#define CLEANUP_setenforce
+#ifndef TT
+#define TT this.setenforce
+#endif
+#endif
+
+#ifdef FOR_setfattr
+#define CLEANUP_setfattr
+#ifndef TT
+#define TT this.setfattr
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_h (1LL<<3)
+#endif
+
+#ifdef FOR_setsid
+#define CLEANUP_setsid
+#ifndef TT
+#define TT this.setsid
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_w (1LL<<2)
+#endif
+
+#ifdef FOR_sh
+#define CLEANUP_sh
+#ifndef TT
+#define TT this.sh
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_norc (FORCED_FLAG<<3)
+#define FLAG_noprofile (FORCED_FLAG<<4)
+#define FLAG_noediting (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_sha3sum
+#define CLEANUP_sha3sum
+#ifndef TT
+#define TT this.sha3sum
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_S (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_shift
+#define CLEANUP_shift
+#ifndef TT
+#define TT this.shift
+#endif
+#endif
+
+#ifdef FOR_shred
+#define CLEANUP_shred
+#ifndef TT
+#define TT this.shred
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_x (FORCED_FLAG<<5)
+#define FLAG_z (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_shuf
+#define CLEANUP_shuf
+#ifndef TT
+#define TT this.shuf
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_z (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_skeleton
+#define CLEANUP_skeleton
+#ifndef TT
+#define TT this.skeleton
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_also (FORCED_FLAG<<8)
+#define FLAG_blubber (FORCED_FLAG<<9)
+#define FLAG_walrus (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_skeleton_alias
+#define CLEANUP_skeleton_alias
+#ifndef TT
+#define TT this.skeleton_alias
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_sleep
+#define CLEANUP_sleep
+#ifndef TT
+#define TT this.sleep
+#endif
+#endif
+
+#ifdef FOR_sntp
+#define CLEANUP_sntp
+#ifndef TT
+#define TT this.sntp
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_D (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_s (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_S (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_M (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_sort
+#define CLEANUP_sort
+#ifndef TT
+#define TT this.sort
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_z (1LL<<6)
+#define FLAG_s (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_C (1LL<<9)
+#define FLAG_M (1LL<<10)
+#define FLAG_b (1LL<<11)
+#define FLAG_V (1LL<<12)
+#define FLAG_x (1LL<<13)
+#define FLAG_t (1LL<<14)
+#define FLAG_k (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_m (1LL<<17)
+#define FLAG_T (1LL<<18)
+#define FLAG_S (1LL<<19)
+#define FLAG_g (1LL<<20)
+#endif
+
+#ifdef FOR_source
+#define CLEANUP_source
+#ifndef TT
+#define TT this.source
+#endif
+#endif
+
+#ifdef FOR_split
+#define CLEANUP_split
+#ifndef TT
+#define TT this.split
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_l (1LL<<1)
+#define FLAG_b (1LL<<2)
+#define FLAG_a (1LL<<3)
+#endif
+
+#ifdef FOR_stat
+#define CLEANUP_stat
+#ifndef TT
+#define TT this.stat
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_c (1LL<<3)
+#endif
+
+#ifdef FOR_strace
+#define CLEANUP_strace
+#ifndef TT
+#define TT this.strace
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_strings
+#define CLEANUP_strings
+#ifndef TT
+#define TT this.strings
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_a (1LL<<3)
+#define FLAG_t (1LL<<4)
+#endif
+
+#ifdef FOR_stty
+#define CLEANUP_stty
+#ifndef TT
+#define TT this.stty
+#endif
+#define FLAG_g (1LL<<0)
+#define FLAG_F (1LL<<1)
+#define FLAG_a (1LL<<2)
+#endif
+
+#ifdef FOR_su
+#define CLEANUP_su
+#ifndef TT
+#define TT this.su
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_g (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#define FLAG_l (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_sulogin
+#define CLEANUP_sulogin
+#ifndef TT
+#define TT this.sulogin
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_swapoff
+#define CLEANUP_swapoff
+#ifndef TT
+#define TT this.swapoff
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_swapon
+#define CLEANUP_swapon
+#ifndef TT
+#define TT this.swapon
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_p (1LL<<1)
+#endif
+
+#ifdef FOR_switch_root
+#define CLEANUP_switch_root
+#ifndef TT
+#define TT this.switch_root
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_sync
+#define CLEANUP_sync
+#ifndef TT
+#define TT this.sync
+#endif
+#endif
+
+#ifdef FOR_sysctl
+#define CLEANUP_sysctl
+#ifndef TT
+#define TT this.sysctl
+#endif
+#define FLAG_A (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_w (1LL<<3)
+#define FLAG_q (1LL<<4)
+#define FLAG_N (1LL<<5)
+#define FLAG_e (1LL<<6)
+#define FLAG_n (1LL<<7)
+#endif
+
+#ifdef FOR_syslogd
+#define CLEANUP_syslogd
+#ifndef TT
+#define TT this.syslogd
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_K (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_O (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_s (FORCED_FLAG<<10)
+#define FLAG_b (FORCED_FLAG<<11)
+#define FLAG_R (FORCED_FLAG<<12)
+#define FLAG_l (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_tac
+#define CLEANUP_tac
+#ifndef TT
+#define TT this.tac
+#endif
+#endif
+
+#ifdef FOR_tail
+#define CLEANUP_tail
+#ifndef TT
+#define TT this.tail
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_F (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_tar
+#define CLEANUP_tar
+#ifndef TT
+#define TT this.tar
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_C (1LL<<3)
+#define FLAG_I (1LL<<4)
+#define FLAG_T (1LL<<5)
+#define FLAG_X (1LL<<6)
+#define FLAG_m (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_O (1LL<<9)
+#define FLAG_S (1LL<<10)
+#define FLAG_z (1LL<<11)
+#define FLAG_j (1LL<<12)
+#define FLAG_J (1LL<<13)
+#define FLAG_v (1LL<<14)
+#define FLAG_t (1LL<<15)
+#define FLAG_x (1LL<<16)
+#define FLAG_h (1LL<<17)
+#define FLAG_c (1LL<<18)
+#define FLAG_k (1LL<<19)
+#define FLAG_p (1LL<<20)
+#define FLAG_o (1LL<<21)
+#define FLAG_xform (1LL<<22)
+#define FLAG_strip (1LL<<23)
+#define FLAG_to_command (1LL<<24)
+#define FLAG_owner (1LL<<25)
+#define FLAG_group (1LL<<26)
+#define FLAG_mtime (1LL<<27)
+#define FLAG_mode (1LL<<28)
+#define FLAG_sort (1LL<<29)
+#define FLAG_exclude (1LL<<30)
+#define FLAG_overwrite (1LL<<31)
+#define FLAG_no_same_permissions (1LL<<32)
+#define FLAG_numeric_owner (1LL<<33)
+#define FLAG_null (1LL<<34)
+#define FLAG_no_recursion (1LL<<35)
+#define FLAG_full_time (1LL<<36)
+#define FLAG_restrict (1LL<<37)
+#define FLAG_selinux (1LL<<38)
+#define FLAG_show_transformed_names (1LL<<39)
+#define FLAG_wildcards_match_slash (1LL<<40)
+#define FLAG_no_wildcards_match_slash (1LL<<41)
+#define FLAG_wildcards (1LL<<42)
+#define FLAG_no_wildcards (1LL<<43)
+#define FLAG_anchored (1LL<<44)
+#define FLAG_no_anchored (1LL<<45)
+#define FLAG_ignore_case (1LL<<46)
+#define FLAG_no_ignore_case (1LL<<47)
+#define FLAG_one_file_system (1LL<<48)
+#endif
+
+#ifdef FOR_taskset
+#define CLEANUP_taskset
+#ifndef TT
+#define TT this.taskset
+#endif
+#define FLAG_a (1LL<<0)
+#define FLAG_p (1LL<<1)
+#endif
+
+#ifdef FOR_tcpsvd
+#define CLEANUP_tcpsvd
+#ifndef TT
+#define TT this.tcpsvd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_E (FORCED_FLAG<<1)
+#define FLAG_h (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#define FLAG_b (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_tee
+#define CLEANUP_tee
+#ifndef TT
+#define TT this.tee
+#endif
+#define FLAG_a (1LL<<0)
+#define FLAG_i (1LL<<1)
+#endif
+
+#ifdef FOR_telnet
+#define CLEANUP_telnet
+#ifndef TT
+#define TT this.telnet
+#endif
+#endif
+
+#ifdef FOR_telnetd
+#define CLEANUP_telnetd
+#ifndef TT
+#define TT this.telnetd
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_K (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_F (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_p (FORCED_FLAG<<6)
+#define FLAG_b (FORCED_FLAG<<7)
+#define FLAG_w (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_test
+#define CLEANUP_test
+#ifndef TT
+#define TT this.test
+#endif
+#endif
+
+#ifdef FOR_tftp
+#define CLEANUP_tftp
+#ifndef TT
+#define TT this.tftp
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_l (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_b (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_tftpd
+#define CLEANUP_tftpd
+#ifndef TT
+#define TT this.tftpd
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_time
+#define CLEANUP_time
+#ifndef TT
+#define TT this.time
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_p (1LL<<1)
+#endif
+
+#ifdef FOR_timeout
+#define CLEANUP_timeout
+#ifndef TT
+#define TT this.timeout
+#endif
+#define FLAG_i (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_k (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_preserve_status (1LL<<4)
+#define FLAG_foreground (1LL<<5)
+#endif
+
+#ifdef FOR_top
+#define CLEANUP_top
+#ifndef TT
+#define TT this.top
+#endif
+#define FLAG_q (1LL<<0)
+#define FLAG_b (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_m (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_u (1LL<<6)
+#define FLAG_p (1LL<<7)
+#define FLAG_o (1LL<<8)
+#define FLAG_k (1LL<<9)
+#define FLAG_H (1LL<<10)
+#define FLAG_h (1LL<<11)
+#define FLAG_O (1LL<<12)
+#endif
+
+#ifdef FOR_touch
+#define CLEANUP_touch
+#ifndef TT
+#define TT this.touch
+#endif
+#define FLAG_h (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_m (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_c (1LL<<6)
+#define FLAG_a (1LL<<7)
+#endif
+
+#ifdef FOR_toybox
+#define CLEANUP_toybox
+#ifndef TT
+#define TT this.toybox
+#endif
+#endif
+
+#ifdef FOR_tr
+#define CLEANUP_tr
+#ifndef TT
+#define TT this.tr
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_C (1LL<<4)
+#endif
+
+#ifdef FOR_traceroute
+#define CLEANUP_traceroute
+#ifndef TT
+#define TT this.traceroute
+#endif
+#define FLAG_4 (1LL<<0)
+#define FLAG_6 (1LL<<1)
+#define FLAG_F (1LL<<2)
+#define FLAG_U (1LL<<3)
+#define FLAG_I (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_d (1LL<<6)
+#define FLAG_n (1LL<<7)
+#define FLAG_v (1LL<<8)
+#define FLAG_r (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_p (1LL<<11)
+#define FLAG_q (1LL<<12)
+#define FLAG_s (1LL<<13)
+#define FLAG_t (1LL<<14)
+#define FLAG_w (1LL<<15)
+#define FLAG_g (1LL<<16)
+#define FLAG_z (1LL<<17)
+#define FLAG_f (1LL<<18)
+#define FLAG_i (1LL<<19)
+#endif
+
+#ifdef FOR_true
+#define CLEANUP_true
+#ifndef TT
+#define TT this.true
+#endif
+#endif
+
+#ifdef FOR_truncate
+#define CLEANUP_truncate
+#ifndef TT
+#define TT this.truncate
+#endif
+#define FLAG_c (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_ts
+#define CLEANUP_ts
+#ifndef TT
+#define TT this.ts
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_i (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_tsort
+#define CLEANUP_tsort
+#ifndef TT
+#define TT this.tsort
+#endif
+#endif
+
+#ifdef FOR_tty
+#define CLEANUP_tty
+#ifndef TT
+#define TT this.tty
+#endif
+#define FLAG_s (1LL<<0)
+#endif
+
+#ifdef FOR_tunctl
+#define CLEANUP_tunctl
+#ifndef TT
+#define TT this.tunctl
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_d (1LL<<2)
+#define FLAG_t (1LL<<3)
+#endif
+
+#ifdef FOR_uclampset
+#define CLEANUP_uclampset
+#ifndef TT
+#define TT this.uclampset
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_M (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_a (1LL<<3)
+#define FLAG_p (1LL<<4)
+#endif
+
+#ifdef FOR_ulimit
+#define CLEANUP_ulimit
+#ifndef TT
+#define TT this.ulimit
+#endif
+#define FLAG_c (1LL<<0)
+#define FLAG_d (1LL<<1)
+#define FLAG_e (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_i (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_m (1LL<<6)
+#define FLAG_n (1LL<<7)
+#define FLAG_p (1LL<<8)
+#define FLAG_q (1LL<<9)
+#define FLAG_R (1LL<<10)
+#define FLAG_r (1LL<<11)
+#define FLAG_s (1LL<<12)
+#define FLAG_t (1LL<<13)
+#define FLAG_u (1LL<<14)
+#define FLAG_v (1LL<<15)
+#define FLAG_a (1LL<<16)
+#define FLAG_H (1LL<<17)
+#define FLAG_S (1LL<<18)
+#define FLAG_P (1LL<<19)
+#endif
+
+#ifdef FOR_umount
+#define CLEANUP_umount
+#ifndef TT
+#define TT this.umount
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_a (1LL<<2)
+#define FLAG_r (1LL<<3)
+#define FLAG_l (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_D (1LL<<6)
+#define FLAG_d (1LL<<7)
+#define FLAG_n (1LL<<8)
+#define FLAG_c (1LL<<9)
+#endif
+
+#ifdef FOR_uname
+#define CLEANUP_uname
+#ifndef TT
+#define TT this.uname
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_p (1LL<<7)
+#endif
+
+#ifdef FOR_unicode
+#define CLEANUP_unicode
+#ifndef TT
+#define TT this.unicode
+#endif
+#endif
+
+#ifdef FOR_uniq
+#define CLEANUP_uniq
+#ifndef TT
+#define TT this.uniq
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_d (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_z (1LL<<4)
+#define FLAG_w (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_f (1LL<<7)
+#endif
+
+#ifdef FOR_unix2dos
+#define CLEANUP_unix2dos
+#ifndef TT
+#define TT this.unix2dos
+#endif
+#endif
+
+#ifdef FOR_unlink
+#define CLEANUP_unlink
+#ifndef TT
+#define TT this.unlink
+#endif
+#endif
+
+#ifdef FOR_unset
+#define CLEANUP_unset
+#ifndef TT
+#define TT this.unset
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_unshare
+#define CLEANUP_unshare
+#ifndef TT
+#define TT this.unshare
+#endif
+#define FLAG_U (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_n (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_C (1LL<<6)
+#define FLAG_r (1LL<<7)
+#define FLAG_f (1LL<<8)
+#define FLAG_a (1LL<<9)
+#endif
+
+#ifdef FOR_uptime
+#define CLEANUP_uptime
+#ifndef TT
+#define TT this.uptime
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_p (1LL<<1)
+#endif
+
+#ifdef FOR_useradd
+#define CLEANUP_useradd
+#ifndef TT
+#define TT this.useradd
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_D (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#define FLAG_g (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_G (FORCED_FLAG<<6)
+#define FLAG_u (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_userdel
+#define CLEANUP_userdel
+#ifndef TT
+#define TT this.userdel
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_usleep
+#define CLEANUP_usleep
+#ifndef TT
+#define TT this.usleep
+#endif
+#endif
+
+#ifdef FOR_uudecode
+#define CLEANUP_uudecode
+#ifndef TT
+#define TT this.uudecode
+#endif
+#define FLAG_o (1LL<<0)
+#endif
+
+#ifdef FOR_uuencode
+#define CLEANUP_uuencode
+#ifndef TT
+#define TT this.uuencode
+#endif
+#define FLAG_m (1LL<<0)
+#endif
+
+#ifdef FOR_uuidgen
+#define CLEANUP_uuidgen
+#ifndef TT
+#define TT this.uuidgen
+#endif
+#define FLAG_r (1LL<<0)
+#endif
+
+#ifdef FOR_vconfig
+#define CLEANUP_vconfig
+#ifndef TT
+#define TT this.vconfig
+#endif
+#endif
+
+#ifdef FOR_vi
+#define CLEANUP_vi
+#ifndef TT
+#define TT this.vi
+#endif
+#define FLAG_s (1LL<<0)
+#endif
+
+#ifdef FOR_vmstat
+#define CLEANUP_vmstat
+#ifndef TT
+#define TT this.vmstat
+#endif
+#define FLAG_n (1LL<<0)
+#endif
+
+#ifdef FOR_w
+#define CLEANUP_w
+#ifndef TT
+#define TT this.w
+#endif
+#endif
+
+#ifdef FOR_wait
+#define CLEANUP_wait
+#ifndef TT
+#define TT this.wait
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_watch
+#define CLEANUP_watch
+#ifndef TT
+#define TT this.watch
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_b (1LL<<1)
+#define FLAG_e (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_n (1LL<<4)
+#endif
+
+#ifdef FOR_watchdog
+#define CLEANUP_watchdog
+#ifndef TT
+#define TT this.watchdog
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_F (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_wc
+#define CLEANUP_wc
+#ifndef TT
+#define TT this.wc
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_w (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_L (1LL<<4)
+#endif
+
+#ifdef FOR_wget
+#define CLEANUP_wget
+#ifndef TT
+#define TT this.wget
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_O (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_max_redirect (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_which
+#define CLEANUP_which
+#ifndef TT
+#define TT this.which
+#endif
+#define FLAG_a (1LL<<0)
+#endif
+
+#ifdef FOR_who
+#define CLEANUP_who
+#ifndef TT
+#define TT this.who
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_xargs
+#define CLEANUP_xargs
+#ifndef TT
+#define TT this.xargs
+#endif
+#define FLAG_0 (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_r (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_P (1LL<<7)
+#define FLAG_E (1LL<<8)
+#endif
+
+#ifdef FOR_xxd
+#define CLEANUP_xxd
+#ifndef TT
+#define TT this.xxd
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_e (1LL<<4)
+#define FLAG_g (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_c (1LL<<8)
+#endif
+
+#ifdef FOR_xzcat
+#define CLEANUP_xzcat
+#ifndef TT
+#define TT this.xzcat
+#endif
+#endif
+
+#ifdef FOR_yes
+#define CLEANUP_yes
+#ifndef TT
+#define TT this.yes
+#endif
+#endif
+
+#ifdef FOR_zcat
+#define CLEANUP_zcat
+#ifndef TT
+#define TT this.zcat
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#endif
+
diff --git a/android/device/generated/globals.h b/android/device/generated/globals.h
new file mode 100644
index 0000000..6b35836
--- /dev/null
+++ b/android/device/generated/globals.h
@@ -0,0 +1,913 @@
+struct log_data {
+  char *t, *p;
+
+  int pri;
+};
+
+struct dmesg_data {
+  long n, s;
+
+  int use_color;
+  time_t tea;
+};
+
+struct gzip_data {
+  int level;
+};
+
+struct hostname_data {
+  char *F;
+};
+
+struct killall_data {
+  char *s;
+
+  int signum;
+  pid_t cur_pid;
+  char **names;
+  short *err;
+  struct int_list { struct int_list *next; int val; } *pids;
+};
+
+struct md5sum_data {
+  int sawline;
+};
+
+struct mknod_data {
+  char *Z, *m;
+};
+
+struct mktemp_data {
+  char *p, *tmpdir;
+};
+
+struct mount_data {
+  struct arg_list *o;
+  char *t, *O;
+
+  unsigned long flags;
+  char *opts;
+  int okuser;
+};
+
+struct pidof_data {
+  char *o;
+};
+
+struct seq_data {
+  char *s, *f;
+
+  int precision, buflen;
+};
+
+struct umount_data {
+  struct arg_list *t;
+
+  char *types;
+};
+
+struct ifconfig_data {
+  int sockfd;
+};
+
+struct microcom_data {
+  long s;
+
+  int fd, stok;
+  struct termios old_stdin, old_fd;
+};
+
+struct netcat_data {
+  char *f, *s;
+  long q, p, W, w;
+};
+
+struct netstat_data {
+  struct num_cache *inodes;
+  int wpad;
+};
+
+struct ping_data {
+  char *I;
+  long w, W, i, s, c, t, m;
+
+  struct sockaddr *sa;
+  int sock;
+  unsigned long sent, recv, fugit, min, max;
+};
+
+struct tunctl_data {
+  char *u;
+};
+
+struct base64_data {
+  long w;
+
+  unsigned total;
+  unsigned n;  // number of bits used in encoding. 5 for base32, 6 for base64
+  unsigned align;  // number of bits to align to
+};
+
+struct blkdiscard_data {
+  long o, l;
+};
+
+struct blkid_data {
+  struct arg_list *s;
+  char *o;
+};
+
+struct blockdev_data {
+  long setbsz, setra;
+};
+
+struct chrt_data {
+  long p;
+};
+
+struct dos2unix_data {
+  char *tempfile;
+};
+
+struct fallocate_data {
+  long o, l;
+};
+
+struct fmt_data {
+  long width;
+
+  int level, pos;
+};
+
+struct free_data {
+  unsigned bits;
+  unsigned long long units;
+  char *buf;
+};
+
+struct getopt_data {
+  struct arg_list *l;
+  char *o, *n;
+};
+
+struct gpiodetect_data {
+  struct double_list *chips;
+  int chip_count;
+};
+
+struct hwclock_data {
+  char *f;
+};
+
+struct i2cdetect_data {
+  long F;
+};
+
+struct ionice_data {
+  long p, n, c;
+};
+
+struct losetup_data {
+  char *j;
+  long o, S;
+
+  int openflags;
+  dev_t jdev;
+  ino_t jino;
+  char *dir;
+};
+
+struct lsattr_data {
+  long v, p;
+
+  unsigned add, rm, set;
+  // !add and !rm tell us whether they were used, but `chattr =` is meaningful.
+  int have_set;
+};
+
+struct lsusb_data {
+  char *i;
+  long x, n;
+
+  void *ids, *class;
+  int count;
+};
+
+struct makedevs_data {
+  char *d;
+};
+
+struct mkswap_data {
+  char *L;
+};
+
+struct modinfo_data {
+  char *F, *k, *b;
+
+  long mod;
+  int count;
+};
+
+struct nbd_client_data {
+  long b;
+
+  int nbd;
+};
+
+struct nsenter_data {
+  char *UupnmiC[7];
+  long t;
+};
+
+struct readelf_data {
+  char *x, *p;
+
+  char *elf, *shstrtab, *f;
+  unsigned long long shoff, phoff, size, shstrtabsz;
+  int bits, endian, shnum, shentsize, phentsize;
+};
+
+struct realpath_data {
+  char *R, *relative_base;
+};
+
+struct rtcwake_data {
+  long t, s;
+  char *m, *d;
+};
+
+struct setfattr_data {
+  char *x, *v, *n;
+};
+
+struct setsid_data {
+  long c;
+};
+
+struct stat_data {
+  char *c;
+
+  union {
+    struct stat st;
+    struct statfs sf;
+  } stat;
+  char *file, *pattern;
+  int patlen;
+};
+
+struct swapon_data {
+  long p;
+};
+
+struct tac_data {
+  struct double_list *dl;
+};
+
+struct timeout_data {
+  char *s, *k;
+
+  struct pollfd pfd;
+  sigjmp_buf sj;
+  int fds[2], pid, rc;
+};
+
+struct truncate_data {
+  char *s;
+
+  long long size;
+  int type;
+};
+
+struct uclampset_data {
+  long M, m, p;
+};
+
+struct watch_data {
+  int n;
+
+  pid_t pid, oldpid;
+};
+
+struct xxd_data {
+  long s, g, o, l, c;
+};
+
+struct brctl_data {
+    int sockfd;
+};
+
+struct diff_data {
+  long U;
+  struct arg_list *L;
+  char *F, *S, *new_line_format, *old_line_format, *unchanged_line_format;
+
+  int dir_num, size, is_binary, differ, change, len[2], *offset[2];
+  struct stat st[2];
+  struct {
+    char **list;
+    int nr_elm;
+  } dir[2];
+  struct {
+    FILE *fp;
+    int len;
+  } file[2];
+};
+
+struct expr_data {
+  char **tok, *delete;
+};
+
+struct getfattr_data {
+  char *n;
+};
+
+struct lsof_data {
+  struct arg_list *p;
+
+  struct stat *sought_files;
+  struct double_list *all_sockets, *files;
+  int last_shown_pid, shown_header;
+};
+
+struct modprobe_data {
+  struct arg_list *dirs;
+
+  struct arg_list *probes, *dbase[256];
+  char *cmdopts;
+  int nudeps, symreq;
+};
+
+struct more_data {
+  struct termios inf;
+  int cin_fd;
+};
+
+struct stty_data {
+  char *F;
+
+  int fd, col;
+  unsigned output_cols;
+};
+
+struct tr_data {
+  short *map;
+  int len1, len2;
+};
+
+struct traceroute_data {
+  long max_ttl;
+  long port;
+  long ttl_probes;
+  char *src_ip;
+  long tos;
+  long wait_time;
+  struct arg_list *loose_source;
+  long pause_time;
+  long first_ttl;
+  char *iface;
+
+  uint32_t gw_list[9];
+  int recv_sock;
+  int snd_sock;
+  unsigned msg_len;
+  char *packet;
+  uint32_t ident;
+  int istraceroute6;
+};
+
+struct vi_data {
+  char *s;
+
+  char *filename;
+  int vi_mode, tabstop, list;
+  int cur_col, cur_row, scr_row;
+  int drawn_row, drawn_col;
+  int count0, count1, vi_mov_flag;
+  unsigned screen_height, screen_width;
+  char vi_reg, *last_search;
+  struct str_line {
+    int alloc;
+    int len;
+    char *data;
+  } *il;
+  size_t screen, cursor; //offsets
+  //yank buffer
+  struct yank_buf {
+    char reg;
+    int alloc;
+    char* data;
+  } yank;
+
+  size_t filesize;
+// mem_block contains RO data that is either original file as mmap
+// or heap allocated inserted data
+  struct block_list {
+    struct block_list *next, *prev;
+    struct mem_block {
+      size_t size;
+      size_t len;
+      enum alloc_flag {
+        MMAP,  //can be munmap() before exit()
+        HEAP,  //can be free() before exit()
+        STACK, //global or stack perhaps toybuf
+      } alloc;
+      const char *data;
+    } *node;
+  } *text;
+
+// slices do not contain actual allocated data but slices of data in mem_block
+// when file is first opened it has only one slice.
+// after inserting data into middle new mem_block is allocated for insert data
+// and 3 slices are created, where first and last slice are pointing to original
+// mem_block with offsets, and middle slice is pointing to newly allocated block
+// When deleting, data is not freed but mem_blocks are sliced more such way that
+// deleted data left between 2 slices
+  struct slice_list {
+    struct slice_list *next, *prev;
+    struct slice {
+      size_t len;
+      const char *data;
+    } *node;
+  } *slices;
+};
+
+struct basename_data {
+  char *s;
+};
+
+struct cal_data {
+  struct tm *now;
+};
+
+struct chgrp_data {
+  uid_t owner;
+  gid_t group;
+  char *owner_name, *group_name;
+  int symfollow;
+};
+
+struct chmod_data {
+  char *mode;
+};
+
+struct cmp_data {
+  long n;
+
+  int fd;
+  char *name;
+};
+
+struct cp_data {
+  union {
+    // install's options
+    struct {
+      char *g, *o, *m, *t;
+    } i;
+    // cp's options
+    struct {
+      char *t, *preserve;
+    } c;
+  };
+
+  char *destname;
+  struct stat top;
+  int (*callback)(struct dirtree *try);
+  uid_t uid;
+  gid_t gid;
+  int pflags;
+};
+
+struct cpio_data {
+  char *F, *H, *R;
+};
+
+struct cut_data {
+  char *d, *O;
+  struct arg_list *select[5]; // we treat them the same, so loop through
+
+  unsigned line;
+  int pairs;
+  regex_t reg;
+};
+
+struct date_data {
+  char *s, *r, *I, *D, *d;
+
+  unsigned nano;
+};
+
+struct dd_data {
+  // Display fields
+  int show_xfer, show_records;
+  unsigned long long bytes, in_full, in_part, out_full, out_part, start;
+};
+
+struct df_data {
+  struct arg_list *t;
+
+  int units, width[6];
+};
+
+struct du_data {
+  long d;
+
+  unsigned long depth, total;
+  dev_t st_dev;
+  void *inodes;
+};
+
+struct env_data {
+  struct arg_list *u;
+  char *e;
+};
+
+struct expand_data {
+  struct arg_list *t;
+
+  unsigned tabcount, *tab;
+};
+
+struct file_data {
+  int max_name_len;
+  off_t len;
+};
+
+struct find_data {
+  char **filter;
+  struct double_list *argdata;
+  int topdir, xdev, depth;
+  time_t now;
+  long max_bytes;
+  char *start;
+};
+
+struct grep_data {
+  long m, A, B, C;
+  struct arg_list *f, *e, *M, *S, *exclude_dir;
+  char *color;
+
+  char *purple, *cyan, *red, *green, *grey;
+  struct double_list *reg;
+  int found, tried, delim;
+  struct arg_list **fixed;
+};
+
+struct head_data {
+  long c, n;
+
+  int file_no;
+};
+
+struct iconv_data {
+  char *f, *t;
+
+  void *ic;
+};
+
+struct id_data {
+  int is_groups;
+};
+
+struct kill_data {
+  char *s;
+  struct arg_list *o;
+};
+
+struct ln_data {
+  char *t;
+};
+
+struct logger_data {
+  char *p, *t;
+
+  int priority;
+};
+
+struct ls_data {
+  long w, l, block_size;
+  char *color, *sort;
+
+  struct dirtree *files, *singledir;
+  unsigned screen_width;
+  int nl_title;
+  char *escmore;
+};
+
+struct mkdir_data {
+  char *m, *Z;
+};
+
+struct mkfifo_data {
+  char *m;
+  char *Z;
+
+  mode_t mode;
+};
+
+struct nice_data {
+  long n;
+};
+
+struct nl_data {
+  char *s, *n, *b;
+  long w, l, v;
+
+  // Count of consecutive blank lines for -l has to persist between files
+  long lcount, slen;
+};
+
+struct od_data {
+  struct arg_list *t;
+  char *A;
+  long N, w, j;
+
+  int address_idx;
+  unsigned types, leftover, star;
+  char *buf; // Points to buffers[0] or buffers[1].
+  char *bufs[2]; // Used to detect duplicate lines.
+  off_t pos;
+};
+
+struct paste_data {
+  char *d;
+
+  int files;
+};
+
+struct patch_data {
+  char *i, *d;
+  long v, p, g, F;
+
+  void *current_hunk;
+  long oldline, oldlen, newline, newlen, linenum, outnum;
+  int context, state, filein, fileout, filepatch, hunknum;
+  char *tempname;
+};
+
+struct ps_data {
+  union {
+    struct {
+      struct arg_list *G, *g, *U, *u, *t, *s, *p, *O, *o, *P, *k;
+    } ps;
+    struct {
+      long n, m, d, s;
+      struct arg_list *u, *p, *o, *k, *O;
+    } top;
+    struct {
+      char *L;
+      struct arg_list *G, *g, *P, *s, *t, *U, *u;
+      char *d;
+
+      void *regexes, *snapshot;
+      int signal;
+      pid_t self, match;
+    } pgrep;
+  };
+
+  struct ps_ptr_len {
+    void *ptr;
+    long len;
+  } gg, GG, pp, PP, ss, tt, uu, UU;
+  struct dirtree *threadparent;
+  unsigned width, height, scroll;
+  dev_t tty;
+  void *fields, *kfields;
+  long long ticks, bits, time;
+  int kcount, forcek, sortpos, pidlen;
+  int (*match_process)(long long *slot);
+  void (*show_process)(void *tb);
+};
+
+struct renice_data {
+  long n;
+};
+
+struct sed_data {
+  char *i;
+  struct arg_list *f, *e;
+
+  // processed pattern list
+  struct double_list *pattern;
+
+  char *nextline, *remember, *tarxform;
+  void *restart, *lastregex;
+  long nextlen, rememberlen, count;
+  int fdout, noeol;
+  unsigned xx, tarxlen, xflags;
+  char delim, xftype;
+};
+
+struct sort_data {
+  char *t;
+  struct arg_list *k;
+  char *o, *T, S;
+
+  void *key_list;
+  unsigned linecount;
+  char **lines, *name;
+};
+
+struct split_data {
+  long n, l, b, a;
+
+  char *outfile;
+};
+
+struct strings_data {
+  long n;
+  char *t;
+};
+
+struct tail_data {
+  long n, c;
+  char *s;
+
+  int file_no, last_fd, ss;
+  struct xnotify *not;
+  struct {
+    char *path;
+    int fd;
+    struct dev_ino di;
+  } *F;
+};
+
+struct tar_data {
+  char *f, *C, *I;
+  struct arg_list *T, *X, *xform;
+  long strip;
+  char *to_command, *owner, *group, *mtime, *mode, *sort;
+  struct arg_list *exclude;
+
+  struct double_list *incl, *excl, *seen;
+  struct string_list *dirs;
+  char *cwd, **xfsed;
+  int fd, ouid, ggid, hlc, warn, sparselen, pid, xfpipe[2];
+  struct dev_ino archive_di;
+  long long *sparse;
+  time_t mtt;
+
+  // hardlinks seen so far (hlc many)
+  struct {
+    char *arg;
+    struct dev_ino di;
+  } *hlx;
+
+  // Parsed information about a tar header.
+  struct tar_header {
+    char *name, *link_target, *uname, *gname;
+    long long size, ssize;
+    uid_t uid;
+    gid_t gid;
+    mode_t mode;
+    time_t mtime;
+    dev_t device;
+  } hdr;
+};
+
+struct tee_data {
+  void *outputs;
+  int out;
+};
+
+struct touch_data {
+  char *t, *r, *d;
+};
+
+struct ulimit_data {
+  long P;
+};
+
+struct uniq_data {
+  long w, s, f;
+
+  long repeats;
+};
+
+struct uudecode_data {
+  char *o;
+};
+
+struct wc_data {
+  unsigned long totals[5];
+};
+
+struct xargs_data {
+  long s, n, P;
+  char *E;
+
+  long entries, bytes, np;
+  char delim;
+  FILE *tty;
+};
+extern union global_union {
+	struct log_data log;
+	struct dmesg_data dmesg;
+	struct gzip_data gzip;
+	struct hostname_data hostname;
+	struct killall_data killall;
+	struct md5sum_data md5sum;
+	struct mknod_data mknod;
+	struct mktemp_data mktemp;
+	struct mount_data mount;
+	struct pidof_data pidof;
+	struct seq_data seq;
+	struct umount_data umount;
+	struct ifconfig_data ifconfig;
+	struct microcom_data microcom;
+	struct netcat_data netcat;
+	struct netstat_data netstat;
+	struct ping_data ping;
+	struct tunctl_data tunctl;
+	struct base64_data base64;
+	struct blkdiscard_data blkdiscard;
+	struct blkid_data blkid;
+	struct blockdev_data blockdev;
+	struct chrt_data chrt;
+	struct dos2unix_data dos2unix;
+	struct fallocate_data fallocate;
+	struct fmt_data fmt;
+	struct free_data free;
+	struct getopt_data getopt;
+	struct gpiodetect_data gpiodetect;
+	struct hwclock_data hwclock;
+	struct i2cdetect_data i2cdetect;
+	struct ionice_data ionice;
+	struct losetup_data losetup;
+	struct lsattr_data lsattr;
+	struct lsusb_data lsusb;
+	struct makedevs_data makedevs;
+	struct mkswap_data mkswap;
+	struct modinfo_data modinfo;
+	struct nbd_client_data nbd_client;
+	struct nsenter_data nsenter;
+	struct readelf_data readelf;
+	struct realpath_data realpath;
+	struct rtcwake_data rtcwake;
+	struct setfattr_data setfattr;
+	struct setsid_data setsid;
+	struct stat_data stat;
+	struct swapon_data swapon;
+	struct tac_data tac;
+	struct timeout_data timeout;
+	struct truncate_data truncate;
+	struct uclampset_data uclampset;
+	struct watch_data watch;
+	struct xxd_data xxd;
+	struct brctl_data brctl;
+	struct diff_data diff;
+	struct expr_data expr;
+	struct getfattr_data getfattr;
+	struct lsof_data lsof;
+	struct modprobe_data modprobe;
+	struct more_data more;
+	struct stty_data stty;
+	struct tr_data tr;
+	struct traceroute_data traceroute;
+	struct vi_data vi;
+	struct basename_data basename;
+	struct cal_data cal;
+	struct chgrp_data chgrp;
+	struct chmod_data chmod;
+	struct cmp_data cmp;
+	struct cp_data cp;
+	struct cpio_data cpio;
+	struct cut_data cut;
+	struct date_data date;
+	struct dd_data dd;
+	struct df_data df;
+	struct du_data du;
+	struct env_data env;
+	struct expand_data expand;
+	struct file_data file;
+	struct find_data find;
+	struct grep_data grep;
+	struct head_data head;
+	struct iconv_data iconv;
+	struct id_data id;
+	struct kill_data kill;
+	struct ln_data ln;
+	struct logger_data logger;
+	struct ls_data ls;
+	struct mkdir_data mkdir;
+	struct mkfifo_data mkfifo;
+	struct nice_data nice;
+	struct nl_data nl;
+	struct od_data od;
+	struct paste_data paste;
+	struct patch_data patch;
+	struct ps_data ps;
+	struct renice_data renice;
+	struct sed_data sed;
+	struct sort_data sort;
+	struct split_data split;
+	struct strings_data strings;
+	struct tail_data tail;
+	struct tar_data tar;
+	struct tee_data tee;
+	struct touch_data touch;
+	struct ulimit_data ulimit;
+	struct uniq_data uniq;
+	struct uudecode_data uudecode;
+	struct wc_data wc;
+	struct xargs_data xargs;
+} this;
diff --git a/android/device/generated/help.h b/android/device/generated/help.h
new file mode 100644
index 0000000..74661d3
--- /dev/null
+++ b/android/device/generated/help.h
@@ -0,0 +1,686 @@
+#define HELP_toybox_force_nommu "When using musl-libc on a nommu system, you'll need to say \"y\" here\nunless you used the patch in the mcm-buildall.sh script. You can also\nsay \"y\" here to test the nommu codepaths on an mmu system.\n\nA nommu system can't use fork(), it can only vfork() which suspends\nthe parent until the child calls exec() or exits. When a program\nneeds a second instance of itself to run specific code at the same\ntime as the parent, it must use a more complicated approach (such as\nexec(\"/proc/self/exe\") then pass data to the new child through a pipe)\nwhich is larger and slower, especially for things like toysh subshells\nthat need to duplicate a lot of internal state in the child process\nfork() gives you for free.\n\nLibraries like uclibc omit fork() on nommu systems, allowing\ncompile-time probes to select which codepath to use. But musl\nintentionally includes a broken version of fork() that always returns\n-ENOSYS on nommu systems, and goes out of its way to prevent any\ncross-compile compatible compile-time probes for a nommu system.\n(It doesn't even #define __MUSL__ in features.h.) Musl does this\ndespite the fact that a nommu system can't even run standard ELF\nbinaries (requiring specially packaged executables) because it wants\nto force every program to either include all nommu code in every\ninstance ever built, or drop nommu support altogether.\n\nBuilding a scripts/mcm-buildall.sh toolchain patches musl to fix this."
+
+#define HELP_toybox_uid_usr "When commands like useradd/groupadd allocate user IDs, start here."
+
+#define HELP_toybox_uid_sys "When commands like useradd/groupadd allocate system IDs, start here."
+
+#define HELP_toybox_debug "Enable extra checks for debugging purposes. All of them catch\nthings that can only go wrong at development time, not runtime."
+
+#define HELP_toybox_norecurse "When one toybox command calls another, usually it just calls the new\ncommand's main() function rather than searching the $PATH and calling\nexec on another file (which is much slower).\n\nThis disables that optimization, so toybox will run external commands\n       even when it has a built-in version of that command. This requires\n       toybox symlinks to be installed in the $PATH, or re-invoking the\n       \"toybox\" multiplexer command by name."
+
+#define HELP_toybox_free "When a program exits, the operating system will clean up after it\n(free memory, close files, etc). To save size, toybox usually relies\non this behavior. If you're running toybox under a debugger or\nwithout a real OS (ala newlib+libgloss), enable this to make toybox\nclean up after itself."
+
+#define HELP_toybox_zhelp "Compress help with gzip -9, deflating when displayed. This makes the\nbinary smaller but can increase runtime memory usage."
+
+#define HELP_toybox_help_dashdash "Support --help argument in all commands, even ones with a NULL\noptstring. (Use TOYFLAG_NOHELP to disable.) Produces the same output\nas \"help command\". --version shows toybox version."
+
+#define HELP_toybox_help "Include help text for each command."
+
+#define HELP_toybox_float "Include floating point support infrastructure and commands that\nrequire it."
+
+#define HELP_toybox_libz "Use libz for gz support."
+
+#define HELP_toybox_libcrypto "Use faster hash functions out of external -lcrypto library."
+
+#define HELP_toybox_smack "Include SMACK options in commands like ls for systems like Tizen."
+
+#define HELP_toybox_selinux "Include SELinux options in commands such as ls, and add\nSELinux-specific commands such as chcon to the Android menu."
+
+#define HELP_toybox_lsm_none "Don't try to achieve \"watertight\" by plugging the holes in a\ncollander, instead use conventional unix security (and possibly\nLinux Containers) for a simple straightforward system."
+
+#define HELP_toybox_suid "Support for the Set User ID bit, to install toybox suid root and drop\npermissions for commands which do not require root access. To use\nthis change ownership of the file to the root user and set the suid\nbit in the file permissions:\n\nchown root:root toybox; chmod +s toybox\n\nprompt \"Security Blanket\"\ndefault TOYBOX_LSM_NONE\nhelp\nSelect a Linux Security Module to complicate your system\nuntil you can't find holes in it."
+
+#define HELP_toybox "usage: toybox [--long | --help | --version | [COMMAND] [ARGUMENTS...]]\n\nWith no arguments, \"toybox\" shows available COMMAND names. Add --long\nto include suggested install path for each command, see\nhttps://landley.net/toybox/faq.html#install for details.\n\nFirst argument is name of a COMMAND to run, followed by any ARGUMENTS\nto that command. Most toybox commands also understand:\n\n--help		Show command help (only)\n--version	Show toybox version (only)\n\nThe filename \"-\" means stdin/stdout, and \"--\" stops argument parsing.\n\nNumerical arguments accept a single letter suffix for\nkilo, mega, giga, tera, peta, and exabytes, plus an additional\n\"d\" to indicate decimal 1000's instead of 1024.\n\nDurations can be decimal fractions and accept minute (\"m\"), hour (\"h\"),\nor day (\"d\") suffixes (so 0.1m = 6s)."
+
+#define HELP_setenforce "usage: setenforce [enforcing|permissive|1|0]\n\nSets whether SELinux is enforcing (1) or permissive (0)."
+
+#define HELP_sendevent "usage: sendevent DEVICE TYPE CODE VALUE\n\nSends a Linux input event."
+
+#define HELP_runcon "usage: runcon CONTEXT COMMAND [ARGS...]\n\nRun a command in a specified security context."
+
+#define HELP_restorecon "usage: restorecon [-D] [-F] [-R] [-n] [-v] FILE...\n\nRestores the default security contexts for the given files.\n\n-D	Apply to /data/data too\n-F	Force reset\n-R	Recurse into directories\n-n	Don't make any changes; useful with -v to see what would change\n-v	Verbose"
+
+#define HELP_log "usage: log [-p PRI] [-t TAG] [MESSAGE...]\n\nLogs message (or stdin) to logcat.\n\n-p	Use the given priority instead of INFO:\n	d: DEBUG  e: ERROR  f: FATAL  i: INFO  v: VERBOSE  w: WARN  s: SILENT\n-t	Use the given tag instead of \"log\""
+
+#define HELP_load_policy "usage: load_policy FILE\n\nLoad the specified SELinux policy file."
+
+#define HELP_getenforce "usage: getenforce\n\nShows whether SELinux is disabled, enforcing, or permissive."
+
+#define HELP_skeleton_alias "usage: skeleton_alias [-dq] [-b NUMBER]\n\nExample of a second command with different arguments in the same source\nfile as the first. This allows shared infrastructure outside of lib/."
+
+#define HELP_skeleton "usage: skeleton [-a] [-b STRING] [-c NUMBER] [-d LIST] [-e COUNT] [...]\n\nTemplate for new commands. You don't need this.\n\nWhen creating a new command, copy this file and delete the parts you\ndon't need. Be sure to replace all instances of \"skeleton\" (upper and lower\ncase) with your new command name.\n\nFor simple commands, \"hello.c\" is probably a better starting point."
+
+#define HELP_logpath "usage: logpath ...\n\nAppend command line to $LOGPATH, then call second instance\nof command in $PATH."
+
+#define HELP_hostid "usage: hostid\n\nPrint the numeric identifier for the current host."
+
+#define HELP_hello "usage: hello\n\nA hello world program.\n\nMostly used as a simple template for adding new commands.\nOccasionally nice to smoketest kernel booting via \"init=/usr/bin/hello\"."
+
+#define HELP_demo_utf8towc "usage: demo_utf8towc\n\nPrint differences between toybox's utf8 conversion routines vs libc du jour."
+
+#define HELP_demo_scankey "usage: demo_scankey\n\nMove a letter around the screen. Hit ESC to exit."
+
+#define HELP_demo_number "usage: demo_number [-hsbi] [-D LEN] NUMBER...\n\n-D	output field is LEN chars\n-M	input units (index into bkmgtpe)\n-c	Comma comma down do be do down down\n-b	Use \"B\" for single byte units (HR_B)\n-d	Decimal units\n-h	Human readable\n-s	Space between number and units (HR_SPACE)"
+
+#define HELP_demo_many_options "usage: demo_many_options -[a-zA-Z]\n\nPrint the optflags value of the command arguments, in hex."
+
+#define HELP_umount "usage: umount [-a [-t TYPE[,TYPE...]]] [-vrfD] [DIR...]\n\nUnmount the listed filesystems.\n\n-a	Unmount all mounts in /proc/mounts instead of command line list\n-D	Don't free loopback device(s)\n-f	Force unmount\n-l	Lazy unmount (detach from filesystem now, close when last user does)\n-n	Don't use /proc/mounts\n-r	Remount read only if unmounting fails\n-t	Restrict \"all\" to mounts of TYPE (or use \"noTYPE\" to skip)\n-v	Verbose"
+
+#define HELP_sync "usage: sync\n\nWrite pending cached data to disk (synchronize), blocking until done."
+
+#define HELP_su "usage: su [-lp] [-u UID] [-g GID,...] [-s SHELL] [-c CMD] [USER [COMMAND...]]\n\nSwitch user, prompting for password of new user when not run as root.\n\nWith one argument, switch to USER and run user's shell from /etc/passwd.\nWith no arguments, USER is root. If COMMAND line provided after USER,\nexec() it as new USER (bypassing shell). If -u or -g specified, first\nargument (if any) isn't USER (it's COMMAND).\n\nfirst argument is USER name to switch to (which must exist).\nNon-root users are prompted for new user's password.\n\n-s	Shell to use (default is user's shell from /etc/passwd)\n-c	Command line to pass to -s shell (ala sh -c \"CMD\")\n-l	Reset environment as if new login.\n-u	Switch to UID instead of USER\n-g	Switch to GID (only root allowed, can be comma separated list)\n-p	Preserve environment (except for $PATH and $IFS)"
+
+#define HELP_seq "usage: seq [-w|-f fmt_str] [-s sep_str] [first] [increment] last\n\nCount from first to last, by increment. Omitted arguments default\nto 1. Two arguments are used as first and last. Arguments can be\nnegative or floating point.\n\n-f	Use fmt_str as a printf-style floating point format string\n-s	Use sep_str as separator, default is a newline character\n-w	Pad to equal width with leading zeroes"
+
+#define HELP_pidof "usage: pidof [-s] [-o omitpid[,omitpid...]] [NAME...]\n\nPrint the PIDs of all processes with the given names.\n\n-o	Omit PID(s)\n-s	Single shot, only return one pid\n-x	Match shell scripts too"
+
+#define HELP_passwd_sad "Password changes are checked to make sure they're at least 6 chars long,\ndon't include the entire username (but not a subset of it), or the entire\nprevious password (but changing password1, password2, password3 is fine).\nThis heuristic accepts \"aaaaaa\" and \"123456\"."
+
+#define HELP_passwd "usage: passwd [-a ALGO] [-dlu] [USER]\n\nUpdate user's login password. Defaults to current user.\n\n-a ALGO	Encryption method (des, md5, sha256, sha512) default: md5\n-d		Set password to ''\n-l		Lock (disable) account\n-u		Unlock (enable) account"
+
+#define HELP_mount "usage: mount [-afFrsvw] [-t TYPE] [-o OPTION,] [[DEVICE] DIR]\n\nMount new filesystem(s) on directories. With no arguments, display existing\nmounts.\n\n-a	Mount all entries in /etc/fstab (with -t, only entries of that TYPE)\n-O	Only mount -a entries that have this option\n-f	Fake it (don't actually mount)\n-r	Read only (same as -o ro)\n-w	Read/write (default, same as -o rw)\n-t	Specify filesystem type\n-v	Verbose\n\nOPTIONS is a comma separated list of options, which can also be supplied\nas --longopts.\n\nAutodetects loopback mounts (a file on a directory) and bind mounts (file\non file, directory on directory), so you don't need to say --bind or --loop.\nYou can also \"mount -a /path\" to mount everything in /etc/fstab under /path,\neven if it's noauto. DEVICE starting with UUID= is identified by blkid -U."
+
+#define HELP_mktemp "usage: mktemp [-dqtu] [-p DIR] [TEMPLATE]\n\nSafely create a new file \"DIR/TEMPLATE\" and print its name.\n\n-d	Create directory instead of file (--directory)\n-p	Put new file in DIR (--tmpdir)\n-q	Quiet, no error messages\n-t	Prefer $TMPDIR > DIR > /tmp (default DIR > $TMPDIR > /tmp)\n-u	Don't create anything, just print what would be created\n\nEach X in TEMPLATE is replaced with a random printable character. The\ndefault TEMPLATE is tmp.XXXXXXXXXX."
+
+#define HELP_mknod "usage: mknod [-Z CONTEXT] ... [-m MODE] NAME TYPE [MAJOR MINOR]\n\nCreate a special file NAME with a given type. TYPE is b for block device,\nc or u for character device, p for named pipe (which ignores MAJOR/MINOR).\n-Z	Set security context to created file\n-m	Mode (file permissions) of new device, in octal or u+x format"
+
+#define HELP_sha512sum "See md5sum"
+
+#define HELP_sha384sum "See md5sum"
+
+#define HELP_sha256sum "See md5sum"
+
+#define HELP_sha224sum "See md5sum"
+
+#define HELP_sha1sum "See md5sum"
+
+#define HELP_md5sum "usage: ???sum [-bcs] [FILE]...\n\nCalculate hash for each input file, reading from stdin if none, writing\nhexadecimal digits to stdout for each input file (md5=32 hex digits,\nsha1=40, sha224=56, sha256=64, sha384=96, sha512=128) followed by filename.\n\n-b	Brief (hash only, no filename)\n-c	Check each line of each FILE is the same hash+filename we'd output\n-s	No output, exit status 0 if all hashes match, 1 otherwise"
+
+#define HELP_killall "usage: killall [-l] [-iqv] [-SIGNAL|-s SIGNAL] PROCESS_NAME...\n\nSend a signal (default: TERM) to all processes with the given names.\n\n-i	Ask for confirmation before killing\n-l	Print list of all available signals\n-q	Don't print any warnings or error messages\n-s	Send SIGNAL instead of SIGTERM\n-v	Report if the signal was successfully sent\n-w	Wait until all signaled processes are dead"
+
+#define HELP_dnsdomainname "usage: dnsdomainname\n\nShow domain this system belongs to (same as hostname -d)."
+
+#define HELP_hostname "usage: hostname [-bdsf] [-F FILENAME] [newname]\n\nGet/set the current hostname.\n\n-b	Set hostname to 'localhost' if otherwise unset\n-d	Show DNS domain name (no host)\n-f	Show fully-qualified name (host+domain, FQDN)\n-F	Set hostname to contents of FILENAME\n-s	Show short host name (no domain)"
+
+#define HELP_zcat "usage: zcat [-f] [FILE...]\n\nDecompress files to stdout. Like `gzip -dc`.\n\n-f	Force: allow read from tty"
+
+#define HELP_gunzip "usage: gunzip [-cfkt] [FILE...]\n\nDecompress files. With no files, decompresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles without the .gz suffix.\n\n-c	Output to stdout (act as zcat)\n-f	Force: allow read from tty\n-k	Keep input files (default is to remove)\n-t	Test integrity"
+
+#define HELP_gzip "usage: gzip [-19cdfkt] [FILE...]\n\nCompress files. With no files, compresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles with the .gz suffix.\n\n-c	Output to stdout\n-d	Decompress (act as gunzip)\n-f	Force: allow overwrite of output file\n-k	Keep input files (default is to remove)\n-t	Test integrity\n-#	Compression level 1-9 (1:fastest, 6:default, 9:best)"
+
+#define HELP_dmesg "usage: dmesg [-Cc] [-r|-t|-T] [-n LEVEL] [-s SIZE] [-w]\n\nPrint or control the kernel ring buffer.\n\n-C	Clear ring buffer without printing\n-c	Clear ring buffer after printing\n-n	Set kernel logging LEVEL (1-8)\n-r	Raw output (with <level markers>)\n-S	Use syslog(2) rather than /dev/kmsg\n-s	Show the last SIZE many bytes\n-T	Human readable timestamps\n-t	Don't print timestamps\n-w	Keep waiting for more output (aka --follow)"
+
+#define HELP_wget_libtls "Enable HTTPS support for wget by linking to LibTLS.\nSupports using libtls, libretls or libtls-bearssl.\n\nUse TOYBOX_LIBCRYPTO to enable HTTPS support via OpenSSL."
+
+#define HELP_wget "usage: wget [OPTIONS]... [URL]\n    --max-redirect          maximum redirections allowed\n-d, --debug                 print lots of debugging information\n-O, --output-document=FILE  specify output filename\n-p, --post-data=DATA        send data in body of POST request\n\nexamples:\n  wget http://www.example.com"
+
+#define HELP_tunctl "usage: tunctl [-dtT] [-u USER] NAME\n\nCreate and delete tun/tap virtual ethernet devices.\n\n-T	Use tap (ethernet frames) instead of tun (ip packets)\n-d	Delete tun/tap device\n-t	Create tun/tap device\n-u	Set owner (user who can read/write device without root access)"
+
+#define HELP_sntp "usage: sntp [-saSdDq] [-r SHIFT] [-mM[ADDRESS]] [-p PORT] [SERVER]\n\nSimple Network Time Protocol client. Query SERVER and display time.\n\n-p	Use PORT (default 123)\n-s	Set system clock suddenly\n-a	Adjust system clock gradually\n-S	Serve time instead of querying (bind to SERVER address if specified)\n-m	Wait for updates from multicast ADDRESS (RFC 4330 suggests 224.0.1.1)\n-M	Multicast server on ADDRESS (RFC 4330 suggests 224.0.1.1)\n-t	TTL (multicast only, default 1)\n-d	Daemonize (run in background re-querying)\n-D	Daemonize but stay in foreground: re-query time every 1000 seconds\n-r	Retry shift (every 1<<SHIFT seconds)\n-q	Quiet (don't display time)"
+
+#define HELP_rfkill "usage: rfkill COMMAND [DEVICE]\n\nEnable/disable wireless devices.\n\nCommands:\nlist [DEVICE]   List current state\nblock DEVICE    Disable device\nunblock DEVICE  Enable device\n\nDEVICE is an index number, or one of:\nall, wlan(wifi), bluetooth, uwb(ultrawideband), wimax, wwan, gps, fm."
+
+#define HELP_ping "usage: ping [OPTIONS] HOST\n\nCheck network connectivity by sending packets to a host and reporting\nits response.\n\nSend ICMP ECHO_REQUEST packets to ipv4 or ipv6 addresses and prints each\necho it receives back, with round trip time. Returns true if host alive.\n\nOptions:\n-4, -6		Force IPv4 or IPv6\n-c CNT		Send CNT many packets (default 3, 0 = infinite)\n-f		Flood (print . and \\b to show drops, default -c 15 -i 0.2)\n-i TIME		Interval between packets (default 1, need root for < .2)\n-I IFACE/IP	Source interface or address\n-m MARK		Tag outgoing packets using SO_MARK\n-q		Quiet (stops after one returns true if host is alive)\n-s SIZE		Data SIZE in bytes (default 56)\n-t TTL		Set Time To Live (number of hops)\n-W SEC		Seconds to wait for response after last -c packet (default 3)\n-w SEC		Exit after this many seconds"
+
+#define HELP_netstat "usage: netstat [-pWrxwutneal]\n\nDisplay networking information. Default is netstat -tuwx\n\n-r	Routing table\n-a	All sockets (not just connected)\n-l	Listening server sockets\n-t	TCP sockets\n-u	UDP sockets\n-w	Raw sockets\n-x	Unix sockets\n-e	Extended info\n-n	Don't resolve names\n-W	Wide display\n-p	Show PID/program name of sockets"
+
+#define HELP_netcat "usage: netcat [-46ELlntUu] [-pqWw #] [-s addr] {IPADDR PORTNUM|-f FILENAME|COMMAND...}\n\nForward stdin/stdout to a file or network connection.\n\n-4	Force IPv4\n-6	Force IPv6\n-E	Forward stderr\n-f	Use FILENAME (ala /dev/ttyS0) instead of network\n-L	Listen and background each incoming connection (server mode)\n-l	Listen for one incoming connection, then exit\n-n	No DNS lookup\n-p	Local port number\n-q	Quit SECONDS after EOF on stdin, even if stdout hasn't closed yet\n-s	Local source address\n-t	Allocate tty\n-v	Verbose\n-u	Use UDP\n-U	Use a UNIX domain socket\n-W	SECONDS timeout for more data on an idle connection\n-w	SECONDS timeout to establish connection\n-z	zero-I/O mode [used for scanning]\n\nWhen listening the COMMAND line is executed as a child process to handle\nan incoming connection. With no COMMAND -l forwards the connection\nto stdin/stdout. If no -p specified, -l prints the port it bound to and\nbackgrounds itself (returning immediately).\n\nFor a quick-and-dirty server, try something like:\nnetcat -s 127.0.0.1 -p 1234 -tL sh -l\n\nOr use \"stty 115200 -F /dev/ttyS0 && stty raw -echo -ctlecho\" with\nnetcat -f to connect to a serial port."
+
+#define HELP_microcom "usage: microcom [-s SPEED] [-X] DEVICE\n\nSimple serial console. Hit CTRL-] for menu.\n\n-s	Set baud rate to SPEED (default 115200)\n-X	Ignore ^] menu escape"
+
+#define HELP_ifconfig "usage: ifconfig [-aS] [INTERFACE [ACTION...]]\n\nDisplay or configure network interface.\n\nWith no arguments, display active interfaces. First argument is interface\nto operate on, one argument by itself displays that interface.\n\n-a	All interfaces displayed, not just active ones\n-S	Short view, one line per interface\n\nStandard ACTIONs to perform on an INTERFACE:\n\nADDR[/MASK]        - set IPv4 address (1.2.3.4/5) and activate interface\nadd|del ADDR[/LEN] - add/remove IPv6 address (1111::8888/128)\nup|down            - activate or deactivate interface\n\nAdvanced ACTIONs (default values usually suffice):\n\ndefault          - remove IPv4 address\nnetmask ADDR     - set IPv4 netmask via 255.255.255.0 instead of /24\ntxqueuelen LEN   - number of buffered packets before output blocks\nmtu LEN          - size of outgoing packets (Maximum Transmission Unit)\nbroadcast ADDR   - Set broadcast address\npointopoint ADDR - PPP and PPPOE use this instead of \"route add default gw\"\nhw TYPE ADDR     - set hardware (mac) address (type = ether|infiniband)\nrename NEWNAME   - rename interface\n\nFlags you can set on an interface (or -remove by prefixing with -):\n\narp       - don't use Address Resolution Protocol to map LAN routes\npromisc   - don't discard packets that aren't to this LAN hardware address\nmulticast - force interface into multicast mode if the driver doesn't\nallmulti  - promisc for multicast packets"
+
+#define HELP_httpd "usage: httpd [-de STR] [-v] [DIR]\n\nServe contents of directory as static web pages.\n\n-e	Escape STR as URL, printing result and exiting.\n-d	Decode escaped STR, printing result and exiting.\n-v	Verbose"
+
+#define HELP_host "usage: host [-v] [-t TYPE] NAME [SERVER]\n\nLook up DNS records for NAME, either domain name or IPv4/IPv6 address to\nreverse lookup, from SERVER or default DNS server(s).\n\n-a	All records\n-t TYPE	Record TYPE (number or ANY A AAAA CNAME MX NS PTR SOA SRV TXT)\n-v	Verbose"
+
+#define HELP_ftpput "An ftpget that defaults to -s instead of -g"
+
+#define HELP_ftpget "usage: ftpget [-cvgslLmMdD] [-P PORT] [-p PASSWORD] [-u USER] HOST [LOCAL] REMOTE\n\nTalk to ftp server. By default get REMOTE file via passive anonymous\ntransfer, optionally saving under a LOCAL name. Can also send, list, etc.\n\n-c	Continue partial transfer\n-p	Use PORT instead of \"21\"\n-P	Use PASSWORD instead of \"ftpget@\"\n-u	Use USER instead of \"anonymous\"\n-v	Verbose\n\nWays to interact with FTP server:\n-d	Delete file\n-D	Remove directory\n-g	Get file (default)\n-l	List directory\n-L	List (filenames only)\n-m	Move file on server from LOCAL to REMOTE\n-M	mkdir\n-s	Send file"
+
+#define HELP_yes "usage: yes [args...]\n\nRepeatedly output line until killed. If no args, output 'y'."
+
+#define HELP_xxd "usage: xxd [-eipr] [-cglos N] [file]\n\nHexdump a file to stdout. If no file is listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-c N	Show N bytes per line (default 16)\n-e	Little-endian\n-g N	Group bytes by adding a ' ' every N bytes (default 2)\n-i	Output include file (CSV hex bytes, plus C header/footer if not stdin)\n-l N	Limit of N bytes before stopping (default is no limit)\n-o N	Add N to display offset\n-p	Plain hexdump (30 bytes/line, no grouping. With -c 0 no wrap/group)\n-r	Reverse operation: turn a hexdump into a binary file\n-s N	Skip to offset N"
+
+#define HELP_which "usage: which [-a] filename ...\n\nSearch $PATH for executable files matching filename(s).\n\n-a	Show all matches"
+
+#define HELP_watchdog "usage: watchdog [-F] [-t UPDATE] [-T DEADLINE] DEV\n\nStart the watchdog timer at DEV with optional timeout parameters.\n\n-F	run in the foreground (do not daemonize)\n-t	poke watchdog every UPDATE seconds (default 4)\n-T	reboot if not poked for DEADLINE seconds (default 60)"
+
+#define HELP_watch "usage: watch [-tebx] [-n SEC] COMMAND...\n\nRun COMMAND every -n seconds, showing output that fits terminal, q to quit.\n\n-n	Number of seconds between repeats (default 2.0)\n-t	Don't print header\n-e	Exit on error\n-b	Beep on command error\n-x	Exec command directly (without \"sh -c\")"
+
+#define HELP_w "usage: w\n\nShow who is logged on and since how long they logged in."
+
+#define HELP_vmstat "usage: vmstat [-n] [DELAY [COUNT]]\n\nPrint virtual memory statistics, repeating each DELAY seconds, COUNT times.\n(With no DELAY, prints one line. With no COUNT, repeats until killed.)\n\nShow processes running and blocked, kilobytes swapped, free, buffered, and\ncached, kilobytes swapped in and out per second, file disk blocks input and\noutput per second, interrupts and context switches per second, percent\nof CPU time spent running user code, system code, idle, and awaiting I/O.\nFirst line is since system started, later lines are since last line.\n\n-n	Display the header only once"
+
+#define HELP_vconfig "usage: vconfig COMMAND [OPTIONS]\n\nCreate and remove virtual ethernet devices\n\nadd             [interface-name] [vlan_id]\nrem             [vlan-name]\nset_flag        [interface-name] [flag-num]       [0 | 1]\nset_egress_map  [vlan-name]      [skb_priority]   [vlan_qos]\nset_ingress_map [vlan-name]      [skb_priority]   [vlan_qos]\nset_name_type   [name-type]"
+
+#define HELP_uuidgen "usage: uuidgen\n\nCreate and print a new RFC4122 random UUID."
+
+#define HELP_usleep "usage: usleep MICROSECONDS\n\nPause for MICROSECONDS microseconds."
+
+#define HELP_uptime "usage: uptime [-ps]\n\nTell the current time, how long the system has been running, the number\nof users, and the system load averages for the past 1, 5 and 15 minutes.\n\n-p	Pretty (human readable) uptime\n-s	Since when has the system been up?"
+
+#define HELP_uclampset "usage: uclampset [-m MIN] [-M MAX] {-p PID | COMMAND...}\n\nSet or query process utilization limits ranging from 0 to 1024, or -1 to\nreset to system default. With no arguments, prints current values.\n\n-m MIN      Reserve at least this much CPU utilization for task\n-M MAX      Limit task to at most this much CPU utilization\n-p PID	Apply to PID rather than new COMMAND\n-R	Reset child processes to default values on fork\n-a	Apply to all threads for the given PID"
+
+#define HELP_ts "usage: ts [-is] [FORMAT]\n\nAdd timestamps to each line in pipeline. Default format without options\n\"%b %d %H:%M:%S\", with -i or -s \"%H:%M:%S\".\n\n-i	Incremental (since previous line)\n-m	Add milliseconds\n-s	Since start"
+
+#define HELP_truncate "usage: truncate [-c] -s SIZE file...\n\nSet length of file(s), extending sparsely if necessary.\n\n-c	Don't create file if it doesn't exist\n-s	New size (with optional prefix and suffix)\n\nSIZE prefix: + add, - subtract, < shrink to, > expand to,\n             / multiple rounding down, % multiple rounding up\nSIZE suffix: k=1024, m=1024^2, g=1024^3, t=1024^4, p=1024^5, e=1024^6"
+
+#define HELP_timeout "usage: timeout [-iv] [-k DURATION] [-s SIGNAL] DURATION COMMAND...\n\nRun command line as a child process, sending child a signal if the\ncommand doesn't exit soon enough.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default).\n\n-i	Only kill for inactivity (restart timeout when command produces output)\n-k	Send KILL signal if child still running this long after first signal\n-s	Send specified signal (default TERM)\n-v	Verbose\n--foreground       Don't create new process group\n--preserve-status  Exit with the child's exit status"
+
+#define HELP_taskset "usage: taskset [-ap] [mask] [PID | cmd [args...]]\n\nLaunch a new task which may only run on certain processors, or change\nthe processor affinity of an existing PID.\n\nMask is a hex string where each bit represents a processor the process\nis allowed to run on. PID without a mask displays existing affinity.\n\n-p	Set/get the affinity of given PID instead of a new command\n-a	Set/get the affinity of all threads of the PID"
+
+#define HELP_nproc "usage: nproc [--all]\n\nPrint number of processors.\n\n--all	Show all processors, not just ones this task can run on"
+
+#define HELP_tac "usage: tac [FILE...]\n\nOutput lines in reverse order."
+
+#define HELP_sysctl "usage: sysctl [-aAeNnqw] [-p [FILE] | KEY[=VALUE]...]\n\nRead/write system control data (under /proc/sys).\n\n-a,A	Show all values\n-e	Don't warn about unknown keys\n-N	Don't print key values\n-n	Don't print key names\n-p	Read values from FILE (default /etc/sysctl.conf)\n-q	Don't show value after write\n-w	Only write values (object to reading)"
+
+#define HELP_switch_root "usage: switch_root [-c /dev/console] NEW_ROOT NEW_INIT...\n\nUse from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\nand exec NEW_INIT.\n\n-c	Redirect console to device in NEW_ROOT\n-h	Hang instead of exiting on failure (avoids kernel panic)"
+
+#define HELP_swapon "usage: swapon [-d] [-p priority] filename\n\nEnable swapping on a given device/file.\n\n-d	Discard freed SSD pages\n-p	Priority (highest priority areas allocated first)"
+
+#define HELP_swapoff "usage: swapoff FILE\n\nDisable swapping on a device or file."
+
+#define HELP_stat "usage: stat [-tfL] [-c FORMAT] FILE...\n\nDisplay status of files or filesystems.\n\n-c	Output specified FORMAT string instead of default\n-f	Display filesystem status instead of file status\n-L	Follow symlinks\n-t	terse (-c \"%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\")\n	      (with -f = -c \"%n %i %l %t %s %S %b %f %a %c %d\")\n\nThe valid format escape sequences for files:\n%a  Access bits (octal) |%A  Access bits (flags)|%b  Size/512\n%B  Bytes per %b (512)  |%C  Security context   |%d  Device ID (dec)\n%D  Device ID (hex)     |%f  All mode bits (hex)|%F  File type\n%g  Group ID            |%G  Group name         |%h  Hard links\n%i  Inode               |%m  Mount point        |%n  Filename\n%N  Long filename       |%o  I/O block size     |%s  Size (bytes)\n%t  Devtype major (hex) |%T  Devtype minor (hex)|%u  User ID\n%U  User name           |%x  Access time        |%X  Access unix time\n%y  Modification time   |%Y  Mod unix time      |%z  Creation time\n%Z  Creation unix time\n\nThe valid format escape sequences for filesystems:\n%a  Available blocks    |%b  Total blocks       |%c  Total inodes\n%d  Free inodes         |%f  Free blocks        |%i  File system ID\n%l  Max filename length |%n  File name          |%s  Best transfer size\n%S  Actual block size   |%t  FS type (hex)      |%T  FS type (driver name)"
+
+#define HELP_shuf "usage: shuf [-ze] [-n COUNT] [FILE...]\n\nWrite lines of input to output in random order.\n\n-z	Input/output lines are NUL terminated.\n-n	Stop after COUNT many output lines.\n-e	Echo mode: arguments are inputs to shuffle, not files to read."
+
+#define HELP_shred "usage: shred [-fuxz] [-n COUNT] [-o OFFSET] [-s SIZE] FILE...\n\nSecurely delete a file by overwriting its contents with random data.\n\n-f		Force (chmod if necessary)\n-n COUNT	Random overwrite iterations (default 1)\n-o OFFSET	Start at OFFSET\n-s SIZE		Use SIZE instead of detecting file size\n-u		Unlink (actually delete file when done)\n-x		Use exact size (default without -s rounds up to next 4k)\n-z		Zero at end\n\nNote: data journaling filesystems render this command useless, you must\noverwrite all free space (fill up disk) to erase old data on those."
+
+#define HELP_sha3sum "usage: sha3sum [-bS] [-a BITS] [FILE...]\n\nHash function du jour.\n\n-a	Produce a hash BITS long (default 224)\n-b	Brief (hash only, no filename)\n-S	Use SHAKE termination byte instead of SHA3 (ask FIPS why)"
+
+#define HELP_setsid "usage: setsid [-cdw] command [args...]\n\nRun process in a new session.\n\n-d	Detach from tty\n-c	Control tty (repeat to steal)\n-w	Wait for child (and exit with its status)"
+
+#define HELP_setfattr "usage: setfattr [-h] [-x|-n NAME] [-v VALUE] FILE...\n\nWrite POSIX extended attributes.\n\n-h	Do not dereference symlink\n-n	Set given attribute\n-x	Remove given attribute\n-v	Set value for attribute -n (default is empty)"
+
+#define HELP_rtcwake "usage: rtcwake [-aluv] [-d FILE] [-m MODE] [-s SECS] [-t UNIX]\n\nEnter the given sleep state until the given time.\n\n-a	RTC uses time specified in /etc/adjtime\n-d FILE	Device to use (default /dev/rtc)\n-l	RTC uses local time\n-m	Mode (--list-modes to see those supported by your kernel):\n	  standby  S1: default              mem     S3: suspend to RAM\n	  disk     S4: suspend to disk      off     S5: power off\n	  disable  Cancel current alarm     freeze  stop processes/processors\n	  no       just set wakeup time     on      just poll RTC for alarm\n	  show     just show current alarm\n-s SECS	Wake SECS seconds from now\n-t UNIX	Wake UNIX seconds from epoch\n-u	RTC uses UTC\n-v	Verbose"
+
+#define HELP_rmmod "usage: rmmod [-wf] MODULE...\n\nUnload the given kernel modules.\n\n-f	Force unload of a module\n-w	Wait until the module is no longer used"
+
+#define HELP_rev "usage: rev [FILE...]\n\nOutput each line reversed, when no files are given stdin is used."
+
+#define HELP_reset "usage: reset\n\nReset the terminal."
+
+#define HELP_reboot "usage: reboot/halt/poweroff [-fn] [-d DELAY]\n\nRestart, halt, or power off the system.\n\n-d	Wait DELAY before proceeding (in seconds or m/h/d suffix: -d 1.5m = 90s)\n-f	Force reboot (don't signal init, reboot directly)\n-n	Don't sync filesystems before reboot"
+
+#define HELP_realpath "usage: realpath [-LPemqsz] [--relative-base DIR] [-R DIR] FILE...\n\nDisplay the canonical absolute pathname\n\n-R Show ../path relative to DIR (--relative-to)\n-L Logical path (resolve .. before symlinks)\n-P Physical path (default)\n-e Canonical path to existing entry (fail if missing)\n-m Ignore missing entries, show where it would be\n-q Quiet (no error messages)\n-s Don't expand symlinks\n-z NUL instead of newline\n--relative-base  If path under DIR trim off prefix"
+
+#define HELP_readlink "usage: readlink [-efmnqz] FILE...\n\nWith no options, show what symlink points to, return error if not symlink.\n\nOptions for producing canonical paths (all symlinks/./.. resolved):\n\n-e	Canonical path to existing entry (fail if missing)\n-f	Full path (fail if directory missing)\n-m	Ignore missing entries, show where it would be\n-n	No trailing newline\n-q	Quiet (no error messages)\n-z	NUL instead of newline"
+
+#define HELP_readelf "usage: readelf [-AadehlnSs] [-p SECTION] [-x SECTION] [file...]\n\nDisplays information about ELF files.\n\n-A	Show architecture-specific info\n-a	Equivalent to -AdhlnSs\n-d	Show dynamic section\n-e	Headers (equivalent to -hlS)\n-h	Show ELF header\n-l	Show program headers\n-n	Show notes\n-p S	Dump strings found in named/numbered section\n-S	Show section headers\n-s	Show symbol tables (.dynsym and .symtab)\n-x S	Hex dump of named/numbered section\n\n--dyn-syms	Show just .dynsym symbol table"
+
+#define HELP_readahead "usage: readahead FILE...\n\nPreload files into disk cache."
+
+#define HELP_pwgen "usage: pwgen [-cAn0yrsBC1v] [-r CHARS] [LENGTH] [COUNT]\n\nGenerate human-readable random passwords. Default output to tty fills screen\nwith passwords to defeat shoulder surfing (pick one and clear the screen).\n\n-0	No numbers (--no-numerals)\n-1	Output one per line\n-A	No capital letters (--no-capitalize)\n-B	Avoid ambiguous characters like 0O and 1lI (--ambiguous)\n-C	Output in columns\n-c	Add capital letters (--capitalize)\n-n	Add numbers (--numerals)\n-r	Don't include the given CHARS (--remove)\n-v	No vowels.\n-y	Add punctuation (--symbols)"
+
+#define HELP_pwdx "usage: pwdx PID...\n\nPrint working directory of processes listed on command line."
+
+#define HELP_printenv "usage: printenv [-0] [env_var...]\n\nPrint environment variables.\n\n-0	Use \\0 as delimiter instead of \\n"
+
+#define HELP_pmap "usage: pmap [-pqx] PID...\n\nReport the memory map of a process or processes.\n\n-p	Show full paths\n-q	Do not show header or footer\n-x	Show the extended format"
+
+#define HELP_pivot_root "usage: pivot_root OLD NEW\n\nSwap OLD and NEW filesystems (as if by simultaneous mount --move), and\nmove all processes with chdir or chroot under OLD into NEW (including\nkernel threads) so OLD may be unmounted.\n\nThe directory NEW must exist under OLD. This doesn't work on initramfs,\nwhich can't be moved (about the same way PID 1 can't be killed; see\nswitch_root instead)."
+
+#define HELP_partprobe "usage: partprobe DEVICE...\n\nTell the kernel about partition table changes\n\nAsk the kernel to re-read the partition table on the specified devices."
+
+#define HELP_deallocvt "usage: deallocvt [NUM]\n\nDeallocate unused virtual terminals, either a specific /dev/ttyNUM, or all."
+
+#define HELP_chvt "usage: chvt NUM\n\nChange to virtual terminal number NUM. (This only works in text mode.)\n\nVirtual terminals are the Linux VGA text mode (or framebuffer) displays,\nswitched between via alt-F1, alt-F2, etc. Use ctrl-alt-F1 to switch\nfrom X11 to a virtual terminal, and alt-F6 (or F7, or F8) to get back."
+
+#define HELP_openvt "usage: openvt [-c NUM] [-sw] COMMAND...\n\nRun COMMAND on a new virtual terminal.\n\n-c NUM  Use VT NUM\n-s    Switch to the new VT\n-w    Wait for command to exit (with -s, deallocates VT on exit)"
+
+#define HELP_oneit "usage: oneit [-prn3] [-c CONSOLE] [COMMAND...]\n\nSimple init program that runs a single supplied command line with a\ncontrolling tty (so CTRL-C can kill it).\n\n-c	Which console device to use (/dev/console doesn't do CTRL-C, etc)\n-p	Power off instead of rebooting when command exits\n-r	Restart child when it exits\n-n	No reboot, just relaunch command line\n-3	Write 32 bit PID of each exiting reparented process to fd 3 of child\n	(Blocking writes, child must read to avoid eventual deadlock.)\n\nSpawns a single child process (because PID 1 has signals blocked)\nin its own session, reaps zombies until the child exits, then\nreboots the system (or powers off with -p, or restarts the child with -r).\n\nResponds to SIGUSR1 by halting the system, SIGUSR2 by powering off,\nand SIGTERM or SIGINT reboot."
+
+#define HELP_nsenter "usage: nsenter [-t pid] [-F] [-i] [-m] [-n] [-p] [-u] [-U] COMMAND...\n\nRun COMMAND in an existing (set of) namespace(s).\n\n-a	Enter all supported namespaces (--all)\n-F	don't fork, even if -p is used (--no-fork)\n-t	PID to take namespaces from    (--target)\n\nThe namespaces to switch are:\n\n-C	Control groups (--cgroup)\n-i	SysV IPC: message queues, semaphores, shared memory (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init, will fork unless -F is used (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nIf -t isn't specified, each namespace argument must provide a path\nto a namespace file, ala \"-i=/proc/$PID/ns/ipc\""
+
+#define HELP_unshare "usage: unshare [-imnpuUr] COMMAND...\n\nCreate new container namespace(s) for this process and its children, allowing\nthe new set of processes to have a different view of the system than the\nparent process.\n\n-a	Unshare all supported namespaces\n-f	Fork command in the background (--fork)\n-r	Become root (map current euid/egid to 0/0, implies -U) (--map-root-user)\n\nAvailable namespaces:\n-C	Control groups (--cgroup)\n-i	SysV IPC (message queues, semaphores, shared memory) (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nEach namespace can take an optional argument, a persistent mountpoint usable\nby the nsenter command to add new processes to that the namespace. (Specify\nmultiple namespaces to unshare separately, ala -c -i -m because -cim is -c\nwith persistent mount \"im\".)"
+
+#define HELP_nbd_server "usage: nbd-server [-r] FILE\n\nServe a Network Block Device from FILE on stdin/out (ala inetd).\n\n-r	Read only export"
+
+#define HELP_nbd_client "usage: nbd-client [-ns] [-b BLKSZ] HOST PORT DEVICE\n\n-b	Block size (default 4096)\n-n	Do not daemonize\n-s	nbd swap support (lock server into memory)"
+
+#define HELP_mountpoint "usage: mountpoint [-qd] DIR\n       mountpoint [-qx] DEVICE\n\nCheck whether the directory or device is a mountpoint.\n\n-q	Be quiet, return zero if directory is a mountpoint\n-d	Print major/minor device number of the directory\n-x	Print major/minor device number of the block device"
+
+#define HELP_modinfo "usage: modinfo [-0] [-b basedir] [-k kernel] [-F field] [module|file...]\n\nDisplay module fields for modules specified by name or .ko path.\n\n-F  Only show the given field\n-0  Separate fields with NUL rather than newline\n-b  Use <basedir> as root for /lib/modules/\n-k  Look in given directory under /lib/modules/"
+
+#define HELP_mkswap "usage: mkswap [-L LABEL] DEVICE\n\nSet up a Linux swap area on a device or file."
+
+#define HELP_mkpasswd "usage: mkpasswd [-P FD] [-m TYPE] [-S SALT] [PASSWORD] [SALT]\n\nEncrypt PASSWORD using crypt(3), with either random or provided SALT.\n\n-P FD	Read password from file descriptor FD\n-m TYPE	Encryption method (des, md5, sha256, or sha512; default is des)"
+
+#define HELP_mix "usage: mix [-d DEV] [-c CHANNEL] [-l VOL] [-r RIGHT]\n\nList OSS sound channels (module snd-mixer-oss), or set volume(s).\n\n-c CHANNEL	Set/show volume of CHANNEL (default first channel found)\n-d DEV		Device node (default /dev/mixer)\n-l VOL		Volume level\n-r RIGHT	Volume of right stereo channel (with -r, -l sets left volume)"
+
+#define HELP_memeater "usage: memeater [-M] BYTES\n\nConsume the specified amount of memory and wait to be killed.\n\n-M	Don't mlock() the memory (let it swap out)."
+
+#define HELP_mcookie "usage: mcookie [-vV]\n\nGenerate a 128-bit strong random number.\n\n-v  show entropy source (verbose)\n-V  show version"
+
+#define HELP_makedevs "usage: makedevs [-d device_table] rootdir\n\nCreate a range of special files as specified in a device table.\n\n-d	File containing device table (default reads from stdin)\n\nEach line of the device table has the fields:\n<name> <type> <mode> <uid> <gid> <major> <minor> <start> <increment> <count>\nWhere name is the file name, and type is one of the following:\n\nb	Block device\nc	Character device\nd	Directory\nf	Regular file\np	Named pipe (fifo)\n\nOther fields specify permissions, user and group id owning the file,\nand additional fields for device special files. Use '-' for blank entries,\nunspecified fields are treated as '-'."
+
+#define HELP_lsusb "usage: lsusb [-i]\n\nList USB hosts/devices.\n\n-i	ID database (default /etc/usb.ids[.gz])"
+
+#define HELP_lspci "usage: lspci [-ekmn] [-i FILE]\n\nList PCI devices.\n\n-e	Extended (6 digit) class\n-i	ID database (default /etc/pci.ids[.gz])\n-k	Show kernel driver\n-m	Machine readable\n-n	Numeric output (-nn for both)\n-x	Hex dump of config space (64 bytes; -xxx for 256, -xxxx for 4096)"
+
+#define HELP_lsmod "usage: lsmod\n\nDisplay the currently loaded modules, their sizes and their dependencies."
+
+#define HELP_chattr "usage: chattr [-R] [-+=AacDdijsStTu] [-p PROJID] [-v VERSION] [FILE...]\n\nChange file attributes on a Linux file system.\n\n-R	Recurse\n-p	Set the file's project number\n-v	Set the file's version/generation number\n\nOperators:\n  '-' Remove attributes\n  '+' Add attributes\n  '=' Set attributes\n\nAttributes:\n  A  No atime                     a  Append only\n  C  No COW                       c  Compression\n  D  Synchronous dir updates      d  No dump\n  E  Encrypted                    e  Extents\n  F  Case-insensitive (casefold)\n  I  Indexed directory            i  Immutable\n  j  Journal data\n  N  Inline data in inode\n  P  Project hierarchy\n  S  Synchronous file updates     s  Secure delete\n  T  Top of dir hierarchy         t  No tail-merging\n  u  Allow undelete\n  V  Verity"
+
+#define HELP_lsattr "usage: lsattr [-Radlpv] [FILE...]\n\nList file attributes on a Linux file system.\nFlag letters are defined in chattr help.\n\n-R	Recursively list attributes of directories and their contents\n-a	List all files in directories, including files that start with '.'\n-d	List directories like other files, rather than listing their contents\n-l	List long flag names\n-p	List the file's project number\n-v	List the file's version/generation number"
+
+#define HELP_losetup "usage: losetup [-cdrs] [-o OFFSET] [-S SIZE] {-d DEVICE...|-j FILE|-af|{DEVICE FILE}}\n\nAssociate a loopback device with a file, or show current file (if any)\nassociated with a loop device.\n\nInstead of a device:\n-a	Iterate through all loopback devices\n-f	Find first unused loop device (may create one)\n-j FILE	Iterate through all loopback devices associated with FILE\n\nexisting:\n-c	Check capacity (file size changed)\n-d DEV	Detach loopback device\n-D	Detach all loopback devices\n\nnew:\n-s	Show device name (alias --show)\n-o OFF	Start association at offset OFF into FILE\n-r	Read only\n-S SIZE	Limit SIZE of loopback association (alias --sizelimit)"
+
+#define HELP_login "usage: login [-p] [-h host] [-f USERNAME] [USERNAME]\n\nLog in as a user, prompting for username and password if necessary.\n\n-p	Preserve environment\n-h	The name of the remote host for this login\n-f	login as USERNAME without authentication"
+
+#define HELP_linux32 "usage: linux32 [COMMAND...]\n\nTell uname -m to lie to autoconf (to build 32 bit binaries on 64 bit kernel)."
+
+#define HELP_iorenice "usage: iorenice PID [CLASS] [PRIORITY]\n\nDisplay or change I/O priority of existing process. CLASS can be\n\"rt\" for realtime, \"be\" for best effort, \"idle\" for only when idle, or\n\"none\" to leave it alone. PRIORITY can be 0-7 (0 is highest, default 4)."
+
+#define HELP_ionice "usage: ionice [-t] [-c CLASS] [-n LEVEL] [COMMAND...|-p PID]\n\nChange the I/O scheduling priority of a process. With no arguments\n(or just -p), display process' existing I/O class/priority.\n\n-c	CLASS = 1-3: 1(realtime), 2(best-effort, default), 3(when-idle)\n-n	LEVEL = 0-7: (0 is highest priority, default = 5)\n-p	Affect existing PID instead of spawning new child\n-t	Ignore failure to set I/O priority\n\nSystem default iopriority is generally -c 2 -n 4."
+
+#define HELP_insmod "usage: insmod MODULE [OPTION...]\n\nLoad the module named MODULE passing options if given."
+
+#define HELP_inotifyd "usage: inotifyd PROG FILE[:MASK] ...\n\nWhen a filesystem event matching MASK occurs to a FILE, run PROG as:\n\n  PROG EVENTS FILE [DIRFILE]\n\nIf PROG is \"-\" events are sent to stdout.\n\nThis file is:\n  a  accessed    c  modified    e  metadata change  w  closed (writable)\n  r  opened      D  deleted     M  moved            0  closed (unwritable)\n  u  unmounted   o  overflow    x  unwatchable\n\nA file in this directory is:\n  m  moved in    y  moved out   n  created          d  deleted\n\nWhen x event happens for all FILEs, inotifyd exits (after waiting for PROG)."
+
+#define HELP_i2ctransfer "usage: i2ctransfer [-fy] BUS DESC [DATA...]...\n\nMake i2c transfers. DESC is 'r' for read or 'w' for write, followed by\nthe number of bytes to read or write, followed by '@' and a 7-bit address.\nFor any message after the first, the '@' and address can be omitted to\nreuse the previous address. A 'w' DESC must be followed by the number of\nDATA bytes that was specified in the DESC.\n\n-f	Force access to busy devices\n-v	Verbose (show messages sent, not just received)\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cset "usage: i2cset [-fy] BUS CHIP ADDR VALUE... MODE\n\nWrite an i2c register. MODE is b for byte, w for 16-bit word, i for I2C block.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cget "usage: i2cget [-fy] BUS CHIP [ADDR]\n\nRead an i2c register.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdump "usage: i2cdump [-fy] BUS CHIP\n\nDump i2c registers.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdetect "usage: i2cdetect [-aqry] BUS [FIRST LAST]\nusage: i2cdetect -F BUS\nusage: i2cdetect -l\n\nDetect i2c devices.\n\n-a	All addresses (0x00-0x7f rather than 0x03-0x77 or FIRST-LAST)\n-F	Show functionality\n-l	List available buses\n-q	Probe with SMBus Quick Write (default)\n-r	Probe with SMBus Read Byte\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_hwclock "usage: hwclock [-rswtluf]\n\nGet/set the hardware clock.\n\n-f FILE	Use specified device file instead of /dev/rtc0 (--rtc)\n-l	Hardware clock uses localtime (--localtime)\n-r	Show hardware clock time (--show)\n-s	Set system time from hardware clock (--hctosys)\n-t	Set the system time based on the current timezone (--systz)\n-u	Hardware clock uses UTC (--utc)\n-w	Set hardware clock from system time (--systohc)"
+
+#define HELP_hexedit "usage: hexedit [-r] FILE\n\nHexadecimal file editor/viewer. All changes are written to disk immediately.\n\n-r	Read only (display but don't edit)\n\nKeys:\nArrows         Move left/right/up/down by one line/column\nPgUp/PgDn      Move up/down by one page\nHome/End       Start/end of line (start/end of file with ctrl)\n0-9, a-f       Change current half-byte to hexadecimal value\n^J or :        Jump (+/- for relative offset, otherwise absolute address)\n^F or /        Find string (^G/n: next, ^D/p: previous match)\nu              Undo\nx              Toggle bw/color display\nq/^C/^Q/Esc    Quit"
+
+#define HELP_help "usage: help [-ahu] [COMMAND]\n\n-a	All commands\n-u	Usage only\n-h	HTML output\n\nShow usage information for toybox commands.\nRun \"toybox\" with no arguments for a list of available commands."
+
+#define HELP_gpioset "usage: gpioset [-l] CHIP LINE=VALUE...\n\nSet the lines on CHIP to the given values. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioget "usage: gpioget [-l] CHIP LINE...\n\nGets the values of the given lines on CHIP. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioinfo "usage: gpioinfo [CHIP...]\n\nShow gpio chips' lines."
+
+#define HELP_gpiofind "usage: gpiofind NAME\n\nShow the chip and line number for the given line name."
+
+#define HELP_gpiodetect "usage: gpiodetect\n\nShow all gpio chips' names, labels, and number of lines."
+
+#define HELP_getopt "usage: getopt [-aTu] [-lo OPTIONS] [-n NAME] [OPTIONS] ARG...\n\nOutputs command line with recognized OPTIONS character arguments moved to\nfront, then \"--\", then non-option arguments. Returns 1 if unknown options.\nOPTIONS followed by : take an argument, or :: for optional arguments (which\nmust be attached, ala -xblah or --long=blah).\n\n-a	Allow long options starting with a single -\n-l	Long OPTIONS (repeated or comma separated)\n-n	Command NAME for error messages\n-o	Short OPTIONS (instead of using first argument)\n-T	Test whether this is a modern getopt\n-u	Unquoted output (default if no other options set)\n\nExample:\n  $ getopt -l long:,arg:: abc command --long -b there --arg\n  --long '-b' --arg '' -- 'command' 'there'"
+
+#define HELP_fsync "usage: fsync [-d] [FILE...]\n\nFlush disk cache for FILE(s), writing cached data to storage device.\n\n-d	Skip directory info (sync file contents only)."
+
+#define HELP_fsfreeze "usage: fsfreeze {-f | -u} MOUNTPOINT\n\nFreeze or unfreeze a filesystem.\n\n-f	Freeze\n-u	Unfreeze"
+
+#define HELP_freeramdisk "usage: freeramdisk [RAM device]\n\nFree all memory allocated to specified ramdisk"
+
+#define HELP_free "usage: free [-bkmgt]\n\nDisplay the total, free and used amount of physical memory and swap space.\n\n-bkmg	Output units (default is bytes)\n-h	Human readable (K=1024)"
+
+#define HELP_fmt "usage: fmt [-w WIDTH] [FILE...]\n\nReformat input to wordwrap at a given line length, preserving existing\nindentation level, writing to stdout.\n\n-w WIDTH	Maximum characters per line (default 75)"
+
+#define HELP_flock "usage: flock [-sxun] fd\n\nManage advisory file locks.\n\n-s	Shared lock\n-x	Exclusive lock (default)\n-u	Unlock\n-n	Non-blocking: fail rather than wait for the lock"
+
+#define HELP_fallocate "usage: fallocate [-o OFFSET] -l SIZE FILE\n\nTell the filesystem to allocate space for a range in a file.\n\n-l	Number of bytes in range\n-o	Start offset of range (default 0)"
+
+#define HELP_factor "usage: factor [-hx] NUMBER...\n\nFactor integers.\n\n-h	Human readable: show repeated factors as x^n\n-x	Hexadecimal output"
+
+#define HELP_eject "usage: eject [-stT] [DEVICE]\n\nEject DEVICE or default /dev/cdrom\n\n-s	SCSI device\n-t	Close tray\n-T	Open/close tray (toggle)"
+
+#define HELP_unix2dos "usage: unix2dos [FILE...]\n\nConvert newline format from unix \"\\n\" to dos \"\\r\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_dos2unix "usage: dos2unix [FILE...]\n\nConvert newline format from dos \"\\r\\n\" to unix \"\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_devmem "usage: devmem ADDR [WIDTH [DATA]]\n\nRead/write physical address. WIDTH is 1, 2, 4, or 8 bytes (default 4).\nPrefix ADDR with 0x for hexadecimal, output is in same base as address."
+
+#define HELP_count "usage: count [-l]\n\n-l	Long output (total bytes, human readable, transfer rate, elapsed time)\n\nCopy stdin to stdout, displaying simple progress indicator to stderr."
+
+#define HELP_clear "Clear the screen."
+
+#define HELP_chrt "usage: chrt [-Rmofrbi] {-p PID [PRIORITY] | [PRIORITY COMMAND...]}\n\nGet/set a process' real-time scheduling policy and priority.\n\n-p	Set/query given pid (instead of running COMMAND)\n-R	Set SCHED_RESET_ON_FORK\n-m	Show min/max priorities available\n\nSet policy (default -r):\n\n  -o  SCHED_OTHER    -f  SCHED_FIFO    -r  SCHED_RR\n  -b  SCHED_BATCH    -i  SCHED_IDLE"
+
+#define HELP_chroot "usage: chroot NEWROOT [COMMAND [ARG...]]\n\nRun command within a new root directory. If no command, run /bin/sh."
+
+#define HELP_chcon "usage: chcon [-hRv] CONTEXT FILE...\n\nChange the SELinux security context of listed file[s].\n\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories\n-v	Verbose"
+
+#define HELP_bzcat "usage: bzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_bunzip2 "usage: bunzip2 [-cftkv] [FILE...]\n\nDecompress listed files (file.bz becomes file) deleting archive file(s).\nRead from stdin if no files listed.\n\n-c	Force output to stdout\n-f	Force decompression (if FILE doesn't end in .bz, replace original)\n-k	Keep input files (-c and -t imply this)\n-t	Test integrity\n-v	Verbose"
+
+#define HELP_blockdev "usage: blockdev --OPTION... BLOCKDEV...\n\nCall ioctl(s) on each listed block device\n\n--setro		Set read only\n--setrw		Set read write\n--getro		Get read only\n--getss		Get sector size\n--getbsz	Get block size\n--setbsz BYTES	Set block size\n--getsz		Get device size in 512-byte sectors\n--getsize	Get device size in sectors (deprecated)\n--getsize64	Get device size in bytes\n--getra		Get readahead in 512-byte sectors\n--setra SECTORS	Set readahead\n--flushbufs	Flush buffers\n--rereadpt	Reread partition table"
+
+#define HELP_fstype "usage: fstype DEV...\n\nPrint type of filesystem on a block device or image."
+
+#define HELP_blkid "usage: blkid [-o TYPE] [-s TAG] [-UL] DEV...\n\nPrint type, label and UUID of filesystem on a block device or image.\n\n-U	Show UUID only (or device with that UUID)\n-L	Show LABEL only (or device with that LABEL)\n-o TYPE	Output format (full, value, export)\n-s TAG	Only show matching tags (default all)"
+
+#define HELP_blkdiscard "usage: blkdiscard [-szf] [-o OFFSET] [-l LENGTH] DEVICE\n\nDiscard device sectors (permanetly deleting data). Free space can improve\nflash performance and lifetime by wear leveling and collating data.\n(Some filesystem/driver combinations can do this automatically.)\n\n-o	Start at OFFSET (--offset, default 0)\n-l	LENGTH to discard (--length, default all)\n-s	Overwrite discarded data (--secure)\n-z	Zero-fill rather than discard (--zeroout)\n-f	Disable check for mounted filesystem (--force)\n\nOFFSET and LENGTH must be aligned to the device sector size. Default\nwithout -o/-l discards the entire device. (You have been warned.)"
+
+#define HELP_base32 "usage: base32 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base32.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_base64 "usage: base64 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base64.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_unicode "usage: unicode CODE[-END]...\n\nConvert between Unicode code points and UTF-8, in both directions.\nCODE can be one or more characters (show U+XXXX), hex numbers\n(show character), or dash separated range."
+
+#define HELP_ascii "usage: ascii\n\nDisplay ascii character set."
+
+#define HELP_acpi "usage: acpi [-abctV]\n\nShow status of power sources and thermal devices.\n\n-a	Show power adapters\n-b	Show batteries\n-c	Show cooling device state\n-t	Show temperatures\n-V	Show everything"
+
+#define HELP_xzcat "usage: xzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_vi "usage: vi [-s SCRIPT] FILE\n\nVisual text editor. Predates keyboards with standardized cursor keys.\nIf you don't know how to use it, hit the ESC key, type :q! and press ENTER.\n\n-s	run SCRIPT of commands on FILE\n\nvi mode commands:\n\n  [count][cmd][motion]\n  cmd: c d y\n  motion: 0 b e G H h j k L l M w $ f F\n\n  [count][cmd]\n  cmd: D I J O n o p x dd yy\n\n  [cmd]\n  cmd: / ? : A a i CTRL_D CTRL_B CTRL_E CTRL_F CTRL_Y \\e \\b\n\nex mode commands:\n\n  [cmd]\n  \\b \\e \\n w wq q! 'set list' 'set nolist' d $ % g v"
+
+#define HELP_userdel "usage: userdel [-r] USER\nusage: deluser [-r] USER\n\nDelete USER from the SYSTEM\n\n-r	remove home directory"
+
+#define HELP_useradd "usage: useradd [-SDH] [-h DIR] [-s SHELL] [-G GRP] [-g NAME] [-u UID] USER [GROUP]\n\nCreate new user, or add USER to GROUP\n\n-D       Don't assign a password\n-g NAME  Real name\n-G GRP   Add user to existing group\n-h DIR   Home directory\n-H       Don't create home directory\n-s SHELL Login shell\n-S       Create a system user\n-u UID   User id"
+
+#define HELP_traceroute "usage: traceroute [-46FUIldnvr] [-f 1ST_TTL] [-m MAXTTL] [-p PORT] [-q PROBES]\n[-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-g GATEWAY] [-i IFACE] [-z PAUSE_MSEC] HOST [BYTES]\n\ntraceroute6 [-dnrv] [-m MAXTTL] [-p PORT] [-q PROBES][-s SRC_IP] [-t TOS] [-w WAIT_SEC]\n  [-i IFACE] HOST [BYTES]\n\nTrace the route to HOST\n\n-4,-6 Force IP or IPv6 name resolution\n-F    Set the don't fragment bit (supports IPV4 only)\n-U    Use UDP datagrams instead of ICMP ECHO (supports IPV4 only)\n-I    Use ICMP ECHO instead of UDP datagrams (supports IPV4 only)\n-l    Display the TTL value of the returned packet (supports IPV4 only)\n-d    Set SO_DEBUG options to socket\n-n    Print numeric addresses\n-v    verbose\n-r    Bypass routing tables, send directly to HOST\n-m    Max time-to-live (max number of hops)(RANGE 1 to 255)\n-p    Base UDP port number used in probes(default 33434)(RANGE 1 to 65535)\n-q    Number of probes per TTL (default 3)(RANGE 1 to 255)\n-s    IP address to use as the source address\n-t    Type-of-service in probe packets (default 0)(RANGE 0 to 255)\n-w    Time in seconds to wait for a response (default 3)(RANGE 0 to 86400)\n-g    Loose source route gateway (8 max) (supports IPV4 only)\n-z    Pause Time in ms (default 0)(RANGE 0 to 86400) (supports IPV4 only)\n-f    Start from the 1ST_TTL hop (instead from 1)(RANGE 1 to 255) (supports IPV4 only)\n-i    Specify a network interface to operate with"
+
+#define HELP_tr "usage: tr [-cdst] SET1 [SET2]\n\nTranslate, squeeze, or delete characters from stdin, writing to stdout\n\n-c/-C  Take complement of SET1\n-d     Delete input characters coded SET1\n-s     Squeeze multiple output characters of SET2 into one character\n-t     Truncate SET1 to length of SET2"
+
+#define HELP_tftpd "usage: tftpd [-cr] [-u USER] [DIR]\n\nTransfer file from/to tftp server.\n\n-r	read only\n-c	Allow file creation via upload\n-u	run as USER\n-l	Log to syslog (inetd mode requires this)"
+
+#define HELP_tftp "usage: tftp [OPTIONS] HOST [PORT]\n\nTransfer file from/to tftp server.\n\n-l FILE Local FILE\n-r FILE Remote FILE\n-g    Get file\n-p    Put file\n-b SIZE Transfer blocks of SIZE octets(8 <= SIZE <= 65464)"
+
+#define HELP_telnetd "Handle incoming telnet connections\n\n-l LOGIN  Exec LOGIN on connect\n-f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue\n-K Close connection as soon as login exits\n-p PORT   Port to listen on\n-b ADDR[:PORT]  Address to bind to\n-F Run in foreground\n-i Inetd mode\n-w SEC    Inetd 'wait' mode, linger time SEC\n-S Log to syslog (implied by -i or without -F and -w)"
+
+#define HELP_telnet "usage: telnet HOST [PORT]\n\nConnect to telnet server."
+
+#define HELP_tcpsvd "usage: tcpsvd [-hEv] [-c N] [-C N[:MSG]] [-b N] [-u User] [-l Name] IP Port Prog\nusage: udpsvd [-hEv] [-c N] [-u User] [-l Name] IP Port Prog\n\nCreate TCP/UDP socket, bind to IP:PORT and listen for incoming connection.\nRun PROG for each connection.\n\nIP            IP to listen on, 0 = all\nPORT          Port to listen on\nPROG ARGS     Program to run\n-l NAME       Local hostname (else looks up local hostname in DNS)\n-u USER[:GRP] Change to user/group after bind\n-c N          Handle up to N (> 0) connections simultaneously\n-b N          (TCP Only) Allow a backlog of approximately N TCP SYNs\n-C N[:MSG]    (TCP Only) Allow only up to N (> 0) connections from the same IP\n              New connections from this IP address are closed\n              immediately. MSG is written to the peer before close\n-h            Look up peer's hostname\n-E            Don't set up environment variables\n-v            Verbose"
+
+#define HELP_syslogd "usage: syslogd  [-a socket] [-O logfile] [-f config file] [-m interval]\n                [-p socket] [-s SIZE] [-b N] [-R HOST] [-l N] [-nSLKD]\n\nSystem logging utility\n\n-a      Extra unix socket for listen\n-O FILE Default log file <DEFAULT: /var/log/messages>\n-f FILE Config file <DEFAULT: /etc/syslog.conf>\n-p      Alternative unix domain socket <DEFAULT : /dev/log>\n-n      Avoid auto-backgrounding\n-S      Smaller output\n-m MARK interval <DEFAULT: 20 minutes> (RANGE: 0 to 71582787)\n-R HOST Log to IP or hostname on PORT (default PORT=514/UDP)\"\n-L      Log locally and via network (default is network only if -R)\"\n-s SIZE Max size (KB) before rotation (default:200KB, 0=off)\n-b N    rotated logs to keep (default:1, max=99, 0=purge)\n-K      Log to kernel printk buffer (use dmesg to read it)\n-l N    Log only messages more urgent than prio(default:8 max:8 min:1)\n-D      Drop duplicates"
+
+#define HELP_sulogin "usage: sulogin [-t time] [tty]\n\nSingle User Login.\n-t	Default Time for Single User Login"
+
+#define HELP_stty "usage: stty [-ag] [-F device] SETTING...\n\nGet/set terminal configuration.\n\n-F	Open device instead of stdin\n-a	Show all current settings (default differences from \"sane\")\n-g	Show all current settings usable as input to stty\n\nSpecial characters (syntax ^c or undef): intr quit erase kill eof eol eol2\nswtch start stop susp rprnt werase lnext discard\n\nControl/input/output/local settings as shown by -a, '-' prefix to disable\n\nCombo settings: cooked/raw, evenp/oddp/parity, nl, ek, sane\n\nN	set input and output speed (ispeed N or ospeed N for just one)\ncols N	set number of columns\nrows N	set number of rows\nline N	set line discipline\nmin N	set minimum chars per read\ntime N	set read timeout\nspeed	show speed only\nsize	show size only"
+
+#define HELP_strace "usage: strace [-fv] [-p PID] [-s NUM] COMMAND [ARGS...]\n\nTrace systems calls made by a process.\n\n-s	String length limit.\n-v	Dump all of large structs/arrays."
+
+#define HELP_wait "usage: wait [-n] [ID...]\n\nWait for background processes to exit, returning its exit code.\nID can be PID or job, with no IDs waits for all backgrounded processes.\n\n-n	Wait for next process to exit"
+
+#define HELP_source "usage: source FILE [ARGS...]\n\nRead FILE and execute commands. Any ARGS become positional parameters."
+
+#define HELP_shift "usage: shift [N]\n\nSkip N (default 1) positional parameters, moving $1 and friends along the list.\nDoes not affect $0."
+
+#define HELP_local "usage: local [NAME[=VALUE]...]\n\nCreate a local variable that lasts until return from this function.\nWith no arguments lists local variables in current function context.\nTODO: implement \"declare\" options."
+
+#define HELP_jobs "usage: jobs [-lnprs] [%JOB | -x COMMAND...]\n\nList running/stopped background jobs.\n\n-l Include process ID in list\n-n Show only new/changed processes\n-p Show process IDs only\n-r Show running processes\n-s Show stopped processes"
+
+#define HELP_export "usage: export [-n] [NAME[=VALUE]...]\n\nMake variables available to child processes. NAME exports existing local\nvariable(s), NAME=VALUE sets and exports.\n\n-n	Unexport. Turn listed variable(s) into local variables.\n\nWith no arguments list exported variables/attributes as \"declare\" statements."
+
+#define HELP_exec "usage: exec [-cl] [-a NAME] COMMAND...\n\n-a	set argv[0] to NAME\n-c	clear environment\n-l	prepend - to argv[0]"
+
+#define HELP_eval "usage: eval COMMAND...\n\nExecute (combined) arguments as a shell command."
+
+#define HELP_unset "usage: unset [-fvn] NAME...\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	dereference NAME and unset that"
+
+#define HELP_set "usage: set [+a] [+o OPTION] [VAR...]\n\nSet variables and shell attributes. Use + to disable and - to enable.\nNAME=VALUE arguments assign to the variable, any leftovers set $1, $2...\nWith no arguments, prints current variables.\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	don't follow name reference\n\nOPTIONs:\n  history - enable command history"
+
+#define HELP_exit "usage: exit [status]\n\nExit shell.  If no return value supplied on command line, use value\nof most recent command, or 0 if none."
+
+#define HELP_declare "usage: declare [-pAailunxr] [NAME...]\n\nSet or print variable attributes and values.\n\n-p	Print variables instead of setting\n-A	Associative array\n-a	Indexed array\n-i	Integer\n-l	Lower case\n-n	Name reference (symlink)\n-r	Readonly\n-u	Uppercase\n-x	Export"
+
+#define HELP_cd "usage: cd [-PL] [-] [path]\n\nChange current directory. With no arguments, go $HOME. Sets $OLDPWD to\nprevious directory: cd - to return to $OLDPWD.\n\n-P	Physical path: resolve symlinks in path\n-L	Local path: .. trims directories off $PWD (default)"
+
+#define HELP_sh "usage: sh [-c command] [script]\n\nCommand shell.  Runs a shell script, or reads input interactively\nand responds to it. Roughly compatible with \"bash\". Run \"help\" for\nlist of built-in commands.\n\n-c	command line to execute\n-i	interactive mode (default when STDIN is a tty)\n-s	don't run script (args set $* parameters but read commands from stdin)\n\nCommand shells parse each line of input (prompting when interactive), perform\nvariable expansion and redirection, execute commands (spawning child processes\nand background jobs), and perform flow control based on the return code.\n\nParsing:\n  syntax errors\n\nInteractive prompts:\n  line continuation\n\nVariable expansion:\n  Note: can cause syntax errors at runtime\n\nRedirection:\n  HERE documents (parsing)\n  Pipelines (flow control and job control)\n\nRunning commands:\n  process state\n  builtins\n    cd [[ ]] (( ))\n    ! : [ # TODO: help for these?\n    true false help echo kill printf pwd test\n  child processes\n\nJob control:\n  &    Background process\n  Ctrl-C kill process\n  Ctrl-Z suspend process\n  bg fg jobs kill\n\nFlow control:\n;    End statement (same as newline)\n&    Background process (returns true unless syntax error)\n&&   If this fails, next command fails without running\n||   If this succeeds, next command succeeds without running\n|    Pipelines! (Can of worms...)\nfor {name [in...]}|((;;)) do; BODY; done\nif TEST; then BODY; fi\nwhile TEST; do BODY; done\ncase a in X);; esac\n[[ TEST ]]\n((MATH))\n\nJob control:\n&    Background process\nCtrl-C kill process\nCtrl-Z suspend process\nbg fg jobs kill"
+
+#define HELP_route "usage: route [-ne] [-A [inet|inet6]] [add|del TARGET [OPTIONS]]\n\nDisplay, add or delete network routes in the \"Forwarding Information Base\",\nwhich send packets out a network interface to an address.\n\n-n	Show numerical addresses (no DNS lookups)\n-e	display netstat fields\n\nAssigning an address to an interface automatically creates an appropriate\nnetwork route (\"ifconfig eth0 10.0.2.15/8\" does \"route add 10.0.0.0/8 eth0\"\nfor you), although some devices (such as loopback) won't show it in the\ntable. For machines more than one hop away, you need to specify a gateway\n(ala \"route add default gw 10.0.2.2\").\n\nThe address \"default\" is a wildcard address (0.0.0.0/0) matching all\npackets without a more specific route.\n\nAvailable OPTIONS include:\nreject   - blocking route (force match failure)\ndev NAME - force matching packets out this interface (ala \"eth0\")\nnetmask  - old way of saying things like ADDR/24\ngw ADDR  - forward packets to gateway ADDR"
+
+#define HELP_more "usage: more [FILE...]\n\nView FILE(s) (or stdin) one screenfull at a time."
+
+#define HELP_modprobe "usage: modprobe [-alrqvsDb] [-d DIR] MODULE [symbol=value][...]\n\nmodprobe utility - inserts modules and dependencies.\n\n-a  Load multiple MODULEs\n-b  Apply blacklist to module names too\n-D  Show dependencies\n-d  Load modules from DIR, option may be used multiple times\n-l  List (MODULE is a pattern)\n-q  Quiet\n-r  Remove MODULE (stacks) or do autoclean\n-s  Log to syslog\n-v  Verbose"
+
+#define HELP_mke2fs_extended "usage: mke2fs [-E stride=###] [-O option[,option]]\n\n-E stride= Set RAID stripe size (in blocks)\n-O [opts]  Specify fewer ext2 option flags (for old kernels)\n           All of these are on by default (as appropriate)\n   none         Clear default options (all but journaling)\n   dir_index    Use htree indexes for large directories\n   filetype     Store file type info in directory entry\n   has_journal  Set by -j\n   journal_dev  Set by -J device=XXX\n   sparse_super Don't allocate huge numbers of redundant superblocks"
+
+#define HELP_mke2fs_label "usage: mke2fs [-L label] [-M path] [-o string]\n\n-L         Volume label\n-M         Path to mount point\n-o         Created by"
+
+#define HELP_mke2fs_gen "usage: gene2fs [options] device filename\n\nThe [options] are the same as mke2fs."
+
+#define HELP_mke2fs_journal "usage: mke2fs [-j] [-J size=###,device=XXX]\n\n-j         Create journal (ext3)\n-J         Journal options\n           size: Number of blocks (1024-102400)\n           device: Specify an external journal"
+
+#define HELP_mke2fs "usage: mke2fs [-Fnq] [-b ###] [-N|i ###] [-m ###] device\n\nCreate an ext2 filesystem on a block device or filesystem image.\n\n-F         Force to run on a mounted device\n-n         Don't write to device\n-q         Quiet (no output)\n-b size    Block size (1024, 2048, or 4096)\n-N inodes  Allocate this many inodes\n-i bytes   Allocate one inode for every XXX bytes of device\n-m percent Reserve this percent of filesystem space for root user"
+
+#define HELP_mdev_conf "The mdev config file (/etc/mdev.conf) contains lines that look like:\nhd[a-z][0-9]* 0:3 660\n(sd[a-z]) root:disk 660 =usb_storage\n\nEach line must contain three whitespace separated fields. The first\nfield is a regular expression matching one or more device names,\nthe second and third fields are uid:gid and file permissions for\nmatching devices. Fourth field is optional. It could be used to change\ndevice name (prefix '='), path (prefix '=' and postfix '/') or create a\nsymlink (prefix '>')."
+
+#define HELP_mdev "usage: mdev [-s]\n\nCreate devices in /dev using information from /sys.\n\n-s	Scan all entries in /sys to populate /dev"
+
+#define HELP_man "usage: man [-M PATH] [-k STRING] | [SECTION] COMMAND\n\nRead manual page for system command.\n\n-k	List pages with STRING in their short description\n-M	Override $MANPATH\n\nMan pages are divided into 8 sections:\n1 commands      2 system calls  3 library functions  4 /dev files\n5 file formats  6 games         7 miscellaneous      8 system management\n\nSections are searched in the order 1 8 3 2 5 4 6 7 unless you specify a\nsection. Each section has a page called \"intro\", and there's a global\nintroduction under \"man-pages\"."
+
+#define HELP_lsof "usage: lsof [-lt] [-p PID1,PID2,...] [FILE...]\n\nList all open files belonging to all active processes, or processes using\nlisted FILE(s).\n\n-l	list uids numerically\n-p	for given comma-separated pids only (default all pids)\n-t	terse (pid only) output"
+
+#define HELP_last "usage: last [-W] [-f FILE]\n\nShow listing of last logged in users.\n\n-W      Display the information without host-column truncation\n-f FILE Read from file FILE instead of /var/log/wtmp"
+
+#define HELP_klogd "usage: klogd [-n] [-c N]\n\n-c  N   Print to console messages more urgent than prio N (1-8)\"\n-n    Run in foreground"
+
+#define HELP_ipcs "usage: ipcs [[-smq] -i shmid] | [[-asmq] [-tcplu]]\n\n-i Show specific resource\nResource specification:\n-a All (default)\n-m Shared memory segments\n-q Message queues\n-s Semaphore arrays\nOutput format:\n-c Creator\n-l Limits\n-p Pid\n-t Time\n-u Summary"
+
+#define HELP_ipcrm "usage: ipcrm [ [-q msqid] [-m shmid] [-s semid]\n          [-Q msgkey] [-M shmkey] [-S semkey] ... ]\n\n-mM Remove memory segment after last detach\n-qQ Remove message queue\n-sS Remove semaphore"
+
+#define HELP_ip "usage: ip [ OPTIONS ] OBJECT { COMMAND }\n\nShow / manipulate routing, devices, policy routing and tunnels.\n\nwhere OBJECT := {address | link | route | rule | tunnel}\nOPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }"
+
+#define HELP_init "usage: init\n\nSystem V style init.\n\nFirst program to run (as PID 1) when the system comes up, reading\n/etc/inittab to determine actions."
+
+#define HELP_hd "usage: hd [FILE...]\n\nDisplay file(s) in cannonical hex+ASCII format."
+
+#define HELP_hexdump "usage: hexdump [-bcCdovx] [-n LEN] [-s SKIP] [FILE...]\n\nDump file(s) in hexadecimal format.\n\n-n LEN	Show LEN bytes of output\n-s SKIP	Skip bytes of input\n-v	Verbose (don't combine identical lines)\n\nDisplay type:\n-b One byte octal   -c One byte character -C Canonical (hex + ASCII)\n-d Two byte decimal -o Two byte octal     -x Two byte hexadecimal (default)"
+
+#define HELP_groupdel "usage: groupdel [USER] GROUP\n\nDelete a group or remove a user from a group"
+
+#define HELP_groupadd "usage: groupadd [-S] [-g GID] [USER] GROUP\n\nAdd a user to a group, or create a new group.\n\n-g GID	Group id\n-R	Operate within chroot\n-S	Create a system group"
+
+#define HELP_gitcheckout "usage: gitcheckout <branch>\nA minimal git checkout."
+
+#define HELP_gitfetch "usage: gitfetch\nA minimal git fetch."
+
+#define HELP_gitremote "usage: gitremote URL\nA minimal git remote add origin."
+
+#define HELP_gitinit "usage: gitinit NAME\nA minimal git init."
+
+#define HELP_gitclone "usage: gitclone URL\nA minimal git clone."
+
+#define HELP_gitcompat "Enable git compatible repos instead of minimal clone downloader."
+
+#define HELP_getty "usage: getty [OPTIONS] BAUD_RATE[,BAUD_RATE]... TTY [TERMTYPE]\n\nWait for a modem to dial into serial port, adjust baud rate, call login.\n\n-h    Enable hardware RTS/CTS flow control\n-L    Set CLOCAL (ignore Carrier Detect state)\n-m    Get baud rate from modem's CONNECT status message\n-n    Don't prompt for login name\n-w    Wait for CR or LF before sending /etc/issue\n-i    Don't display /etc/issue\n-f ISSUE_FILE  Display ISSUE_FILE instead of /etc/issue\n-l LOGIN  Invoke LOGIN instead of /bin/login\n-t SEC    Terminate after SEC if no login name is read\n-I INITSTR  Send INITSTR before anything else\n-H HOST    Log HOST into the utmp file as the hostname"
+
+#define HELP_getfattr "usage: getfattr [-d] [-h] [-n NAME] FILE...\n\nRead POSIX extended attributes.\n\n-d	Show values as well as names\n-h	Do not dereference symbolic links\n-n	Show only attributes with the given name\n--only-values	Don't show names"
+
+#define HELP_fsck "usage: fsck [-ANPRTV] [-C FD] [-t FSTYPE] [FS_OPTS] [BLOCKDEV]...\n\nCheck and repair filesystems\n\n-A      Walk /etc/fstab and check all filesystems\n-N      Don't execute, just show what would be done\n-P      With -A, check filesystems in parallel\n-R      With -A, skip the root filesystem\n-T      Don't show title on startup\n-V      Verbose\n-C n    Write status information to specified file descriptor\n-t TYPE List of filesystem types to check"
+
+#define HELP_fdisk "usage: fdisk [-lu] [-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SECTSZ] DISK\n\nChange partition table\n\n-u            Start and End are in sectors (instead of cylinders)\n-l            Show partition table for each DISK, then exit\n-b size       sector size (512, 1024, 2048 or 4096)\n-C CYLINDERS  Set number of cylinders/heads/sectors\n-H HEADS\n-S SECTORS"
+
+#define HELP_expr "usage: expr ARG1 OPERATOR ARG2...\n\nEvaluate expression and print result. For example, \"expr 1 + 2\" prints \"3\".\n\nThe supported operators are (grouped from highest to lowest priority):\n\n  ( )    :    * / %    + -    != <= < >= > =    &    |\n\nEach constant and operator must be a separate command line argument.\nAll operators are infix, requiring a value on each side of the operator.\nOperators of the same priority are evaluated left to right. Parentheses\nelevate the priority of expression they contain. The & and | operators\nare logical (not bitwise).\n\nAll operators yield integers, and most operators expect integer arguments.\nComparisons may alphabetically compare strings, logical operators treat a\nblank string as false and nonblank as true, and the regex operator\n(str : pattern) yields the initial number of matching bytes. (So\n\"abc : ab\" is 2, but \"abc : bc\" is 0.)\n\nCalling expr from a command shell requires a lot of \\( or '*' escaping\nto avoid interpreting shell control characters, vs the shell's \"$((1+6/3))\"."
+
+#define HELP_dumpleases "usage: dumpleases [-r|-a] [-f LEASEFILE]\n\nDisplay DHCP leases granted by udhcpd\n-f FILE,  Lease file\n-r        Show remaining time\n-a        Show expiration time"
+
+#define HELP_diff "usage: diff [-abBdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] [-F REGEX ] FILE1 FILE2\n\n-a	Treat all files as text\n-b	Ignore changes in the amount of whitespace\n-B	Ignore changes whose lines are all blank\n-d	Try hard to find a smaller set of changes\n-F 	Show the most recent line matching the regex\n-i	Ignore case differences\n-L	Use LABEL instead of the filename in the unified header\n-N	Treat absent files as empty\n-q	Output only whether files differ\n-r	Recurse\n-S	Start with FILE when comparing directories\n-s	Report when two files are the same\n-T	Make tabs line up by prefixing a tab when necessary\n-t	Expand tabs to spaces in output\n-u	Unified diff\n-U	Output LINES lines of context\n-w	Ignore all whitespace\n\n--color     Color output   --strip-trailing-cr   Strip '\\r' from input lines\n--TYPE-line-format=FORMAT  Display TYPE (unchanged/old/new) lines using FORMAT\n  FORMAT uses printf integer escapes (ala %-2.4x) followed by LETTER: FELMNn\nSupported format specifiers are:\n* %l, the contents of the line, without the trailing newline\n* %L, the contents of the line, including the trailing newline\n* %%, the character '%'"
+
+#define HELP_dhcpd "usage: dhcpd [-46fS] [-i IFACE] [-P N] [CONFFILE]\n\n -f    Run in foreground\n -i Interface to use\n -S    Log to syslog too\n -P N  Use port N (default ipv4 67, ipv6 547)\n -4, -6    Run as a DHCPv4 or DHCPv6 server"
+
+#define HELP_dhcp6 "usage: dhcp6 [-fbnqvR] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n\n      Configure network dynamically using DHCP.\n\n    -i Interface to use (default eth0)\n    -p Create pidfile\n    -s Run PROG at DHCP events\n    -t Send up to N Solicit packets\n    -T Pause between packets (default 3 seconds)\n    -A Wait N seconds after failure (default 20)\n    -f Run in foreground\n    -b Background if lease is not obtained\n    -n Exit if lease is not obtained\n    -q Exit after obtaining lease\n    -R Release IP on exit\n    -S Log to syslog too\n    -r Request this IP address\n    -v Verbose\n\n    Signals:\n    USR1  Renew current lease\n    USR2  Release current lease"
+
+#define HELP_dhcp "usage: dhcp [-fbnqvoCRB] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n            [-H HOSTNAME] [-V VENDOR] [-x OPT:VAL] [-O OPT]\n\n     Configure network dynamically using DHCP.\n\n   -i Interface to use (default eth0)\n   -p Create pidfile\n   -s Run PROG at DHCP events (default /usr/share/dhcp/default.script)\n   -B Request broadcast replies\n   -t Send up to N discover packets\n   -T Pause between packets (default 3 seconds)\n   -A Wait N seconds after failure (default 20)\n   -f Run in foreground\n   -b Background if lease is not obtained\n   -n Exit if lease is not obtained\n   -q Exit after obtaining lease\n   -R Release IP on exit\n   -S Log to syslog too\n   -a Use arping to validate offered address\n   -O Request option OPT from server (cumulative)\n   -o Don't request any options (unless -O is given)\n   -r Request this IP address\n   -x OPT:VAL  Include option OPT in sent packets (cumulative)\n   -F Ask server to update DNS mapping for NAME\n   -H Send NAME as client hostname (default none)\n   -V VENDOR Vendor identifier (default 'toybox VERSION')\n   -C Don't send MAC as client identifier\n   -v Verbose\n\n   Signals:\n   USR1  Renew current lease\n   USR2  Release current lease"
+
+#define HELP_csplit "usage: csplit [-ks] [-f PREFIX] [-n INTEGER] file arg...\n\nSplit files into multiple files based on list of rules\n\n-k	Does not delete Files on error\n-s	No file output size messages\n-f [PREFIX] Use [PREFIX] as filename prefix instead of \"xx\"\n-n [INTEGER] Make all filename numbers [INTEGER] characters long\n\nValid Rules:\n/regexp/[INTEGER] Break file before line that regexp matches,\n%regexp%[INTEGER] Exclude untill line matches regexp\nIf a offset is specified for these rules, the break will happen [INTEGER]\nlines after the regexp match\nif a offset is specified, it will break at [INTEGER] lines after the offset\n[INTEGER] Break file at line before [INTEGER]\n{INTEGER} Repeat Previous Pattern INTEGER Number of times if INTEGER is *\nThe pattern repeats forever"
+
+#define HELP_crontab "usage: crontab [-u user] FILE\n               [-u user] [-e | -l | -r]\n               [-c dir]\n\nFiles used to schedule the execution of programs.\n\n-c crontab dir\n-e edit user's crontab\n-l list user's crontab\n-r delete user's crontab\n-u user\nFILE Replace crontab by FILE ('-': stdin)"
+
+#define HELP_crond "usage: crond [-fbS] [-l N] [-d N] [-L LOGFILE] [-c DIR]\n\nA daemon to execute scheduled commands.\n\n-b Background (default)\n-c crontab dir\n-d Set log level, log to stderr\n-f Foreground\n-l Set log level. 0 is the most verbose, default 8\n-S Log to syslog (default)\n-L Log to file"
+
+#define HELP_chsh "usage: chsh [-s SHELL] [-R CHROOT_DIR] [USER]\n\nChange user's login shell.\n\n-s	Use SHELL instead of prompting\n-R	Act on CHROOT_DIR instead of host\n\nNon-root users can only change their own shell to one listed in /etc/shells."
+
+#define HELP_brctl "usage: brctl COMMAND [BRIDGE [INTERFACE]]\n\nManage ethernet bridges\n\nCommands:\nshow                  Show a list of bridges\naddbr BRIDGE          Create BRIDGE\ndelbr BRIDGE          Delete BRIDGE\naddif BRIDGE IFACE    Add IFACE to BRIDGE\ndelif BRIDGE IFACE    Delete IFACE from BRIDGE\nsetageing BRIDGE TIME Set ageing time\nsetfd BRIDGE TIME     Set bridge forward delay\nsethello BRIDGE TIME  Set hello time\nsetmaxage BRIDGE TIME Set max message age\nsetpathcost BRIDGE PORT COST   Set path cost\nsetportprio BRIDGE PORT PRIO   Set port priority\nsetbridgeprio BRIDGE PRIO      Set bridge priority\nstp BRIDGE [1/yes/on|0/no/off] STP on/off"
+
+#define HELP_bootchartd "usage: bootchartd {start [PROG ARGS]}|stop|init\n\nRecord boot chart data into /var/log/bootlog.tgz\n\nstart: start background logging; with PROG, run PROG,\n       then kill logging with SIGUSR1\nstop:  send SIGUSR1 to all bootchartd processes\ninit:  start background logging; stop when getty/xdm is seen\n      (for init scripts)\n\nUnder PID 1: as init, then exec $bootchart_init, /init, /sbin/init"
+
+#define HELP_bc "usage: bc [-ilqsw] [file ...]\n\nbc is a command-line calculator with a Turing-complete language.\n\noptions:\n\n  -i  --interactive  force interactive mode\n  -l  --mathlib      use predefined math routines:\n\n                     s(expr)  =  sine of expr in radians\n                     c(expr)  =  cosine of expr in radians\n                     a(expr)  =  arctangent of expr, returning radians\n                     l(expr)  =  natural log of expr\n                     e(expr)  =  raises e to the power of expr\n                     j(n, x)  =  Bessel function of integer order n of x\n\n  -q  --quiet        don't print version and copyright\n  -s  --standard     error if any non-POSIX extensions are used\n  -w  --warn         warn if any non-POSIX extensions are used"
+
+#define HELP_arping "usage: arping [-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP\n\nSend ARP requests/replies\n\n-f         Quit on first ARP reply\n-q         Quiet\n-b         Keep broadcasting, don't go unicast\n-D         Duplicated address detection mode\n-U         Unsolicited ARP mode, update your neighbors\n-A         ARP answer mode, update your neighbors\n-c N       Stop after sending N ARP requests\n-w TIMEOUT Time to wait for ARP reply, seconds\n-I IFACE   Interface to use (default eth0)\n-s SRC_IP  Sender IP address\nDST_IP     Target IP address"
+
+#define HELP_arp "usage: arp\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]\n[-v]              [-i IF] -d HOSTNAME [pub]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub\n[-v]  [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub\n\nManipulate ARP cache.\n\n-a	Display (all) hosts\n-s	Set new ARP entry\n-d	Delete a specified entry\n-v	Verbose\n-n	Don't resolve names\n-i IFACE	Network interface\n-D	Read <hwaddr> from given device\n-A,-p AF	Protocol family\n-H HWTYPE	Hardware address type"
+
+#define HELP_xargs "usage: xargs [-0Pprt] [-snE STR] COMMAND...\n\nRun command line one or more times, appending arguments from stdin.\n\nIf COMMAND exits with 255, don't launch another even if arguments remain.\n\n-0	Each argument is NULL terminated, no whitespace or quote processing\n-E	Stop at line matching string\n-n	Max number of arguments per command\n-o	Open tty for COMMAND's stdin (default /dev/null)\n-P	Parallel processes (default 1)\n-p	Prompt for y/n from tty before running each command\n-r	Don't run with empty input (otherwise always run command once)\n-s	Size in bytes per command line\n-t	Trace, print command line to stderr"
+
+#define HELP_who "usage: who\n\nPrint information about logged in users."
+
+#define HELP_wc "usage: wc [-Llwcm] [FILE...]\n\nCount lines, words, and characters in input.\n\n-L	Show max line length\n-l	Show lines\n-w	Show words\n-c	Show bytes\n-m	Show characters\n\nBy default outputs lines, words, bytes, and filename for each\nargument (or from stdin if none). Displays only either bytes\nor characters."
+
+#define HELP_uuencode "usage: uuencode [-m] [INFILE] ENCODE_FILENAME\n\nUuencode stdin (or INFILE) to stdout, with ENCODE_FILENAME in the output.\n\n-m	Base64"
+
+#define HELP_uudecode "usage: uudecode [-o OUTFILE] [INFILE]\n\nDecode file from stdin (or INFILE).\n\n-o	Write to OUTFILE instead of filename in header"
+
+#define HELP_unlink "usage: unlink FILE\n\nDelete one file."
+
+#define HELP_uniq "usage: uniq [-cduiz] [-w MAXCHARS] [-f FIELDS] [-s CHAR] [INFILE [OUTFILE]]\n\nReport or filter out repeated lines in a file\n\n-c	Show counts before each line\n-d	Show only lines that are repeated\n-u	Show only lines that are unique\n-i	Ignore case when comparing lines\n-z	Lines end with \\0 not \\n\n-w	Compare maximum X chars per line\n-f	Ignore first X fields\n-s	Ignore first X chars"
+
+#define HELP_uname "usage: uname [-asnrvmo]\n\nPrint system information.\n\n-s	System name\n-n	Network (domain) name\n-r	Kernel Release number\n-v	Kernel Version\n-m	Machine (hardware) name\n-a	All of the above (in order)\n\n-o	Userspace type"
+
+#define HELP_arch "usage: arch\n\nPrint machine (hardware) name, same as uname -m."
+
+#define HELP_ulimit "usage: ulimit [-P PID] [-SHRacdefilmnpqrstuv] [LIMIT]\n\nPrint or set resource limits for process number PID. If no LIMIT specified\n(or read-only -ap selected) display current value (sizes in bytes).\nDefault is ulimit -P $PPID -Sf\" (show soft filesize of your shell).\n\n-P  PID to affect (default $PPID)  -a  Show all limits\n-S  Set/show soft limit            -H  Set/show hard (maximum) limit\n\n-c  Core file size (blocks)        -d  Process data segment (KiB)\n-e  Max scheduling priority        -f  File size (KiB)\n-i  Pending signal count           -l  Locked memory (KiB)\n-m  Resident Set Size (KiB)        -n  Number of open files\n-p  Pipe buffer (512 bytes)        -q  POSIX message queues\n-r  Max realtime priority          -R  Realtime latency (us)\n-s  Stack size (KiB)               -t  Total CPU time (s)\n-u  Maximum processes (this UID)   -v  Virtual memory size (KiB)"
+
+#define HELP_tty "usage: tty [-s]\n\nShow filename of terminal connected to stdin. If none print \"not a tty\"\nand exit with nonzero status.\n\n-s	Silent, exit code only"
+
+#define HELP_tsort "usage: tsort [FILE]\n\nTopological sort dependency resolver.\n\nRead pairs of input strings indicating before/after dependency relationships\nand find an ordering that respects all dependencies. On success output each\nstring once to stdout, on failure print error and output cycle pairs."
+
+#define HELP_true "usage: true\n\nReturn zero."
+
+#define HELP_touch "usage: touch [-amch] [-d DATE] [-t TIME] [-r FILE] FILE...\n\nUpdate the access and modification times of each FILE to the current time.\n\n-a	Change access time\n-m	Change modification time\n-c	Don't create file\n-h	Change symlink\n-d	Set time to DATE (in YYYY-MM-DDThh:mm:SS[.frac][tz] format)\n-t	Set time to TIME (in [[CC]YY]MMDDhhmm[.ss][frac] format)\n-r	Set time same as reference FILE"
+
+#define HELP_time "usage: time [-pv] COMMAND...\n\nRun command line and report real, user, and system time elapsed in seconds.\n(real = clock on the wall, user = cpu used by command's code,\nsystem = cpu used by OS on behalf of command.)\n\n-p	POSIX format output\n-v	Verbose"
+
+#define HELP_test "usage: test [-bcdefghkLprSsuwx PATH] [-nz STRING] [-t FD] [X ?? Y]\n\nReturn true or false by performing tests. No arguments is false, one argument\nis true if not empty string.\n\n--- Tests with a single argument (after the option):\nPATH is/has:\n  -b  block device   -f  regular file   -p  fifo           -u  setuid bit\n  -c  char device    -g  setgid         -r  readable       -w  writable\n  -d  directory      -h  symlink        -S  socket         -x  executable\n  -e  exists         -L  symlink        -s  nonzero size   -k  sticky bit\nSTRING is:\n  -n  nonzero size   -z  zero size\nFD (integer file descriptor) is:\n  -t  a TTY\n\n--- Tests with one argument on each side of an operator:\nTwo strings:\n  =  are identical   !=  differ         =~  string matches regex\nAlphabetical sort:\n  <  first is lower  >   first higher\nTwo integers:\n  -eq  equal         -gt  first > second    -lt  first < second\n  -ne  not equal     -ge  first >= second   -le  first <= second\n\n--- Modify or combine tests:\n  ! EXPR     not (swap true/false)   EXPR -a EXPR    and (are both true)\n  ( EXPR )   evaluate this first     EXPR -o EXPR    or (is either true)"
+
+#define HELP_tee "usage: tee [-ai] [FILE...]\n\nCopy stdin to each listed file, and also to stdout.\nFilename \"-\" is a synonym for stdout.\n\n-a	Append to files\n-i	Ignore SIGINT"
+
+#define HELP_tar "usage: tar [-cxt] [-fvohmjkOS] [-XTCf NAME] [--selinux] [FILE...]\n\nCreate, extract, or list files in a .tar (or compressed t?z) file.\n\nOptions:\nc  Create                x  Extract               t  Test (list)\nf  tar FILE (default -)  C  Change to DIR first   v  Verbose display\nJ  xz compression        j  bzip2 compression     z  gzip compression\no  Ignore owner          h  Follow symlinks       m  Ignore mtime\nO  Extract to stdout     X  exclude names in FILE T  include names in FILE\ns  Sort dirs (--sort)\n\n--exclude        FILENAME to exclude  --full-time         Show seconds with -tv\n--mode MODE      Adjust permissions   --owner NAME[:UID]  Set file ownership\n--mtime TIME     Override timestamps  --group NAME[:GID]  Set file group\n--sparse         Record sparse files  --selinux           Save/restore labels\n--restrict       All under one dir    --no-recursion      Skip dir contents\n--numeric-owner  Use numeric uid/gid, not user/group names\n--null           Filenames in -T FILE are null-separated, not newline\n--strip-components NUM  Ignore first NUM directory components when extracting\n--xform=SED      Modify filenames via SED expression (ala s/find/replace/g)\n-I PROG          Filter through PROG to compress or PROG -d to decompress\n\nFilename filter types. Create command line args aren't filtered, extract\ndefaults to --anchored, --exclude defaults to --wildcards-match-slash,\nuse no- prefix to disable:\n\n--anchored  Match name not path       --ignore-case       Case insensitive\n--wildcards Expand *?[] like shell    --wildcards-match-slash"
+
+#define HELP_tail "usage: tail [-n|c NUMBER] [-f|F] [-s SECONDS] [FILE...]\n\nCopy last lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Output the last NUMBER lines (default 10), +X counts from start\n-c	Output the last NUMBER bytes, +NUMBER counts from start\n-f	Follow FILE(s) by descriptor, waiting for more data to be appended\n-F	Follow FILE(s) by filename, waiting for more data, and retrying\n-s	Used with -F, sleep SECONDS between retries (default 1)"
+
+#define HELP_strings "usage: strings [-fo] [-t oxd] [-n LEN] [FILE...]\n\nDisplay printable strings in a binary file\n\n-f	Show filename\n-n	At least LEN characters form a string (default 4)\n-o	Show offset (ala -t d)\n-t	Show offset type (o=octal, d=decimal, x=hexadecimal)"
+
+#define HELP_split "usage: split [-a SUFFIX_LEN] [-b BYTES] [-l LINES] [-n PARTS] [INPUT [OUTPUT]]\n\nCopy INPUT (or stdin) data to a series of OUTPUT (or \"x\") files with\nalphabetically increasing suffix (aa, ab, ac... az, ba, bb...).\n\n-a	Suffix length (default 2)\n-b	BYTES/file (10, 10k, 10m, 10g...)\n-l	LINES/file (default 1000)\n-n	PARTS many equal length files"
+
+#define HELP_sort "usage: sort [-CMVbcdfginrsuxz] [FILE...] [-k#[,#[x]] [-t X]] [-o FILE]\n\nSort all lines of text from input files (or stdin) to stdout.\n-g	General numeric sort (double precision with nan and inf)\n-n	Numeric order (instead of alphabetical)\n-r	Reverse\n-u	Unique lines only\n\n-b	Ignore leading blanks (or trailing blanks in second part of key)\n-C	Check whether input is sorted\n-c	Warn if input is unsorted\n-d	Dictionary order (use alphanumeric and whitespace chars only)\n-f	Force uppercase (case insensitive sort)\n-i	Ignore nonprinting characters\n-k	Sort by \"key\" (see below)\n-M	Month sort (jan, feb, etc)\n-o	Output to FILE instead of stdout\n-s	Skip fallback sort (only sort with keys)\n-t	Use a key separator other than whitespace\n-x	Hexadecimal numerical sort\n-V	Version numbers (name-1.234-rc6.5b.tgz)\n-z	Zero (null) terminated lines\n\nSorting by key looks at a subset of the words on each line. -k2 uses the\nsecond word to the end of the line, -k2,2 looks at only the second word,\n-k2,4 looks from the start of the second to the end of the fourth word.\n-k2.4,5 starts from the fourth character of the second word, to the end\nof the fifth word. Negative values count from the end. Specifying multiple\nkeys uses the later keys as tie breakers, in order. A type specifier\nappended to a sort key (such as -2,2n) applies only to sorting that key."
+
+#define HELP_sleep "usage: sleep DURATION...\n\nWait before exiting.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default)."
+
+#define HELP_sed "usage: sed [-inrszE] [-e SCRIPT]...|SCRIPT [-f SCRIPT_FILE]... [FILE...]\n\nStream editor. Apply editing SCRIPTs to lines of input.\n\n-e	Add SCRIPT to list\n-f	Add contents of SCRIPT_FILE to list\n-i	Edit each file in place (-iEXT keeps backup file with extension EXT)\n-n	No default output (use the p command to output matched lines)\n-r	Use extended regular expression syntax\n-E	POSIX alias for -r\n-s	Treat input files separately (implied by -i)\n-z	Use \\0 rather than \\n as input line separator\n\nA SCRIPT is one or more COMMANDs separated by newlines or semicolons.\nAll -e SCRIPTs and -f SCRIPT_FILE contents are combined in order as if\nseparated by newlines. If no -e or -f then first argument is the SCRIPT.\n\nCOMMANDs apply to every line unless prefixed with an ADDRESS of the form:\n\n  [ADDRESS[,ADDRESS]][!]COMMAND\n\nADDRESS is a line number (starting at 1), a /REGULAR EXPRESSION/, or $ for\nlast line (-s or -i makes it last line of each file). One address matches one\nline, ADDRESS,ADDRESS matches from first to second inclusive. Two regexes can\nmatch multiple ranges. ADDRESS,+N ends N lines later. ! inverts the match.\n\nREGULAR EXPRESSIONS start and end with the same character (anything but\nbackslash or newline). To use the delimiter in the regex escape it with a\nbackslash, and printf escapes (\\abcefnrtv and octal, hex, and unicode) work.\nAn empty regex repeats the previous one. ADDRESS regexes require any\nfirst delimiter except / to be \\escaped to distinguish it from COMMANDs.\n\nSed reads each line of input, processes it, and writes it out or discards it\nbefore reading the next. Sed can remember one additional line in a separate\nbuffer (the h, H, g, G, and x commands), and can read the next line of input\nearly (the n and N commands), but otherwise operates on individual lines.\n\nEach COMMAND starts with a single character. Commands with no arguments are:\n\n  !  Run this command when the ADDRESS _didn't_ match.\n  {  Start new command block, continuing until a corresponding \"}\".\n     Command blocks nest and can have ADDRESSes applying to the whole block.\n  }  End command block (this COMMAND cannot have an address)\n  d  Delete this line and move on to the next one\n     (ignores remaining COMMANDs)\n  D  Delete one line of input and restart command SCRIPT (same as \"d\"\n     unless you've glued lines together with \"N\" or similar)\n  g  Get remembered line (overwriting current line)\n  G  Get remembered line (appending to current line)\n  h  Remember this line (overwriting remembered line)\n  H  Remember this line (appending to remembered line, if any)\n  l  Print line escaping \\abfrtvn, octal escape other nonprintng chars,\n     wrap lines to terminal width with \\, append $ to end of line.\n  n  Print default output and read next line over current line (quit at EOF)\n  N  Append \\n and next line of input to this line. Quit at EOF without\n     default output. Advances line counter for ADDRESS and \"=\".\n  p  Print this line\n  P  Print this line up to first newline (from \"N\")\n  q  Quit (print default output, no more commands processed or lines read)\n  x  Exchange this line with remembered line (overwrite in both directions)\n  =  Print the current line number (plus newline)\n  #  Comment, ignores rest of this line of SCRIPT (until newline)\n\nCommands that take an argument:\n\n  : LABEL    Target for jump commands\n  a TEXT     Append text to output before reading next line\n  b LABEL    Branch, jumps to :LABEL (with no LABEL to end of SCRIPT)\n  c TEXT     Delete matching ADDRESS range and output TEXT instead\n  i TEXT     Insert text (output immediately)\n  r FILE     Append contents of FILE to output before reading next line.\n  s/S/R/F    Search for regex S replace match with R using flags F. Delimiter\n             is anything but \\n or \\, escape with \\ to use in S or R. Printf\n             escapes work. Unescaped & in R becomes full matched text, \\1\n             through \\9 = parenthetical subexpression from S. \\ at end of\n             line appends next line of SCRIPT. The flags in F are:\n             [0-9]    A number N, substitute only Nth match\n             g        Global, substitute all matches\n             i/I      Ignore case when matching\n             p        Print resulting line when match found and replaced\n             w [file] Write (append) line to file when match replaced\n  t LABEL    Test, jump if s/// command matched this line since last test\n  T LABEL    Test false, jump to :LABEL only if no s/// found a match\n  w FILE     Write (append) line to file\n  y/old/new/ Change each character in 'old' to corresponding character\n             in 'new' (with standard backslash escapes, delimiter can be\n             any repeated character except \\ or \\n)\n\nThe TEXT arguments (to a c i) may end with an unescaped \"\\\" to append\nthe next line (leading whitespace is not skipped), and treat \";\" as a\nliteral character (use \"\\;\" instead)."
+
+#define HELP_rmdir "usage: rmdir [-p] [DIR...]\n\nRemove one or more directories.\n\n-p	Remove path\n--ignore-fail-on-non-empty	Ignore failures caused by non-empty directories"
+
+#define HELP_rm "usage: rm [-fiRrv] FILE...\n\nRemove each argument from the filesystem.\n\n-f	Force: remove without confirmation, no error if it doesn't exist\n-i	Interactive: prompt for confirmation\n-rR	Recursive: remove directory contents\n-v	Verbose"
+
+#define HELP_renice "usage: renice [-gpu] -n INCREMENT ID...\n\n-g	Group ids\n-p	Process ids (default)\n-u	User ids"
+
+#define HELP_pwd "usage: pwd [-L|-P]\n\nPrint working (current) directory.\n\n-L	Use shell's path from $PWD (when applicable)\n-P	Print canonical absolute path"
+
+#define HELP_pkill "usage: pkill [-fnovx] [-SIGNAL|-l SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\n-l	Send SIGNAL (default SIGTERM)\n-V	Verbose\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_pgrep "usage: pgrep [-clfnovx] [-d DELIM] [-L SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\nSearch for process(es). PATTERN is an extended regular expression checked\nagainst command names.\n\n-c	Show only count of matches\n-d	Use DELIM instead of newline\n-L	Send SIGNAL instead of printing name\n-l	Show command name\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_iotop "usage: iotop [-AaKObq] [-n NUMBER] [-d SECONDS] [-p PID,] [-u USER,]\n\nRank processes by I/O.\n\n-A	All I/O, not just disk\n-a	Accumulated I/O (not percentage)\n-H	Show threads\n-K	Kilobytes\n-k	Fallback sort FIELDS (default -[D]IO,-ETIME,-PID)\n-m	Maximum number of tasks to show\n-O	Only show processes doing I/O\n-o	Show FIELDS (default PID,PR,USER,[D]READ,[D]WRITE,SWAP,[D]IO,COMM)\n-s	Sort by field number (0-X, default 6)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor LEFT/RIGHT to change sort, UP/DOWN move list, space to force\nupdate, R to reverse sort, Q to exit."
+
+#define HELP_top "usage: top [-Hhbq] [-k FIELD,] [-o FIELD,] [-s SORT] [-n NUMBER] [-m LINES] [-d SECONDS] [-p PID,] [-u USER,]\n\nShow process activity in real time.\n\n-H	Show threads\n-h	Usage graphs instead of text\n-k	Fallback sort FIELDS (default -S,-%CPU,-ETIME,-PID)\n-o	Show FIELDS (def PID,USER,PR,NI,VIRT,RES,SHR,S,%CPU,%MEM,TIME+,CMDLINE)\n-O	Add FIELDS (replacing PR,NI,VIRT,RES,SHR,S from default)\n-s	Sort by field number (1-X, default 9)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-m	Maximum number of tasks to show\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor UP/DOWN or LEFT/RIGHT to move list, SHIFT LEFT/RIGHT to change sort,\nspace to force update, R to reverse sort, Q to exit."
+
+#define HELP_ps "usage: ps [-AadefLlnwZ] [-gG GROUP,] [-k FIELD,] [-o FIELD,] [-p PID,] [-t TTY,] [-uU USER,]\n\nList processes.\n\nWhich processes to show (-gGuUpPt selections may be comma separated lists):\n\n-A  All					-a  Has terminal not session leader\n-d  All but session leaders		-e  Synonym for -A\n-g  In GROUPs				-G  In real GROUPs (before sgid)\n-p  PIDs (--pid)			-P  Parent PIDs (--ppid)\n-s  In session IDs			-t  Attached to selected TTYs\n-T  Show threads also			-u  Owned by selected USERs\n-U  Real USERs (before suid)\n\nOutput modifiers:\n\n-k  Sort FIELDs (-FIELD to reverse)	-M  Measure/pad future field widths\n-n  Show numeric USER and GROUP		-w  Wide output (don't truncate fields)\n\nWhich FIELDs to show. (-o HELP for list, default = -o PID,TTY,TIME,CMD)\n\n-f  Full listing (-o USER:12=UID,PID,PPID,C,STIME,TTY,TIME,ARGS=CMD)\n-l  Long listing (-o F,S,UID,PID,PPID,C,PRI,NI,ADDR,SZ,WCHAN,TTY,TIME,CMD)\n-o  Output FIELDs instead of defaults, each with optional :size and =title\n-O  Add FIELDS to defaults\n-Z  Include LABEL"
+
+#define HELP_printf "usage: printf FORMAT [ARGUMENT...]\n\nFormat and print ARGUMENT(s) according to FORMAT, using C printf syntax\n(% escapes for cdeEfgGiosuxX, \\ escapes for abefnrtv0 or \\OCTAL or \\xHEX)."
+
+#define HELP_patch "usage: patch [-Rlsuv] [-d DIR] [-i FILE] [-p DEPTH] [-F FUZZ] [--dry-run] [FILE [PATCH]]\n\nApply a unified diff to one or more files.\n\n-d	Modify files in DIR\n-F	Fuzz factor (number of non-matching context lines allowed per hunk)\n-i	Input patch from FILE (default=stdin)\n-l	Loose match (ignore whitespace)\n-p	Number of '/' to strip from start of file paths (default=all)\n-R	Reverse patch\n-s	Silent except for errors\n-v	Verbose (-vv to see decisions)\n--dry-run Don't change files, just confirm patch applies\n\nOnly handles \"unified\" diff format (-u is assumed and ignored). Only\nmodifies files when all hunks to that file apply. Prints failed hunks\nto stderr, and exits with nonzero status if any hunks fail.\n\nFiles compared against /dev/null (or with a date <= the unix epoch) are\ncreated/deleted as appropriate. Default -F value is the number of\nleading/trailing context lines minus one (usually 2)."
+
+#define HELP_paste "usage: paste [-s] [-d DELIMITERS] [FILE...]\n\nMerge corresponding lines from each input file.\n\n-d	List of delimiter characters to separate fields with (default is \\t)\n-s	Sequential mode: turn each input file into one line of output"
+
+#define HELP_od "usage: od [-bcdosxv] [-j #] [-N #] [-w #] [-A doxn] [-t acdfoux[#]]\n\nDump data in octal/hex.\n\n-A	Address base (decimal, octal, hexadecimal, none)\n-j	Skip this many bytes of input\n-N	Stop dumping after this many bytes\n-t	Output type a(scii) c(har) d(ecimal) f(loat) o(ctal) u(nsigned) (he)x\n	plus optional size in bytes\n	aliases: -b=-t o1, -c=-t c, -d=-t u2, -o=-t o2, -s=-t d2, -x=-t x2\n-v	Don't collapse repeated lines together\n-w	Total line width in bytes (default 16)"
+
+#define HELP_nohup "usage: nohup COMMAND...\n\nRun a command that survives the end of its terminal.\n\nRedirect tty on stdin to /dev/null, tty on stdout to \"nohup.out\"."
+
+#define HELP_nl "usage: nl [-E] [-l #] [-b MODE] [-n STYLE] [-s SEPARATOR] [-v #] [-w WIDTH] [FILE...]\n\nNumber lines of input.\n\n-E	Use extended regex syntax (when doing -b pREGEX)\n-b	Which lines to number: a (all) t (non-empty, default) pREGEX (pattern)\n-l	Only count last of this many consecutive blank lines\n-n	Number STYLE: ln (left justified) rn (right justified) rz (zero pad)\n-s	Separator to use between number and line (instead of TAB)\n-v	Starting line number for each section (default 1)\n-w	Width of line numbers (default 6)"
+
+#define HELP_nice "usage: nice [-n PRIORITY] COMMAND...\n\nRun a command line at an increased or decreased scheduling priority.\n\nHigher numbers make a program yield more CPU time, from -20 (highest\npriority) to 19 (lowest).  By default processes inherit their parent's\nniceness (usually 0).  By default this command adds 10 to the parent's\npriority.  Only root can set a negative niceness level.\n\n-n	Add given adjustment to priority (default 10)"
+
+#define HELP_mkfifo "usage: mkfifo [-Z CONTEXT] [NAME...]\n\nCreate FIFOs (named pipes).\n\n-Z	Security context"
+
+#define HELP_mkdir_z "usage: [-Z context]\n\n-Z	Set security context"
+
+#define HELP_mkdir "usage: mkdir [-vp] [-m MODE] [DIR...]\n\nCreate one or more directories.\n\n-m	Set permissions of directory to mode\n-p	Make parent directories as needed\n-v	Verbose"
+
+#define HELP_ls "usage: ls [-1ACFHLNRSUXZabcdfghilmnopqrstuwx] [--color[=auto]] [FILE...]\n\nList files\n\nwhat to show:\n-A  all files except . and ..      -a  all files including .hidden\n-b  escape nongraphic chars        -d  directory, not contents\n-F  append /dir *exe @sym |FIFO    -f  files (no sort/filter/format)\n-H  follow command line symlinks   -i  inode number\n-L  follow symlinks                -N  no escaping, even on tty\n-p  put '/' after dir names        -q  unprintable chars as '?'\n-R  recursively list in subdirs    -s  storage used (in --block-size)\n-Z  security context\n\noutput formats:\n-1  list one file per line         -C  columns (sorted vertically)\n-g  like -l but no owner           -h  human readable sizes\n-k  reset --block-size to default  -l  long (show full details)\n-m  comma separated                -ll long with nanoseconds (--full-time)\n-n  long with numeric uid/gid      -o  long without group column\n-r  reverse order                  -w  set column width\n-x  columns (horizontal sort)\n\nsort by:  (also --sort=longname,longname... ends with alphabetical)\n-c  ctime      -r  reverse    -S  size     -t  time    -u  atime    -U  none\n-X  extension  -!  dirfirst   -~  nocase\n\n--block-size N	block size (default 1024, -k resets to 1024)\n--color  =always (default)  =auto (when stdout is tty) =never\n    exe=green  suid=red  suidfile=redback  stickydir=greenback\n    device=yellow  symlink=turquoise/red  dir=blue  socket=purple\n\nLong output uses -cu for display, use -ltc/-ltu to also sort by ctime/atime."
+
+#define HELP_logger "usage: logger [-s] [-t TAG] [-p [FACILITY.]PRIORITY] [MESSAGE...]\n\nLog message (or stdin) to syslog.\n\n-s	Also write message to stderr\n-t	Use TAG instead of username to identify message source\n-p	Specify PRIORITY with optional FACILITY. Default is \"user.notice\""
+
+#define HELP_ln "usage: ln [-fnrsTv] [-t DIR] [FROM...] TO\n\nCreate a link between FROM and TO.\nOne/two/many arguments work like \"mv\" or \"cp\".\n\n-f	Force the creation of the link, even if TO already exists\n-n	Symlink at TO treated as file\n-r	Create relative symlink from -> to\n-s	Create a symbolic link\n-t	Create links in DIR\n-T	TO always treated as file, max 2 arguments\n-v	Verbose"
+
+#define HELP_link "usage: link FILE NEWLINK\n\nCreate hardlink to a file."
+
+#define HELP_killall5 "usage: killall5 [-l [SIGNAL]] [-SIGNAL|-s SIGNAL] [-o PID]...\n\nSend a signal to all processes outside current session.\n\n-l	List signal name(s) and number(s)\n-o PID	Omit PID\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_kill "usage: kill [-l [SIGNAL] | -s SIGNAL | -SIGNAL] PID...\n\nSend signal to process(es).\n\n-l	List signal name(s) and number(s)\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_whoami "usage: whoami\n\nPrint the current user name."
+
+#define HELP_logname "usage: logname\n\nPrint the current user name."
+
+#define HELP_groups "usage: groups [user]\n\nPrint the groups a user is in."
+
+#define HELP_id "usage: id [-GZgnru] [USER...]\n\nPrint user and group ID.\n-G	Show all group IDs\n-Z	Show only security context\n-g	Show only the effective group ID\n-n	Print names instead of numeric IDs (to be used with -Ggu)\n-r	Show real ID instead of effective ID\n-u	Show only the effective user ID"
+
+#define HELP_iconv "usage: iconv [-f FROM] [-t TO] [FILE...]\n\nConvert character encoding of files.\n\n-c	Omit invalid chars\n-f	Convert from (default UTF-8)\n-t	Convert to   (default UTF-8)"
+
+#define HELP_head "usage: head [-cn NUM] [-qv] [FILE...]\n\nCopy first lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Number of lines to copy\n-c	Number of bytes to copy\n-q	Never print headers\n-v	Always print headers"
+
+#define HELP_grep "usage: grep [-abcEFHhIiLlnoqrsvwxZz] [-ABC NUM] [-m MAX] [-e REGEX]... [-MS PATTERN]... [-f REGFILE]... [FILE]...\n\nShow lines matching regular expressions. If no -e, first argument is\nregular expression to match. With no files (or \"-\" filename) read stdin.\nReturns 0 if matched, 1 if no match found, 2 for command errors.\n\n-e  Regex(es) to match.       -f  File(s) of regexes to match (1 per line).\n\nfile search:\n-r  Recurse into subdirs     -R  Recurse following symlinks\n-M  Match files (--include)  -S  Skip files (--exclude)\n-I  Ignore binary files      --exclude-dir=PATTERN  Skip directories\n\nmatch type:\n-A  Show NUM lines after     -B  Show NUM lines before match\n-C  NUM lines context (A+B)  -E  extended regex syntax\n-F  fixed (literal match)    -a  always text (not binary)\n-i  case insensitive         -m  match MAX many lines\n-v  invert match             -w  whole word (implies -E)\n-x  whole line               -z  input NUL terminated\n\ndisplay modes: (default: matched line)\n-L  filenames with no match  -Z  output is NUL terminated\n-c  count of matching lines  -l  filenames with a match\n-o  only matching part       -q  quiet (errors only)\n-s  silent (no error msg)\n\noutput prefix (default: filename if checking more than 1 file)\n-H  force filename           -b  byte offset of match\n-h  hide filename            -n  line number of match"
+
+#define HELP_getconf "usage: getconf -a [PATH] | -l | NAME [PATH]\n\nGet system configuration values. Values from pathconf(3) require a path.\n\n-a	Show all (defaults to \"/\" if no path given)\n-l	List available value names (grouped by source)"
+
+#define HELP_fold "usage: fold [-bs] [-w WIDTH] [FILE...]\n\nBreak long lines by inserting newlines.\n\n-b	Count bytes instead of utf-8 unicode columns\n-s	Wrap at whitespace when possible\n-w	Break at WIDTH columns (default 80)"
+
+#define HELP_find "usage: find [-HL] [DIR...] [<options>]\n\nSearch directories for matching files.\nDefault: search \".\", match all, -print matches.\n\n-H  Follow command line symlinks         -L  Follow all symlinks\n\nMatch filters:\n-name  PATTERN   filename with wildcards   -iname      ignore case -name\n-path  PATTERN   path name with wildcards  -ipath      ignore case -path\n-user  UNAME     belongs to user UNAME     -nouser     user ID not known\n-group GROUP     belongs to group GROUP    -nogroup    group ID not known\n-perm  [-/]MODE  permissions (-=min /=any) -prune      ignore dir contents\n-size  N[c]      512 byte blocks (c=bytes) -xdev       only this filesystem\n-links N         hardlink count            -empty      empty files and dirs\n-atime N[u]      accessed N units ago      -true       always true\n-ctime N[u]      created N units ago       -false      always false\n-mtime N[u]      modified N units ago      -executable access(X_OK) perm+ACL\n-inum  N         inode number N            -readable   access(R_OK) perm+ACL\n-context PATTERN security context          -depth      contents before dir\n-samefile FILE   hardlink to FILE          -maxdepth N at most N dirs down\n-newer    FILE   newer mtime than FILE     -mindepth N at least N dirs down\n-newerXY  FILE   X=acm time > FILE's Y=acm time (Y=t: FILE is literal time)\n-type [bcdflps]  type is (block, char, dir, file, symlink, pipe, socket)\n\nNumbers N may be prefixed by - (less than) or + (greater than). Units for\n-[acm]time are d (days, default), h (hours), m (minutes), or s (seconds).\n\nCombine matches with:\n!, -a, -o, ( )    not, and, or, group expressions\n\nActions:\n-print  Print match with newline  -print0        Print match with null\n-exec   Run command with path     -execdir       Run command in file's dir\n-ok     Ask before exec           -okdir         Ask before execdir\n-delete Remove matching file/dir  -printf FORMAT Print using format string\n-quit   Exit immediately\n\nCommands substitute \"{}\" with matched file. End with \";\" to run each file,\nor \"+\" (next argument after \"{}\") to collect and run with multiple files.\n\n-printf FORMAT characters are \\ escapes and:\n%b  512 byte blocks used\n%f  basename            %g  textual gid          %G  numeric gid\n%i  decimal inode       %l  target of symlink    %m  octal mode\n%M  ls format type/mode %p  path to file         %P  path to file minus DIR\n%s  size in bytes       %T@ mod time as unixtime\n%u  username            %U  numeric uid          %Z  security context"
+
+#define HELP_file "usage: file [-bhLs] [FILE...]\n\nExamine the given files and describe their content types.\n\n-b	Brief (no filename)\n-h	Don't follow symlinks (default)\n-L	Follow symlinks\n-s	Show block/char device contents"
+
+#define HELP_false "usage: false\n\nReturn nonzero."
+
+#define HELP_expand "usage: expand [-t TABLIST] [FILE...]\n\nExpand tabs to spaces according to tabstops.\n\n-t	TABLIST\n\nSpecify tab stops, either a single number instead of the default 8,\nor a comma separated list of increasing numbers representing tabstop\npositions (absolute, not increments) with each additional tab beyond\nthat becoming one space."
+
+#define HELP_env "usage: env [-0i] [-e FILE] [-u NAME] [NAME=VALUE...] [COMMAND...]\n\nSet the environment for command invocation, or list environment variables.\n\n-e	Execute FILE instead of argv[0] in COMMAND list\n-i	Clear existing environment\n-u NAME	Remove NAME from the environment\n-0	Use null instead of newline in output"
+
+#define HELP_echo "usage: echo [-Een] [ARG...]\n\nWrite each argument to stdout, one space between each, followed by a newline.\n\n-E	Print escape sequences literally (default)\n-e	Process the following escape sequences:\n	\\\\  Backslash		\\0NNN Octal (1-3 digit)	\\xHH Hex (1-2 digit)\n	\\a  Alert (beep/flash)	\\b  Backspace		\\c  Stop here (no \\n)\n	\\f  Form feed		\\n  Newline		\\r  Carriage return\n	\\t  Horizontal tab	\\v  Vertical tab\n-n	No trailing newline"
+
+#define HELP_du "usage: du [-d N] [-abcHKkLlmsx] [FILE...]\n\nShow disk usage, space consumed by files and directories.\n\nSize in:\n-b	Apparent bytes (directory listing size, not space used)\n-h	Human readable (e.g., 1K 243M 2G)\n-k	1024 byte blocks (default)\n-K	512 byte blocks (posix)\n-m	Megabytes\n\nWhat to show:\n-a	All files, not just directories\n-c	Cumulative total\n-d N	Only depth < N\n-H	Follow symlinks on cmdline\n-L	Follow all symlinks\n-l	Disable hardlink filter\n-s	Only total size of each argument\n-x	Don't leave this filesystem"
+
+#define HELP_dirname "usage: dirname PATH...\n\nShow directory portion of path."
+
+#define HELP_df "usage: df [-aHhikP] [-t TYPE] [FILE...]\n\nThe \"disk free\" command shows total/used/available disk space for\neach filesystem listed on the command line, or all currently mounted\nfilesystems.\n\n-a	Show all (including /proc and friends)\n-H	Human readable (k=1000)\n-h	Human readable (K=1024)\n-i	Show inodes instead of blocks\n-k	Sets units back to 1024 bytes (the default without -P)\n-P	The SUSv3 \"Pedantic\" option (512 byte blocks)\n-t TYPE	Display only filesystems of this type\n\nPedantic provides a slightly less useful output format dictated by POSIX,\nand sets the units to 512 bytes instead of the default 1024 bytes."
+
+#define HELP_dd "usage: dd [if|of=FILE] [ibs|obs|bs|count|seek|skip=N] [conv|status|iflag|oflag=FLAG[,FLAG...]]\n\nCopy/convert blocks of data from input to output, with the following\nkeyword=value modifiers (and their default values):\n\nif=FILE  Read FILE (stdin)          of=FILE  Write to FILE (stdout)\n   bs=N  Block size in bytes (512)  count=N  Stop after copying N blocks (all)\n  ibs=N  Input block size (bs=)       obs=N  Output block size (bs=)\n skip=N  Skip N input blocks (0)     seek=N  Skip N output blocks (0)\n\nEach =N value accepts the normal unit suffixes (see toybox --help).\n\nThese modifiers take a comma separated list of potential options:\n\niflag=count_bytes,skip_bytes   count=N or skip=N is in bytes not blocks\noflag=seek_bytes,append        seek=N is in bytes, append output to file\nstatus=noxfer,none             don't show transfer rate, no summary info\nconv=\n  notrunc  Don't truncate output    noerror  Continue after read errors\n  sync     Zero pad short reads     fsync    Flush output to disk at end\n  sparse   Seek past zeroed output  excl     Fail if output file exists\n  nocreat  Fail if of=FILE missing"
+
+#define HELP_date "usage: date [-u] [-I RES] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]\n\nSet/get the current date/time. With no SET shows the current date.\n\n-d	Show DATE instead of current time (convert date format)\n-D	+FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])\n-I RES	ISO 8601 with RESolution d=date/h=hours/m=minutes/s=seconds/n=ns\n-r	Use modification time of FILE instead of current date\n-s DATE	Set the system clock to DATE.\n-u	Use UTC instead of current timezone\n\nSupported input formats:\n\nMMDDhhmm[[CC]YY][.ss]     POSIX\n@UNIXTIME[.FRACTION]      seconds since midnight 1970-01-01\nYYYY-MM-DD [hh:mm[:ss]]   ISO 8601\nhh:mm[:ss]                24-hour time today\n\nAll input formats can be followed by fractional seconds, and/or a UTC\noffset such as -0800.\n\nAll input formats can be preceded by TZ=\"id\" to set the input time zone\nseparately from the output time zone. Otherwise $TZ sets both.\n\n+FORMAT specifies display format string using strftime(3) syntax:\n\n%% literal %             %n newline              %t tab\n%S seconds (00-60)       %M minute (00-59)       %m month (01-12)\n%H hour (0-23)           %I hour (01-12)         %p AM/PM\n%y short year (00-99)    %Y year                 %C century\n%a short weekday name    %A weekday name         %u day of week (1-7, 1=mon)\n%b short month name      %B month name           %Z timezone name\n%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)\n%N nanosec (output only)\n\n%U Week of year (0-53 start Sunday)   %W Week of year (0-53 start Monday)\n%V Week of year (1-53 start Monday, week < 4 days not part of this year)\n\n%F \"%Y-%m-%d\"   %R \"%H:%M\"        %T \"%H:%M:%S\"        %z  timezone (-0800)\n%D \"%m/%d/%y\"   %r \"%I:%M:%S %p\"  %h \"%b\"              %:z timezone (-08:00)\n%x locale date  %X locale time    %c locale date/time  %s  unix epoch time"
+
+#define HELP_cut "usage: cut [-Ds] [-bcCfF LIST] [-dO DELIM] [FILE...]\n\nPrint selected parts of lines from each FILE to standard output.\n\nEach selection LIST is comma separated, either numbers (counting from 1)\nor dash separated ranges (inclusive, with X- meaning to end of line and -X\nfrom start). By default selection ranges are sorted and collated, use -D\nto prevent that.\n\n-b	Select bytes (with -n round start/end down to start of utf8 char)\n-c	Select UTF-8 characters\n-C	Select unicode columns\n-d	Input delimiter (default is TAB for -f, run of whitespace for -F)\n-D	Don't sort/collate selections or match -fF lines without delimiter\n-f	Select fields (words) separated by single DELIM character\n-F	Select fields separated by DELIM regex\n-O	Output separator (default one space for -F, input delim for -f)\n-s	Skip lines without delimiters"
+
+#define HELP_cpio "usage: cpio -{o|t|i|p DEST} [-dLtuv] [--verbose] [-F FILE] [-R [USER][:GROUP] [--no-preserve-owner]\n\nCopy files into and out of a \"newc\" format cpio archive.\n\n-d	Create directories if needed\n-F FILE	Use archive FILE instead of stdin/stdout\n-i	Extract from archive into file system (stdin=archive)\n-L	Follow symlinks\n-o	Create archive (stdin=list of files, stdout=archive)\n-p DEST	Copy-pass mode, copy stdin file list to directory DEST\n-R USER	Replace owner with USER[:GROUP]\n-t	Test files (list only, stdin=archive, stdout=list of files)\n-u	Unlink existing files when extracting\n-v	Verbose\n--no-preserve-owner     Don't set ownership during extract"
+
+#define HELP_install "usage: install [-dDpsv] [-o USER] [-g GROUP] [-m MODE] [-t TARGET] [SOURCE...] [DEST]\n\nCopy files and set attributes.\n\n-d	Act like mkdir -p\n-D	Create leading directories for DEST\n-g	Make copy belong to GROUP\n-m	Set permissions to MODE\n-o	Make copy belong to USER\n-p	Preserve timestamps\n-s	Call \"strip -p\"\n-t	Copy files to TARGET dir (no DEST)\n-v	Verbose"
+
+#define HELP_mv "usage: mv [-FfinTvx] [-t TARGET] SOURCE... [DEST]\n\n-F	Delete any existing DEST first (--remove-destination)\n-f	Force copy by deleting destination file\n-i	Interactive, prompt before overwriting existing DEST\n-n	No clobber (don't overwrite DEST)\n-t	Move to TARGET dir (no DEST)\n-T	DEST always treated as file, max 2 arguments\n-v	Verbose\n-x	Atomically exchange source/dest (--swap)"
+
+#define HELP_cp "usage: cp [-aDdFfHiLlnPpRrsTuv] [--preserve=motcxa] [-t TARGET] SOURCE... [DEST]\n\nCopy files from SOURCE to DEST.  If more than one SOURCE, DEST must\nbe a directory.\n\n-a	Same as -dpr\n-D	Create leading dirs under DEST (--parents)\n-d	Don't dereference symlinks\n-F	Delete any existing DEST first (--remove-destination)\n-f	Delete destination files we can't write to\n-H	Follow symlinks listed on command line\n-i	Interactive, prompt before overwriting existing DEST\n-L	Follow all symlinks\n-l	Hard link instead of copy\n-n	No clobber (don't overwrite DEST)\n-P	Do not follow symlinks\n-p	Preserve timestamps, ownership, and mode\n-R	Recurse into subdirectories (DEST must be a directory)\n-r	Synonym for -R\n-s	Symlink instead of copy\n-T	DEST always treated as file, max 2 arguments\n-t	Copy to TARGET dir (no DEST)\n-u	Update (keep newest mtime)\n-v	Verbose\n\nArguments to --preserve are the first letter(s) of:\n\n        mode - permissions (ignore umask for rwx, copy suid and sticky bit)\n   ownership - user and group\n  timestamps - file creation, modification, and access times.\n     context - security context\n       xattr - extended attributes\n         all - all of the above"
+
+#define HELP_comm "usage: comm [-123] FILE1 FILE2\n\nRead FILE1 and FILE2, which should be ordered, and produce three text\ncolumns as output: lines only in FILE1; lines only in FILE2; and lines\nin both files. Filename \"-\" is a synonym for stdin.\n\n-1	Suppress the output column of lines unique to FILE1\n-2	Suppress the output column of lines unique to FILE2\n-3	Suppress the output column of lines duplicated in FILE1 and FILE2"
+
+#define HELP_cmp "usage: cmp [-ls] [-n LEN] FILE1 [FILE2 [SKIP1 [SKIP2]]]\n\nCompare the contents of files (vs stdin if only one given), optionally\nskipping bytes at start.\n\n-l	Show all differing bytes\n-n LEN	Compare at most LEN bytes\n-s	Silent"
+
+#define HELP_crc32 "usage: crc32 [file...]\n\nOutput crc32 checksum for each file."
+
+#define HELP_cksum "usage: cksum [-HIPLN] [FILE...]\n\nFor each file, output crc32 checksum value, length and name of file.\nIf no files listed, copy from stdin.  Filename \"-\" is a synonym for stdin.\n\n-H	Hexadecimal checksum (defaults to decimal)\n-I	Skip post-inversion\n-P	Pre-inversion\n-L	Little endian (defaults to big endian)\n-N	Do not include length in CRC calculation (or output)"
+
+#define HELP_chmod "usage: chmod [-R] MODE FILE...\n\nChange mode of listed file[s] (recursively with -R).\n\nMODE can be (comma-separated) stanzas: [ugoa][+-=][rwxstXugo]\n\nStanzas are applied in order: For each category (u = user,\ng = group, o = other, a = all three, if none specified default is a),\nset (+), clear (-), or copy (=), r = read, w = write, x = execute.\ns = u+s = suid, g+s = sgid, +t = sticky. (o+s ignored so a+s doesn't set +t)\nsuid/sgid: execute as the user/group who owns the file.\nsticky: can't delete files you don't own out of this directory\nX = x for directories or if any category already has x set.\n\nOr MODE can be an octal value up to 7777	ug uuugggooo	top +\nbit 1 = o+x, bit 1<<8 = u+w, 1<<11 = g+1	sstrwxrwxrwx	bottom\n\nExamples:\nchmod u+w file - allow owner of \"file\" to write to it.\nchmod 744 file - user can read/write/execute, everyone else read only"
+
+#define HELP_chown "see: chgrp"
+
+#define HELP_chgrp "usage: chgrp/chown [-RHLP] [-fvh] GROUP FILE...\n\nChange group of one or more files.\n\n-f	Suppress most error messages\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories (implies -h)\n-H	With -R change target of symlink, follow command line symlinks\n-L	With -R change target of symlink, follow all symlinks\n-P	With -R change symlink, do not follow symlinks (default)\n-v	Verbose"
+
+#define HELP_cat "usage: cat [-etuv] [FILE...]\n\nCopy (concatenate) files to stdout.  If no files listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-e	Mark each newline with $\n-t	Show tabs as ^I\n-u	Copy one byte at a time (slow)\n-v	Display nonprinting characters as escape sequences with M-x for\n	high ascii characters (>127), and ^x for other nonprinting chars"
+
+#define HELP_cal "usage: cal [-h] [[[DAY] MONTH] YEAR]\n\nPrint a calendar.\n\nWith one argument, prints all months of the specified year.\nWith two arguments, prints calendar for month and year.\nWith three arguments, highlights day within month and year.\n\n-h	Don't highlight today"
+
+#define HELP_basename "usage: basename [-a] [-s SUFFIX] NAME... | NAME [SUFFIX]\n\nReturn non-directory portion of a pathname removing suffix.\n\n-a		All arguments are names\n-s SUFFIX	Remove suffix (implies -a)"
+
diff --git a/android/device/generated/newtoys.h b/android/device/generated/newtoys.h
new file mode 100644
index 0000000..9281485
--- /dev/null
+++ b/android/device/generated/newtoys.h
@@ -0,0 +1,347 @@
+USE_TOYBOX(NEWTOY(toybox, 0, TOYFLAG_STAYROOT|TOYFLAG_NOHELP))
+USE_SH(OLDTOY(-bash, sh, 0))
+USE_SH(OLDTOY(-sh, sh, 0))
+USE_SH(OLDTOY(-toysh, sh, 0))
+USE_SH(OLDTOY(., source, TOYFLAG_NOFORK))
+USE_TRUE(OLDTOY(:, true, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_TEST_GLUE(OLDTOY([, test, TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_NOHELP))
+USE_SH(OLDTOY([[, test, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_ACPI(NEWTOY(acpi, "abctV", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GROUPADD(OLDTOY(addgroup, groupadd, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERADD(OLDTOY(adduser, useradd, TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_ARCH(NEWTOY(arch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARP(NEWTOY(arp, "vi:nDsdap:A:H:[+Ap][!sd]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARPING(NEWTOY(arping, "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ASCII(NEWTOY(ascii, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE32(NEWTOY(base32, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE64(NEWTOY(base64, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASENAME(NEWTOY(basename, "^<1as:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(OLDTOY(bash, sh, TOYFLAG_BIN))
+USE_BC(NEWTOY(bc, "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BLKDISCARD(NEWTOY(blkdiscard, "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]", TOYFLAG_BIN))
+USE_BLKID(NEWTOY(blkid, "ULo:s*[!LU]", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BLOCKDEV(NEWTOY(blockdev, "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)",TOYFLAG_SBIN))
+USE_BOOTCHARTD(NEWTOY(bootchartd, 0, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_BRCTL(NEWTOY(brctl, "<1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_BUNZIP2(NEWTOY(bunzip2, "cftkv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BZCAT(NEWTOY(bzcat, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAL(NEWTOY(cal, ">3h", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAT(NEWTOY(cat, "uvte", TOYFLAG_BIN))
+USE_SH(NEWTOY(cd, ">1LP[-LP]", TOYFLAG_NOFORK))
+USE_CHATTR(NEWTOY(chattr, "?p#v#R", TOYFLAG_BIN))
+USE_CHCON(NEWTOY(chcon, "<2hvR", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHGRP(NEWTOY(chgrp, "<2h(no-dereference)PLHRfv[-HLP]", TOYFLAG_BIN))
+USE_CHMOD(NEWTOY(chmod, "<2?vfR[-vf]", TOYFLAG_BIN))
+USE_CHOWN(OLDTOY(chown, chgrp, TOYFLAG_BIN))
+USE_CHROOT(NEWTOY(chroot, "^<1", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_ARGFAIL(125)))
+USE_CHRT(NEWTOY(chrt, "^mp#<0iRbrfo[!ibrfo]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHSH(NEWTOY(chsh, ">1R:s:a", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CHVT(NEWTOY(chvt, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CKSUM(NEWTOY(cksum, "HIPLN", TOYFLAG_BIN))
+USE_CLEAR(NEWTOY(clear, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CMP(NEWTOY(cmp, "<1>4ls(silent)(quiet)n#<1[!ls]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_COMM(NEWTOY(comm, "<2>2321", TOYFLAG_USR|TOYFLAG_BIN))
+USE_COUNT(NEWTOY(count, "<0>0l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CP(NEWTOY(cp, "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]", TOYFLAG_BIN))
+USE_CPIO(NEWTOY(cpio, "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]", TOYFLAG_BIN))
+USE_CRC32(NEWTOY(crc32, 0, TOYFLAG_BIN))
+USE_CROND(NEWTOY(crond, "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_CRONTAB(NEWTOY(crontab, "c:u:elr[!elr]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CSPLIT(NEWTOY(csplit, "<2skf:n#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CUT(NEWTOY(cut, "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DATE(NEWTOY(date, ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]", TOYFLAG_BIN))
+USE_DD(NEWTOY(dd, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEALLOCVT(NEWTOY(deallocvt, ">1", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_SH(NEWTOY(declare, "pAailunxr", TOYFLAG_NOFORK))
+USE_GROUPDEL(OLDTOY(delgroup, groupdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERDEL(OLDTOY(deluser, userdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_DEMO_MANY_OPTIONS(NEWTOY(demo_many_options, "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba", TOYFLAG_BIN))
+USE_DEMO_NUMBER(NEWTOY(demo_number, "D#=3<3M#<0hcdbs", TOYFLAG_BIN))
+USE_DEMO_SCANKEY(NEWTOY(demo_scankey, 0, TOYFLAG_BIN))
+USE_DEMO_UTF8TOWC(NEWTOY(demo_utf8towc, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEVMEM(NEWTOY(devmem, "<1>3", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_DF(NEWTOY(df, "HPkhit*a[-HPh]", TOYFLAG_BIN))
+USE_DHCP(NEWTOY(dhcp, "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCP6(NEWTOY(dhcp6, "r:A#<0T#<0t#<0s:p:i:SRvqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCPD(NEWTOY(dhcpd, ">1P#<0>65535fi:S46[!46]", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DIFF(NEWTOY(diff, "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_DIRNAME(NEWTOY(dirname, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DMESG(NEWTOY(dmesg, "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]", TOYFLAG_BIN))
+USE_DNSDOMAINNAME(NEWTOY(dnsdomainname, ">0", TOYFLAG_BIN))
+USE_DOS2UNIX(NEWTOY(dos2unix, 0, TOYFLAG_BIN))
+USE_DU(NEWTOY(du, "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DUMPLEASES(NEWTOY(dumpleases, ">0arf:[!ar]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ECHO(NEWTOY(echo, "^?Een[-eE]", TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_LINEBUF))
+USE_EGREP(OLDTOY(egrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_EJECT(NEWTOY(eject, ">1stT[!tT]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ENV(NEWTOY(env, "^e:i0u*", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_SH(NEWTOY(eval, 0, TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exec, "^cla:", TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exit, 0, TOYFLAG_NOFORK))
+USE_EXPAND(NEWTOY(expand, "t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(export, "np", TOYFLAG_NOFORK))
+USE_EXPR(NEWTOY(expr, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_FACTOR(NEWTOY(factor, "?hx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALLOCATE(NEWTOY(fallocate, ">1l#|o#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALSE(NEWTOY(false, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_FDISK(NEWTOY(fdisk, "C#<0H#<0S#<0b#<512ul", TOYFLAG_SBIN))
+USE_FGREP(OLDTOY(fgrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_FILE(NEWTOY(file, "<1b(brief)hLs[!hL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FIND(NEWTOY(find, "?^HL[-HL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FLOCK(NEWTOY(flock, "<1>1nsux[-sux]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FMT(NEWTOY(fmt, "w#<0=75", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FOLD(NEWTOY(fold, "bsw#<1=80", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREE(NEWTOY(free, "hgmkb[!hgmkb]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREERAMDISK(NEWTOY(freeramdisk, "<1>1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_FSCK(NEWTOY(fsck, "?t:ANPRTVsC#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FSFREEZE(NEWTOY(fsfreeze, "<1>1f|u|[!fu]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_FSTYPE(NEWTOY(fstype, "<1", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_FSYNC(NEWTOY(fsync, "<1d", TOYFLAG_BIN))
+USE_FTPGET(NEWTOY(ftpget, "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FTPPUT(OLDTOY(ftpput, ftpget, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETCONF(NEWTOY(getconf, ">2al", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETENFORCE(NEWTOY(getenforce, ">0", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_GETFATTR(NEWTOY(getfattr, "(only-values)dhn:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETOPT(NEWTOY(getopt, "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETTY(NEWTOY(getty, "<2t#<0H:I:l:f:iwnmLh", TOYFLAG_SBIN))
+USE_GITCHECKOUT(NEWTOY(gitcheckout, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITCLONE(NEWTOY(gitclone, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITFETCH(NEWTOY(gitfetch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITINIT(NEWTOY(gitinit, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITREMOTE(NEWTOY(gitremote, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIODETECT(NEWTOY(gpiodetect, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOFIND(NEWTOY(gpiofind, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOGET(NEWTOY(gpioget, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOINFO(NEWTOY(gpioinfo, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOSET(NEWTOY(gpioset, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GREP(NEWTOY(grep, "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]", TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_GROUPADD(NEWTOY(groupadd, "<1>2R:g#<0>2147483647S", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPDEL(NEWTOY(groupdel, "<1>2?", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPS(NEWTOY(groups, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GUNZIP(NEWTOY(gunzip, "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GZIP(NEWTOY(gzip,    "n(no-name)cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(halt, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_HD(OLDTOY(hd, hexdump, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEAD(NEWTOY(head, "?n(lines)#<0=10c(bytes)#<0qv[-nc]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HELLO(NEWTOY(hello, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HELP(NEWTOY(help, "ahu", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_HEXDUMP(NEWTOY(hexdump, "bcCdn#<0os#<0vx[!bcCdox]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEXEDIT(NEWTOY(hexedit, "<1>1r", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOST(NEWTOY(host, "<1>2avt:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTID(NEWTOY(hostid, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTNAME(NEWTOY(hostname, ">1bdsfF:[!bdsf]", TOYFLAG_BIN))
+USE_HTTPD(NEWTOY(httpd, ">1v", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HWCLOCK(NEWTOY(hwclock, ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]", TOYFLAG_SBIN))
+USE_I2CDETECT(NEWTOY(i2cdetect, ">3aF#<0>63lqry[!qr][!Fl]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CDUMP(NEWTOY(i2cdump, "<2>2fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CGET(NEWTOY(i2cget, "<2>3fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CSET(NEWTOY(i2cset, "<4fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CTRANSFER(NEWTOY(i2ctransfer, "<2vfy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ICONV(NEWTOY(iconv, "cst:f:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ID(NEWTOY(id, ">1"USE_ID_Z("Z")"nGgru[!"USE_ID_Z("Z")"Ggu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IFCONFIG(NEWTOY(ifconfig, "^?aS", TOYFLAG_SBIN))
+USE_INIT(NEWTOY(init, "", TOYFLAG_SBIN))
+USE_INOTIFYD(NEWTOY(inotifyd, "<2", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_INSMOD(NEWTOY(insmod, "<1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_INSTALL(NEWTOY(install, "<1cdDp(preserve-timestamps)svt:m:o:g:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IONICE(NEWTOY(ionice, "^tc#<0>3=2n#<0>7=5p#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IORENICE(NEWTOY(iorenice, "<1>3", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IOTOP(NEWTOY(iotop, ">0AaKO" "Hk*o*p*u*s#<1=7d%<100=3000m#n#<1bq", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_IP(NEWTOY(ip, NULL, TOYFLAG_SBIN))
+USE_IP(OLDTOY(ipaddr, ip, TOYFLAG_SBIN))
+USE_IPCRM(NEWTOY(ipcrm, "m*M*s*S*q*Q*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IPCS(NEWTOY(ipcs, "acptulsqmi#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IP(OLDTOY(iplink, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iproute, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iprule, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iptunnel, ip, TOYFLAG_SBIN))
+USE_SH(NEWTOY(jobs, "lnprs", TOYFLAG_NOFORK))
+USE_KILL(NEWTOY(kill, "?ls: ", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_KILLALL(NEWTOY(killall, "?s:ilqvw", TOYFLAG_USR|TOYFLAG_BIN))
+USE_KILLALL5(NEWTOY(killall5, "?o*ls: [!lo][!ls]", TOYFLAG_SBIN))
+USE_KLOGD(NEWTOY(klogd, "c#<1>8n", TOYFLAG_SBIN))
+USE_LAST(NEWTOY(last, "f:W", TOYFLAG_BIN))
+USE_LINK(NEWTOY(link, "<2>2", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LINUX32(NEWTOY(linux32, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_LN(NEWTOY(ln, "<1rt:Tvnfs", TOYFLAG_BIN))
+USE_LOAD_POLICY(NEWTOY(load_policy, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SH(NEWTOY(local, 0, TOYFLAG_NOFORK))
+USE_LOG(NEWTOY(log, "p:t:", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_LOGGER(NEWTOY(logger, "t:p:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGIN(NEWTOY(login, ">1f:ph:", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_LOGNAME(NEWTOY(logname, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGPATH(NEWTOY(logpath, 0, TOYFLAG_NOHELP|TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOSETUP(NEWTOY(losetup, ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]", TOYFLAG_SBIN))
+USE_LS(NEWTOY(ls, "(sort):(color):;(full-time)(show-control-chars)\377(block-size)#=1024<1\241(group-directories-first)\376ZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-k\377]", TOYFLAG_BIN))
+USE_LSATTR(NEWTOY(lsattr, "ldapvR", TOYFLAG_BIN))
+USE_LSMOD(NEWTOY(lsmod, NULL, TOYFLAG_SBIN))
+USE_LSOF(NEWTOY(lsof, "lp*t", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSPCI(NEWTOY(lspci, "emkn@x@i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSUSB(NEWTOY(lsusb, "i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAKEDEVS(NEWTOY(makedevs, "<1>1d:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAN(NEWTOY(man, "k:M:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MCOOKIE(NEWTOY(mcookie, "v(verbose)V(version)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MD5SUM(NEWTOY(md5sum, "bc(check)s(status)[!bc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MDEV(NEWTOY(mdev, "s", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MEMEATER(NEWTOY(memeater, "<1>1M", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MICROCOM(NEWTOY(microcom, "<1>1s#=115200X", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MIX(NEWTOY(mix, "c:d:l#r#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKDIR(NEWTOY(mkdir, "<1"USE_MKDIR_Z("Z:")"vp(parent)(parents)m:", TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKE2FS(NEWTOY(mke2fs, "<1>2g:Fnqm#N#i#b#", TOYFLAG_SBIN))
+USE_MKFIFO(NEWTOY(mkfifo, "<1"USE_MKFIFO_Z("Z:")"m:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKNOD(NEWTOY(mknod, "<2>4m(mode):"USE_MKNOD_Z("Z:"), TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKPASSWD(NEWTOY(mkpasswd, ">2S:m:P#=0<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKSWAP(NEWTOY(mkswap, "<1>1L:", TOYFLAG_SBIN))
+USE_MKTEMP(NEWTOY(mktemp, ">1(tmpdir);:uqd(directory)p:t", TOYFLAG_BIN))
+USE_MODINFO(NEWTOY(modinfo, "<1b:k:F:0", TOYFLAG_SBIN))
+USE_MODPROBE(NEWTOY(modprobe, "alrqvsDbd*", TOYFLAG_SBIN))
+USE_MORE(NEWTOY(more, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_MOUNT(NEWTOY(mount, "?RO:afnrvwt:o*[-rw]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_MOUNTPOINT(NEWTOY(mountpoint, "<1qdx[-dx]", TOYFLAG_BIN))
+USE_MV(NEWTOY(mv, "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]", TOYFLAG_BIN))
+USE_NBD_CLIENT(OLDTOY(nbd-client, nbd_client, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_SERVER(OLDTOY(nbd-server, nbd_server, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_CLIENT(NEWTOY(nbd_client, "<3>3b#<1>4294967295=4096ns", 0))
+USE_NBD_SERVER(NEWTOY(nbd_server, "<1>1r", 0))
+USE_NETCAT(OLDTOY(nc, netcat, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NETCAT(NEWTOY(netcat, "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]", TOYFLAG_BIN))
+USE_NETSTAT(NEWTOY(netstat, "pWrxwutneal", TOYFLAG_BIN))
+USE_NICE(NEWTOY(nice, "^<1n#", TOYFLAG_BIN))
+USE_NL(NEWTOY(nl, "v#=1l#w#<0=6b:n:s:E", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NOHUP(NEWTOY(nohup, "<1^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_NPROC(NEWTOY(nproc, "(all)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NSENTER(NEWTOY(nsenter, "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_OD(NEWTOY(od, "j#vw#<1=16N#xsodcbA:t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ONEIT(NEWTOY(oneit, "^<1nc:p3[!pn]", TOYFLAG_SBIN))
+USE_OPENVT(NEWTOY(openvt, "^<1c#<1>63sw", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_PARTPROBE(NEWTOY(partprobe, "<1", TOYFLAG_SBIN))
+USE_PASSWD(NEWTOY(passwd, ">1a:dlu", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_PASTE(NEWTOY(paste, "d:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PATCH(NEWTOY(patch, ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PGREP(NEWTOY(pgrep, "?cld:u*U*t*s*P*g*G*fnovxL:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PIDOF(NEWTOY(pidof, "so:x", TOYFLAG_BIN))
+USE_PING(NEWTOY(ping, "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PING(OLDTOY(ping6, ping, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PIVOT_ROOT(NEWTOY(pivot_root, "<2>2", TOYFLAG_SBIN))
+USE_PKILL(NEWTOY(pkill,    "?Vu*U*t*s*P*g*G*fnovxl:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PMAP(NEWTOY(pmap, "<1pqx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(poweroff, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_PRINTENV(NEWTOY(printenv, "(null)0", TOYFLAG_BIN))
+USE_PRINTF(NEWTOY(printf, "<1?^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_ULIMIT(OLDTOY(prlimit, ulimit, TOYFLAG_USR|TOYFLAG_BIN))
+USE_PS(NEWTOY(ps, "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]", TOYFLAG_BIN))
+USE_PWD(NEWTOY(pwd, ">0LP[-LP]", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_PWDX(NEWTOY(pwdx, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PWGEN(NEWTOY(pwgen, ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READAHEAD(NEWTOY(readahead, NULL, TOYFLAG_BIN))
+USE_READELF(NEWTOY(readelf, "<1(dyn-syms)Aadehlnp:SsWx:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READLINK(NEWTOY(readlink, "<1vnf(canonicalize)emqz[-mef][-qv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REALPATH(NEWTOY(realpath, "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(NEWTOY(reboot, "d:fn", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_RENICE(NEWTOY(renice, "<1gpun#|", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESET(NEWTOY(reset, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESTORECON(NEWTOY(restorecon, "<1DFnRrv", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_REV(NEWTOY(rev, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RFKILL(NEWTOY(rfkill, "<1>2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_RM(NEWTOY(rm, "f(force)iRrv[-fi]", TOYFLAG_BIN))
+USE_RMDIR(NEWTOY(rmdir, "<1(ignore-fail-on-non-empty)p(parents)", TOYFLAG_BIN))
+USE_RMMOD(NEWTOY(rmmod, "<1wf", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_ROUTE(NEWTOY(route, "?neA:", TOYFLAG_SBIN))
+USE_RTCWAKE(NEWTOY(rtcwake, "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RUNCON(NEWTOY(runcon, "^<2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SED(NEWTOY(sed, "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]", TOYFLAG_BIN|TOYFLAG_NOHELP))
+USE_SENDEVENT(NEWTOY(sendevent, "<4>4", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SEQ(NEWTOY(seq, "<1>3?f:s:w[!fw]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(set, 0, TOYFLAG_NOFORK))
+USE_SETENFORCE(NEWTOY(setenforce, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SETFATTR(NEWTOY(setfattr, "hn:|v:x:|[!xv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SETSID(NEWTOY(setsid, "^<1wc@d[!dc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(sh, "0^(noediting)(noprofile)(norc)sc:i", TOYFLAG_BIN))
+USE_SHA1SUM(OLDTOY(sha1sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA224SUM(OLDTOY(sha224sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA256SUM(OLDTOY(sha256sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA384SUM(OLDTOY(sha384sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA3SUM(NEWTOY(sha3sum, "bSa#<128>512=224", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA512SUM(OLDTOY(sha512sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(shift, ">1", TOYFLAG_NOFORK))
+USE_SHRED(NEWTOY(shred, "<1zxus#<1n#<1o#<0f", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHUF(NEWTOY(shuf, "zen#<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON(NEWTOY(skeleton, "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON_ALIAS(NEWTOY(skeleton_alias, "b#dq", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SLEEP(NEWTOY(sleep, "<1", TOYFLAG_BIN))
+USE_SNTP(NEWTOY(sntp, ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SORT(NEWTOY(sort, USE_SORT_FLOAT("g")"S:T:m" "o:k*t:" "xVbMCcszdfirun", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_SH(NEWTOY(source, "<1", TOYFLAG_NOFORK))
+USE_SPLIT(NEWTOY(split, ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STAT(NEWTOY(stat, "<1c:(format)fLt", TOYFLAG_BIN))
+USE_STRACE(NEWTOY(strace, "^p#s#v", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_STRINGS(NEWTOY(strings, "t:an#=4<1fo", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STTY(NEWTOY(stty, "?aF:g[!ag]", TOYFLAG_BIN))
+USE_SU(NEWTOY(su, "^lmpu:g:c:s:[!lmp]", TOYFLAG_BIN|TOYFLAG_ROOTONLY))
+USE_SULOGIN(NEWTOY(sulogin, "t#<0=0", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPOFF(NEWTOY(swapoff, "<1>1av", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPON(NEWTOY(swapon, "<1>1p#<0>32767d", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWITCH_ROOT(NEWTOY(switch_root, "<2c:h", TOYFLAG_SBIN))
+USE_SYNC(NEWTOY(sync, NULL, TOYFLAG_BIN))
+USE_SYSCTL(NEWTOY(sysctl, "^neNqwpaA[!ap][!aq][!aw][+aA]", TOYFLAG_SBIN))
+USE_SYSLOGD(NEWTOY(syslogd,">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD", TOYFLAG_SBIN|TOYFLAG_STAYROOT))
+USE_TAC(NEWTOY(tac, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_TAIL(NEWTOY(tail, "?fFs:c(bytes)-n(lines)-[-cn][-fF]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TAR(NEWTOY(tar, "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TASKSET(NEWTOY(taskset, "<1^pa", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TCPSVD(NEWTOY(tcpsvd, "^<3c#=30<1b#=20<0C:u:l:hEv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEE(NEWTOY(tee, "ia", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TELNET(NEWTOY(telnet, "<1>2", TOYFLAG_BIN))
+USE_TELNETD(NEWTOY(telnetd, "w#<0b:p#<0>65535=23f:l:FSKi[!wi]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEST(NEWTOY(test, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TFTP(NEWTOY(tftp, "<1b#<8>65464r:l:g|p|[!gp]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TFTPD(NEWTOY(tftpd, "rcu:l", TOYFLAG_BIN))
+USE_TIME(NEWTOY(time, "<1^pv[-pv]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_TIMEOUT(NEWTOY(timeout, "<2^(foreground)(preserve-status)vk:s(signal):i", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_TOP(NEWTOY(top, ">0O*h" "Hk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TOUCH(NEWTOY(touch, "<1acd:fmr:t:h[!dtr]", TOYFLAG_BIN))
+USE_SH(OLDTOY(toysh, sh, TOYFLAG_BIN))
+USE_TR(NEWTOY(tr, "^<1>2Ccstd[+cC]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(NEWTOY(traceroute, "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(OLDTOY(traceroute6,traceroute, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRUE(NEWTOY(true, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TRUNCATE(NEWTOY(truncate, "<1s:|c", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TS(NEWTOY(ts, "ims", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TSORT(NEWTOY(tsort, ">1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TTY(NEWTOY(tty, "s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TUNCTL(NEWTOY(tunctl, "<1>1t|d|u:T[!td]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UCLAMPSET(NEWTOY(uclampset, "p#am#<-1>1024M#<-1>1024R", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_TCPSVD(OLDTOY(udpsvd, tcpsvd, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ULIMIT(NEWTOY(ulimit, ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UMOUNT(NEWTOY(umount, "cndDflrat*v[!na]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UNAME(NEWTOY(uname, "paomvrns", TOYFLAG_BIN))
+USE_UNICODE(NEWTOY(unicode, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIQ(NEWTOY(uniq, "f#s#w#zicdu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIX2DOS(NEWTOY(unix2dos, 0, TOYFLAG_BIN))
+USE_UNLINK(NEWTOY(unlink, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(unset, "fvn[!fv]", TOYFLAG_NOFORK))
+USE_UNSHARE(NEWTOY(unshare, "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UPTIME(NEWTOY(uptime, ">0ps", TOYFLAG_USR|TOYFLAG_BIN))
+USE_USERADD(NEWTOY(useradd, "<1>2u#<0G:s:g:h:SDH", TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_USERDEL(NEWTOY(userdel, "<1>1r", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USLEEP(NEWTOY(usleep, "<1>1", TOYFLAG_BIN))
+USE_UUDECODE(NEWTOY(uudecode, ">1o:", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_UUENCODE(NEWTOY(uuencode, "<1>2m", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UUIDGEN(NEWTOY(uuidgen, ">0r(random)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VCONFIG(NEWTOY(vconfig, "<2>4", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_VI(NEWTOY(vi, ">1s:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VMSTAT(NEWTOY(vmstat, ">2n", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_W(NEWTOY(w, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(wait, "n", TOYFLAG_NOFORK))
+USE_WATCH(NEWTOY(watch, "^<1n%<100=2000tebx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WATCHDOG(NEWTOY(watchdog, "<1>1Ft#=4<1T#=60<1", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_WC(NEWTOY(wc, "Lcmwl", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WGET(NEWTOY(wget, "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHICH(NEWTOY(which, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHO(NEWTOY(who, "a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHOAMI(OLDTOY(whoami, logname, TOYFLAG_USR|TOYFLAG_BIN))
+USE_XARGS(NEWTOY(xargs, "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XXD(NEWTOY(xxd, ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XZCAT(NEWTOY(xzcat, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_YES(NEWTOY(yes, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ZCAT(NEWTOY(zcat,     "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
diff --git a/android/device/generated/tags.h b/android/device/generated/tags.h
new file mode 100644
index 0000000..463e8d2
--- /dev/null
+++ b/android/device/generated/tags.h
@@ -0,0 +1,140 @@
+#define CP_mode                                     0
+#define _CP_mode                                    (1<<0)
+#define CP_ownership                                1
+#define _CP_ownership                               (1<<1)
+#define CP_timestamps                               2
+#define _CP_timestamps                              (1<<2)
+#define CP_context                                  3
+#define _CP_context                                 (1<<3)
+#define CP_xattr                                    4
+#define _CP_xattr                                   (1<<4)
+#define DD_conv_fsync                                    0
+#define _DD_conv_fsync                                   (1<<0)
+#define DD_conv_noerror                                  1
+#define _DD_conv_noerror                                 (1<<1)
+#define DD_conv_notrunc                                  2
+#define _DD_conv_notrunc                                 (1<<2)
+#define DD_conv_sync                                     3
+#define _DD_conv_sync                                    (1<<3)
+#define DD_iflag_count_bytes                              0
+#define _DD_iflag_count_bytes                             (1<<0)
+#define DD_iflag_skip_bytes                               1
+#define _DD_iflag_skip_bytes                              (1<<1)
+#define DD_oflag_seek_bytes                               0
+#define _DD_oflag_seek_bytes                              (1<<0)
+#define PS_PID                                      0
+#define _PS_PID                                     (1<<0)
+#define PS_PPID                                     1
+#define _PS_PPID                                    (1<<1)
+#define PS_PRI                                      2
+#define _PS_PRI                                     (1<<2)
+#define PS_NI                                       3
+#define _PS_NI                                      (1<<3)
+#define PS_ADDR                                     4
+#define _PS_ADDR                                    (1<<4)
+#define PS_SZ                                       5
+#define _PS_SZ                                      (1<<5)
+#define PS_RSS                                      6
+#define _PS_RSS                                     (1<<6)
+#define PS_PGID                                     7
+#define _PS_PGID                                    (1<<7)
+#define PS_VSZ                                      8
+#define _PS_VSZ                                     (1<<8)
+#define PS_MAJFL                                    9
+#define _PS_MAJFL                                   (1<<9)
+#define PS_MINFL                                    10
+#define _PS_MINFL                                   (1<<10)
+#define PS_PR                                       11
+#define _PS_PR                                      (1<<11)
+#define PS_PSR                                      12
+#define _PS_PSR                                     (1<<12)
+#define PS_RTPRIO                                   13
+#define _PS_RTPRIO                                  (1<<13)
+#define PS_SCH                                      14
+#define _PS_SCH                                     (1<<14)
+#define PS_CPU                                      15
+#define _PS_CPU                                     (1<<15)
+#define PS_TID                                      16
+#define _PS_TID                                     (1<<16)
+#define PS_TCNT                                     17
+#define _PS_TCNT                                    (1<<17)
+#define PS_BIT                                      18
+#define _PS_BIT                                     (1<<18)
+#define PS_TTY                                      19
+#define _PS_TTY                                     (1<<19)
+#define PS_WCHAN                                    20
+#define _PS_WCHAN                                   (1<<20)
+#define PS_LABEL                                    21
+#define _PS_LABEL                                   (1<<21)
+#define PS_COMM                                     22
+#define _PS_COMM                                    (1<<22)
+#define PS_NAME                                     23
+#define _PS_NAME                                    (1<<23)
+#define PS_COMMAND                                  24
+#define _PS_COMMAND                                 (1<<24)
+#define PS_CMDLINE                                  25
+#define _PS_CMDLINE                                 (1<<25)
+#define PS_ARGS                                     26
+#define _PS_ARGS                                    (1<<26)
+#define PS_CMD                                      27
+#define _PS_CMD                                     (1<<27)
+#define PS_UID                                      28
+#define _PS_UID                                     (1<<28)
+#define PS_USER                                     29
+#define _PS_USER                                    (1<<29)
+#define PS_RUID                                     30
+#define _PS_RUID                                    (1<<30)
+#define PS_RUSER                                    31
+#define _PS_RUSER                                   (1<<31)
+#define PS_GID                                      32
+#define _PS_GID                                     (1LL<<32)
+#define PS_GROUP                                    33
+#define _PS_GROUP                                   (1LL<<33)
+#define PS_RGID                                     34
+#define _PS_RGID                                    (1LL<<34)
+#define PS_RGROUP                                   35
+#define _PS_RGROUP                                  (1LL<<35)
+#define PS_TIME                                     36
+#define _PS_TIME                                    (1LL<<36)
+#define PS_ELAPSED                                  37
+#define _PS_ELAPSED                                 (1LL<<37)
+#define PS_TIME_                                    38
+#define _PS_TIME_                                   (1LL<<38)
+#define PS_C                                        39
+#define _PS_C                                       (1LL<<39)
+#define PS__VSZ                                     40
+#define _PS__VSZ                                    (1LL<<40)
+#define PS__MEM                                     41
+#define _PS__MEM                                    (1LL<<41)
+#define PS__CPU                                     42
+#define _PS__CPU                                    (1LL<<42)
+#define PS_VIRT                                     43
+#define _PS_VIRT                                    (1LL<<43)
+#define PS_RES                                      44
+#define _PS_RES                                     (1LL<<44)
+#define PS_SHR                                      45
+#define _PS_SHR                                     (1LL<<45)
+#define PS_READ                                     46
+#define _PS_READ                                    (1LL<<46)
+#define PS_WRITE                                    47
+#define _PS_WRITE                                   (1LL<<47)
+#define PS_IO                                       48
+#define _PS_IO                                      (1LL<<48)
+#define PS_DREAD                                    49
+#define _PS_DREAD                                   (1LL<<49)
+#define PS_DWRITE                                   50
+#define _PS_DWRITE                                  (1LL<<50)
+#define PS_SWAP                                     51
+#define _PS_SWAP                                    (1LL<<51)
+#define PS_DIO                                      52
+#define _PS_DIO                                     (1LL<<52)
+#define PS_STIME                                    53
+#define _PS_STIME                                   (1LL<<53)
+#define PS_F                                        54
+#define _PS_F                                       (1LL<<54)
+#define PS_S                                        55
+#define _PS_S                                       (1LL<<55)
+#define PS_STAT                                     56
+#define _PS_STAT                                    (1LL<<56)
+#define PS_PCY                                      57
+#define _PS_PCY                                     (1LL<<57)
diff --git a/android/linux/generated/config.h b/android/linux/generated/config.h
new file mode 100644
index 0000000..3e2afb2
--- /dev/null
+++ b/android/linux/generated/config.h
@@ -0,0 +1,680 @@
+#define CFG_TOYBOX 1
+#define USE_TOYBOX(...) __VA_ARGS__
+#define CFG_TOYBOX_DEBUG 0
+#define USE_TOYBOX_DEBUG(...)
+#define CFG_TOYBOX_FLOAT 1
+#define USE_TOYBOX_FLOAT(...) __VA_ARGS__
+#define CFG_TOYBOX_FORK 1
+#define USE_TOYBOX_FORK(...) __VA_ARGS__
+#define CFG_TOYBOX_FREE 0
+#define USE_TOYBOX_FREE(...)
+#define CFG_TOYBOX_HELP_DASHDASH 1
+#define USE_TOYBOX_HELP_DASHDASH(...) __VA_ARGS__
+#define CFG_TOYBOX_HELP 1
+#define USE_TOYBOX_HELP(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBCRYPTO 1
+#define USE_TOYBOX_LIBCRYPTO(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBZ 1
+#define USE_TOYBOX_LIBZ(...) __VA_ARGS__
+#define CFG_TOYBOX_LSM_NONE 1
+#define USE_TOYBOX_LSM_NONE(...) __VA_ARGS__
+#define CFG_TOYBOX_NORECURSE 1
+#define USE_TOYBOX_NORECURSE(...) __VA_ARGS__
+#define CFG_TOYBOX_ON_ANDROID 0
+#define USE_TOYBOX_ON_ANDROID(...)
+#define CFG_TOYBOX_SELINUX 0
+#define USE_TOYBOX_SELINUX(...)
+#define CFG_TOYBOX_SMACK 0
+#define USE_TOYBOX_SMACK(...)
+#define CFG_TOYBOX_SUID 0
+#define USE_TOYBOX_SUID(...)
+#define CFG_TOYBOX_UID_SYS 100
+#define CFG_TOYBOX_UID_USR 500
+#define CFG_TOYBOX_ZHELP 0
+#define USE_TOYBOX_ZHELP(...)
+#define CFG_ACPI 0
+#define USE_ACPI(...)
+#define CFG_ARCH 0
+#define USE_ARCH(...)
+#define CFG_ARPING 0
+#define USE_ARPING(...)
+#define CFG_ARP 0
+#define USE_ARP(...)
+#define CFG_ASCII 0
+#define USE_ASCII(...)
+#define CFG_BASE32 0
+#define USE_BASE32(...)
+#define CFG_BASE64 0
+#define USE_BASE64(...)
+#define CFG_BASENAME 1
+#define USE_BASENAME(...) __VA_ARGS__
+#define CFG_BC 0
+#define USE_BC(...)
+#define CFG_BLKDISCARD 0
+#define USE_BLKDISCARD(...)
+#define CFG_BLKID 0
+#define USE_BLKID(...)
+#define CFG_BLOCKDEV 0
+#define USE_BLOCKDEV(...)
+#define CFG_BOOTCHARTD 0
+#define USE_BOOTCHARTD(...)
+#define CFG_BRCTL 0
+#define USE_BRCTL(...)
+#define CFG_BUNZIP2 0
+#define USE_BUNZIP2(...)
+#define CFG_BZCAT 0
+#define USE_BZCAT(...)
+#define CFG_CAL 0
+#define USE_CAL(...)
+#define CFG_CAT 1
+#define USE_CAT(...) __VA_ARGS__
+#define CFG_CD 0
+#define USE_CD(...)
+#define CFG_CHATTR 0
+#define USE_CHATTR(...)
+#define CFG_CHCON 0
+#define USE_CHCON(...)
+#define CFG_CHGRP 0
+#define USE_CHGRP(...)
+#define CFG_CHMOD 1
+#define USE_CHMOD(...) __VA_ARGS__
+#define CFG_CHOWN 0
+#define USE_CHOWN(...)
+#define CFG_CHROOT 0
+#define USE_CHROOT(...)
+#define CFG_CHRT 0
+#define USE_CHRT(...)
+#define CFG_CHSH 0
+#define USE_CHSH(...)
+#define CFG_CHVT 0
+#define USE_CHVT(...)
+#define CFG_CKSUM 0
+#define USE_CKSUM(...)
+#define CFG_CLEAR 0
+#define USE_CLEAR(...)
+#define CFG_CMP 1
+#define USE_CMP(...) __VA_ARGS__
+#define CFG_COMM 1
+#define USE_COMM(...) __VA_ARGS__
+#define CFG_COUNT 0
+#define USE_COUNT(...)
+#define CFG_CPIO 1
+#define USE_CPIO(...) __VA_ARGS__
+#define CFG_CP 1
+#define USE_CP(...) __VA_ARGS__
+#define CFG_CRC32 0
+#define USE_CRC32(...)
+#define CFG_CROND 0
+#define USE_CROND(...)
+#define CFG_CRONTAB 0
+#define USE_CRONTAB(...)
+#define CFG_CSPLIT 0
+#define USE_CSPLIT(...)
+#define CFG_CUT 1
+#define USE_CUT(...) __VA_ARGS__
+#define CFG_DATE 1
+#define USE_DATE(...) __VA_ARGS__
+#define CFG_DD 1
+#define USE_DD(...) __VA_ARGS__
+#define CFG_DEALLOCVT 0
+#define USE_DEALLOCVT(...)
+#define CFG_DEBUG_DHCP 0
+#define USE_DEBUG_DHCP(...)
+#define CFG_DEMO_MANY_OPTIONS 0
+#define USE_DEMO_MANY_OPTIONS(...)
+#define CFG_DEMO_NUMBER 0
+#define USE_DEMO_NUMBER(...)
+#define CFG_DEMO_SCANKEY 0
+#define USE_DEMO_SCANKEY(...)
+#define CFG_DEMO_UTF8TOWC 0
+#define USE_DEMO_UTF8TOWC(...)
+#define CFG_DEVMEM 0
+#define USE_DEVMEM(...)
+#define CFG_DF 0
+#define USE_DF(...)
+#define CFG_DHCP6 0
+#define USE_DHCP6(...)
+#define CFG_DHCPD 0
+#define USE_DHCPD(...)
+#define CFG_DHCP 0
+#define USE_DHCP(...)
+#define CFG_DIFF 1
+#define USE_DIFF(...) __VA_ARGS__
+#define CFG_DIRNAME 1
+#define USE_DIRNAME(...) __VA_ARGS__
+#define CFG_DMESG 0
+#define USE_DMESG(...)
+#define CFG_DNSDOMAINNAME 0
+#define USE_DNSDOMAINNAME(...)
+#define CFG_DOS2UNIX 1
+#define USE_DOS2UNIX(...) __VA_ARGS__
+#define CFG_DUMPLEASES 0
+#define USE_DUMPLEASES(...)
+#define CFG_DU 1
+#define USE_DU(...) __VA_ARGS__
+#define CFG_ECHO 1
+#define USE_ECHO(...) __VA_ARGS__
+#define CFG_EGREP 1
+#define USE_EGREP(...) __VA_ARGS__
+#define CFG_EJECT 0
+#define USE_EJECT(...)
+#define CFG_ENV 1
+#define USE_ENV(...) __VA_ARGS__
+#define CFG_EXIT 0
+#define USE_EXIT(...)
+#define CFG_EXPAND 0
+#define USE_EXPAND(...)
+#define CFG_EXPR 1
+#define USE_EXPR(...) __VA_ARGS__
+#define CFG_FACTOR 0
+#define USE_FACTOR(...)
+#define CFG_FALLOCATE 0
+#define USE_FALLOCATE(...)
+#define CFG_FALSE 0
+#define USE_FALSE(...)
+#define CFG_FDISK 0
+#define USE_FDISK(...)
+#define CFG_FGREP 1
+#define USE_FGREP(...) __VA_ARGS__
+#define CFG_FILE 1
+#define USE_FILE(...) __VA_ARGS__
+#define CFG_FIND 1
+#define USE_FIND(...) __VA_ARGS__
+#define CFG_FLOCK 1
+#define USE_FLOCK(...) __VA_ARGS__
+#define CFG_FMT 0
+#define USE_FMT(...)
+#define CFG_FOLD 0
+#define USE_FOLD(...)
+#define CFG_FREE 0
+#define USE_FREE(...)
+#define CFG_FREERAMDISK 0
+#define USE_FREERAMDISK(...)
+#define CFG_FSCK 0
+#define USE_FSCK(...)
+#define CFG_FSFREEZE 0
+#define USE_FSFREEZE(...)
+#define CFG_FSTYPE 0
+#define USE_FSTYPE(...)
+#define CFG_FSYNC 0
+#define USE_FSYNC(...)
+#define CFG_FTPGET 0
+#define USE_FTPGET(...)
+#define CFG_FTPPUT 0
+#define USE_FTPPUT(...)
+#define CFG_GETCONF 1
+#define USE_GETCONF(...) __VA_ARGS__
+#define CFG_GETENFORCE 0
+#define USE_GETENFORCE(...)
+#define CFG_GETFATTR 0
+#define USE_GETFATTR(...)
+#define CFG_GETOPT 1
+#define USE_GETOPT(...) __VA_ARGS__
+#define CFG_GETTY 0
+#define USE_GETTY(...)
+#define CFG_GITCHECKOUT 0
+#define USE_GITCHECKOUT(...)
+#define CFG_GITCLONE 0
+#define USE_GITCLONE(...)
+#define CFG_GITCOMPAT 0
+#define USE_GITCOMPAT(...)
+#define CFG_GITFETCH 0
+#define USE_GITFETCH(...)
+#define CFG_GITINIT 0
+#define USE_GITINIT(...)
+#define CFG_GITREMOTE 0
+#define USE_GITREMOTE(...)
+#define CFG_GPIODETECT 0
+#define USE_GPIODETECT(...)
+#define CFG_GPIOFIND 0
+#define USE_GPIOFIND(...)
+#define CFG_GPIOGET 0
+#define USE_GPIOGET(...)
+#define CFG_GPIOINFO 0
+#define USE_GPIOINFO(...)
+#define CFG_GPIOSET 0
+#define USE_GPIOSET(...)
+#define CFG_GREP 1
+#define USE_GREP(...) __VA_ARGS__
+#define CFG_GROUPADD 0
+#define USE_GROUPADD(...)
+#define CFG_GROUPDEL 0
+#define USE_GROUPDEL(...)
+#define CFG_GROUPS 0
+#define USE_GROUPS(...)
+#define CFG_GUNZIP 0
+#define USE_GUNZIP(...)
+#define CFG_GZIP 1
+#define USE_GZIP(...) __VA_ARGS__
+#define CFG_HEAD 1
+#define USE_HEAD(...) __VA_ARGS__
+#define CFG_HELLO 0
+#define USE_HELLO(...)
+#define CFG_HELP 0
+#define USE_HELP(...)
+#define CFG_HEXDUMP 0
+#define USE_HEXDUMP(...)
+#define CFG_HEXEDIT 0
+#define USE_HEXEDIT(...)
+#define CFG_HD 0
+#define USE_HD(...)
+#define CFG_HOSTID 0
+#define USE_HOSTID(...)
+#define CFG_HOST 0
+#define USE_HOST(...)
+#define CFG_HOSTNAME 1
+#define USE_HOSTNAME(...) __VA_ARGS__
+#define CFG_HTTPD 0
+#define USE_HTTPD(...)
+#define CFG_HWCLOCK 0
+#define USE_HWCLOCK(...)
+#define CFG_I2CDETECT 0
+#define USE_I2CDETECT(...)
+#define CFG_I2CDUMP 0
+#define USE_I2CDUMP(...)
+#define CFG_I2CGET 0
+#define USE_I2CGET(...)
+#define CFG_I2CSET 0
+#define USE_I2CSET(...)
+#define CFG_I2CTRANSFER 0
+#define USE_I2CTRANSFER(...)
+#define CFG_ICONV 0
+#define USE_ICONV(...)
+#define CFG_ID 1
+#define USE_ID(...) __VA_ARGS__
+#define CFG_ID_Z 0
+#define USE_ID_Z(...)
+#define CFG_IFCONFIG 0
+#define USE_IFCONFIG(...)
+#define CFG_INIT 0
+#define USE_INIT(...)
+#define CFG_INOTIFYD 0
+#define USE_INOTIFYD(...)
+#define CFG_INSMOD 0
+#define USE_INSMOD(...)
+#define CFG_INSTALL 1
+#define USE_INSTALL(...) __VA_ARGS__
+#define CFG_IONICE 0
+#define USE_IONICE(...)
+#define CFG_IORENICE 0
+#define USE_IORENICE(...)
+#define CFG_IOTOP 0
+#define USE_IOTOP(...)
+#define CFG_IPCRM 0
+#define USE_IPCRM(...)
+#define CFG_IPCS 0
+#define USE_IPCS(...)
+#define CFG_IP 0
+#define USE_IP(...)
+#define CFG_KILLALL5 0
+#define USE_KILLALL5(...)
+#define CFG_KILLALL 0
+#define USE_KILLALL(...)
+#define CFG_KILL 0
+#define USE_KILL(...)
+#define CFG_KLOGD 0
+#define USE_KLOGD(...)
+#define CFG_KLOGD_SOURCE_RING_BUFFER 0
+#define USE_KLOGD_SOURCE_RING_BUFFER(...)
+#define CFG_LAST 0
+#define USE_LAST(...)
+#define CFG_LINK 0
+#define USE_LINK(...)
+#define CFG_LINUX32 0
+#define USE_LINUX32(...)
+#define CFG_LN 1
+#define USE_LN(...) __VA_ARGS__
+#define CFG_LOAD_POLICY 0
+#define USE_LOAD_POLICY(...)
+#define CFG_LOGGER 0
+#define USE_LOGGER(...)
+#define CFG_LOGIN 0
+#define USE_LOGIN(...)
+#define CFG_LOG 0
+#define USE_LOG(...)
+#define CFG_LOGNAME 0
+#define USE_LOGNAME(...)
+#define CFG_LOGPATH 0
+#define USE_LOGPATH(...)
+#define CFG_LOSETUP 0
+#define USE_LOSETUP(...)
+#define CFG_LSATTR 0
+#define USE_LSATTR(...)
+#define CFG_LSMOD 0
+#define USE_LSMOD(...)
+#define CFG_LSOF 0
+#define USE_LSOF(...)
+#define CFG_LSPCI 0
+#define USE_LSPCI(...)
+#define CFG_LSUSB 0
+#define USE_LSUSB(...)
+#define CFG_LS 1
+#define USE_LS(...) __VA_ARGS__
+#define CFG_MAKEDEVS 0
+#define USE_MAKEDEVS(...)
+#define CFG_MAN 0
+#define USE_MAN(...)
+#define CFG_MCOOKIE 0
+#define USE_MCOOKIE(...)
+#define CFG_MD5SUM 1
+#define USE_MD5SUM(...) __VA_ARGS__
+#define CFG_MDEV_CONF 0
+#define USE_MDEV_CONF(...)
+#define CFG_MDEV 0
+#define USE_MDEV(...)
+#define CFG_MEMEATER 0
+#define USE_MEMEATER(...)
+#define CFG_MICROCOM 1
+#define USE_MICROCOM(...) __VA_ARGS__
+#define CFG_MIX 0
+#define USE_MIX(...)
+#define CFG_MKDIR 1
+#define USE_MKDIR(...) __VA_ARGS__
+#define CFG_MKDIR_Z 0
+#define USE_MKDIR_Z(...)
+#define CFG_MKE2FS_EXTENDED 0
+#define USE_MKE2FS_EXTENDED(...)
+#define CFG_MKE2FS_GEN 0
+#define USE_MKE2FS_GEN(...)
+#define CFG_MKE2FS 0
+#define USE_MKE2FS(...)
+#define CFG_MKE2FS_JOURNAL 0
+#define USE_MKE2FS_JOURNAL(...)
+#define CFG_MKE2FS_LABEL 0
+#define USE_MKE2FS_LABEL(...)
+#define CFG_MKFIFO 0
+#define USE_MKFIFO(...)
+#define CFG_MKFIFO_Z 0
+#define USE_MKFIFO_Z(...)
+#define CFG_MKNOD 0
+#define USE_MKNOD(...)
+#define CFG_MKNOD_Z 0
+#define USE_MKNOD_Z(...)
+#define CFG_MKPASSWD 0
+#define USE_MKPASSWD(...)
+#define CFG_MKSWAP 0
+#define USE_MKSWAP(...)
+#define CFG_MKTEMP 1
+#define USE_MKTEMP(...) __VA_ARGS__
+#define CFG_MODINFO 0
+#define USE_MODINFO(...)
+#define CFG_MODPROBE 0
+#define USE_MODPROBE(...)
+#define CFG_MORE 0
+#define USE_MORE(...)
+#define CFG_MOUNT 0
+#define USE_MOUNT(...)
+#define CFG_MOUNTPOINT 0
+#define USE_MOUNTPOINT(...)
+#define CFG_MV 1
+#define USE_MV(...) __VA_ARGS__
+#define CFG_NBD_CLIENT 0
+#define USE_NBD_CLIENT(...)
+#define CFG_NBD_SERVER 0
+#define USE_NBD_SERVER(...)
+#define CFG_NETCAT 0
+#define USE_NETCAT(...)
+#define CFG_NETSTAT 0
+#define USE_NETSTAT(...)
+#define CFG_NICE 0
+#define USE_NICE(...)
+#define CFG_NL 1
+#define USE_NL(...) __VA_ARGS__
+#define CFG_NOHUP 0
+#define USE_NOHUP(...)
+#define CFG_NPROC 1
+#define USE_NPROC(...) __VA_ARGS__
+#define CFG_NSENTER 0
+#define USE_NSENTER(...)
+#define CFG_OD 1
+#define USE_OD(...) __VA_ARGS__
+#define CFG_ONEIT 0
+#define USE_ONEIT(...)
+#define CFG_OPENVT 0
+#define USE_OPENVT(...)
+#define CFG_PARTPROBE 0
+#define USE_PARTPROBE(...)
+#define CFG_PASSWD 0
+#define USE_PASSWD(...)
+#define CFG_PASSWD_SAD 0
+#define USE_PASSWD_SAD(...)
+#define CFG_PASTE 1
+#define USE_PASTE(...) __VA_ARGS__
+#define CFG_PATCH 1
+#define USE_PATCH(...) __VA_ARGS__
+#define CFG_PGREP 1
+#define USE_PGREP(...) __VA_ARGS__
+#define CFG_PIDOF 0
+#define USE_PIDOF(...)
+#define CFG_PING 0
+#define USE_PING(...)
+#define CFG_PIVOT_ROOT 0
+#define USE_PIVOT_ROOT(...)
+#define CFG_PKILL 1
+#define USE_PKILL(...) __VA_ARGS__
+#define CFG_PMAP 0
+#define USE_PMAP(...)
+#define CFG_PRINTENV 0
+#define USE_PRINTENV(...)
+#define CFG_PRINTF 1
+#define USE_PRINTF(...) __VA_ARGS__
+#define CFG_PS 1
+#define USE_PS(...) __VA_ARGS__
+#define CFG_PWDX 0
+#define USE_PWDX(...)
+#define CFG_PWD 1
+#define USE_PWD(...) __VA_ARGS__
+#define CFG_PWGEN 0
+#define USE_PWGEN(...)
+#define CFG_READAHEAD 0
+#define USE_READAHEAD(...)
+#define CFG_READELF 0
+#define USE_READELF(...)
+#define CFG_READLINK 1
+#define USE_READLINK(...) __VA_ARGS__
+#define CFG_REALPATH 1
+#define USE_REALPATH(...) __VA_ARGS__
+#define CFG_REBOOT 0
+#define USE_REBOOT(...)
+#define CFG_RENICE 0
+#define USE_RENICE(...)
+#define CFG_RESET 0
+#define USE_RESET(...)
+#define CFG_RESTORECON 0
+#define USE_RESTORECON(...)
+#define CFG_REV 0
+#define USE_REV(...)
+#define CFG_RFKILL 0
+#define USE_RFKILL(...)
+#define CFG_RMDIR 1
+#define USE_RMDIR(...) __VA_ARGS__
+#define CFG_RMMOD 0
+#define USE_RMMOD(...)
+#define CFG_RM 1
+#define USE_RM(...) __VA_ARGS__
+#define CFG_ROUTE 0
+#define USE_ROUTE(...)
+#define CFG_RTCWAKE 0
+#define USE_RTCWAKE(...)
+#define CFG_RUNCON 0
+#define USE_RUNCON(...)
+#define CFG_SED 1
+#define USE_SED(...) __VA_ARGS__
+#define CFG_SENDEVENT 0
+#define USE_SENDEVENT(...)
+#define CFG_SEQ 1
+#define USE_SEQ(...) __VA_ARGS__
+#define CFG_SETENFORCE 0
+#define USE_SETENFORCE(...)
+#define CFG_SETFATTR 0
+#define USE_SETFATTR(...)
+#define CFG_SETSID 1
+#define USE_SETSID(...) __VA_ARGS__
+#define CFG_SHA1SUM 1
+#define USE_SHA1SUM(...) __VA_ARGS__
+#define CFG_SHA224SUM 0
+#define USE_SHA224SUM(...)
+#define CFG_SHA256SUM 1
+#define USE_SHA256SUM(...) __VA_ARGS__
+#define CFG_SHA3SUM 0
+#define USE_SHA3SUM(...)
+#define CFG_SHA384SUM 0
+#define USE_SHA384SUM(...)
+#define CFG_SHA512SUM 1
+#define USE_SHA512SUM(...) __VA_ARGS__
+#define CFG_SH 0
+#define USE_SH(...)
+#define CFG_SHRED 0
+#define USE_SHRED(...)
+#define CFG_SHUF 0
+#define USE_SHUF(...)
+#define CFG_SKELETON_ALIAS 0
+#define USE_SKELETON_ALIAS(...)
+#define CFG_SKELETON 0
+#define USE_SKELETON(...)
+#define CFG_SLEEP 1
+#define USE_SLEEP(...) __VA_ARGS__
+#define CFG_SNTP 0
+#define USE_SNTP(...)
+#define CFG_SORT_FLOAT 1
+#define USE_SORT_FLOAT(...) __VA_ARGS__
+#define CFG_SORT 1
+#define USE_SORT(...) __VA_ARGS__
+#define CFG_SPLIT 0
+#define USE_SPLIT(...)
+#define CFG_STAT 1
+#define USE_STAT(...) __VA_ARGS__
+#define CFG_STRACE 0
+#define USE_STRACE(...)
+#define CFG_STRINGS 0
+#define USE_STRINGS(...)
+#define CFG_STTY 0
+#define USE_STTY(...)
+#define CFG_SU 0
+#define USE_SU(...)
+#define CFG_SULOGIN 0
+#define USE_SULOGIN(...)
+#define CFG_SWAPOFF 0
+#define USE_SWAPOFF(...)
+#define CFG_SWAPON 0
+#define USE_SWAPON(...)
+#define CFG_SWITCH_ROOT 0
+#define USE_SWITCH_ROOT(...)
+#define CFG_SYNC 0
+#define USE_SYNC(...)
+#define CFG_SYSCTL 0
+#define USE_SYSCTL(...)
+#define CFG_SYSLOGD 0
+#define USE_SYSLOGD(...)
+#define CFG_TAC 0
+#define USE_TAC(...)
+#define CFG_TAIL 1
+#define USE_TAIL(...) __VA_ARGS__
+#define CFG_TAR 1
+#define USE_TAR(...) __VA_ARGS__
+#define CFG_TASKSET 0
+#define USE_TASKSET(...)
+#define CFG_TCPSVD 0
+#define USE_TCPSVD(...)
+#define CFG_TEE 1
+#define USE_TEE(...) __VA_ARGS__
+#define CFG_TELNETD 0
+#define USE_TELNETD(...)
+#define CFG_TELNET 0
+#define USE_TELNET(...)
+#define CFG_TEST 1
+#define USE_TEST(...) __VA_ARGS__
+#define CFG_TEST_GLUE 1
+#define USE_TEST_GLUE(...) __VA_ARGS__
+#define CFG_TFTPD 0
+#define USE_TFTPD(...)
+#define CFG_TFTP 0
+#define USE_TFTP(...)
+#define CFG_TIME 0
+#define USE_TIME(...)
+#define CFG_TIMEOUT 1
+#define USE_TIMEOUT(...) __VA_ARGS__
+#define CFG_TOP 0
+#define USE_TOP(...)
+#define CFG_TOUCH 1
+#define USE_TOUCH(...) __VA_ARGS__
+#define CFG_TRACEROUTE 0
+#define USE_TRACEROUTE(...)
+#define CFG_TRUE 1
+#define USE_TRUE(...) __VA_ARGS__
+#define CFG_TRUNCATE 1
+#define USE_TRUNCATE(...) __VA_ARGS__
+#define CFG_TR 1
+#define USE_TR(...) __VA_ARGS__
+#define CFG_TS 0
+#define USE_TS(...)
+#define CFG_TSORT 0
+#define USE_TSORT(...)
+#define CFG_TTY 0
+#define USE_TTY(...)
+#define CFG_TUNCTL 0
+#define USE_TUNCTL(...)
+#define CFG_UCLAMPSET 0
+#define USE_UCLAMPSET(...)
+#define CFG_ULIMIT 0
+#define USE_ULIMIT(...)
+#define CFG_UMOUNT 0
+#define USE_UMOUNT(...)
+#define CFG_UNAME 1
+#define USE_UNAME(...) __VA_ARGS__
+#define CFG_UNICODE 0
+#define USE_UNICODE(...)
+#define CFG_UNIQ 1
+#define USE_UNIQ(...) __VA_ARGS__
+#define CFG_UNIX2DOS 1
+#define USE_UNIX2DOS(...) __VA_ARGS__
+#define CFG_UNLINK 0
+#define USE_UNLINK(...)
+#define CFG_UNSHARE 0
+#define USE_UNSHARE(...)
+#define CFG_UPTIME 0
+#define USE_UPTIME(...)
+#define CFG_USERADD 0
+#define USE_USERADD(...)
+#define CFG_USERDEL 0
+#define USE_USERDEL(...)
+#define CFG_USLEEP 0
+#define USE_USLEEP(...)
+#define CFG_UUDECODE 0
+#define USE_UUDECODE(...)
+#define CFG_UUENCODE 0
+#define USE_UUENCODE(...)
+#define CFG_UUIDGEN 0
+#define USE_UUIDGEN(...)
+#define CFG_VCONFIG 0
+#define USE_VCONFIG(...)
+#define CFG_VI 0
+#define USE_VI(...)
+#define CFG_VMSTAT 0
+#define USE_VMSTAT(...)
+#define CFG_WATCH 0
+#define USE_WATCH(...)
+#define CFG_WATCHDOG 0
+#define USE_WATCHDOG(...)
+#define CFG_WC 1
+#define USE_WC(...) __VA_ARGS__
+#define CFG_WGET 0
+#define USE_WGET(...)
+#define CFG_WHICH 1
+#define USE_WHICH(...) __VA_ARGS__
+#define CFG_WHOAMI 1
+#define USE_WHOAMI(...) __VA_ARGS__
+#define CFG_WHO 0
+#define USE_WHO(...)
+#define CFG_W 0
+#define USE_W(...)
+#define CFG_XARGS 1
+#define USE_XARGS(...) __VA_ARGS__
+#define CFG_XXD 1
+#define USE_XXD(...) __VA_ARGS__
+#define CFG_XZCAT 0
+#define USE_XZCAT(...)
+#define CFG_YES 0
+#define USE_YES(...)
+#define CFG_ZCAT 1
+#define USE_ZCAT(...) __VA_ARGS__
diff --git a/android/linux/generated/flags.h b/android/linux/generated/flags.h
new file mode 100644
index 0000000..125b74d
--- /dev/null
+++ b/android/linux/generated/flags.h
@@ -0,0 +1,7538 @@
+#undef FORCED_FLAG
+#ifdef FORCE_FLAGS
+#define FORCED_FLAG 1LL
+#else
+#define FORCED_FLAG 0LL
+#endif
+
+// acpi   abctV
+#undef OPTSTR_acpi
+#define OPTSTR_acpi "abctV"
+#ifdef CLEANUP_acpi
+#undef CLEANUP_acpi
+#undef FOR_acpi
+#undef FLAG_V
+#undef FLAG_t
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// arch    
+#undef OPTSTR_arch
+#define OPTSTR_arch 0
+#ifdef CLEANUP_arch
+#undef CLEANUP_arch
+#undef FOR_arch
+#endif
+
+// arp   vi:nDsdap:A:H:[+Ap][!sd]
+#undef OPTSTR_arp
+#define OPTSTR_arp "vi:nDsdap:A:H:[+Ap][!sd]"
+#ifdef CLEANUP_arp
+#undef CLEANUP_arp
+#undef FOR_arp
+#undef FLAG_H
+#undef FLAG_A
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_D
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_v
+#endif
+
+// arping   <1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]
+#undef OPTSTR_arping
+#define OPTSTR_arping "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]"
+#ifdef CLEANUP_arping
+#undef CLEANUP_arping
+#undef FOR_arping
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_U
+#undef FLAG_A
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_I
+#undef FLAG_s
+#endif
+
+// ascii    
+#undef OPTSTR_ascii
+#define OPTSTR_ascii 0
+#ifdef CLEANUP_ascii
+#undef CLEANUP_ascii
+#undef FOR_ascii
+#endif
+
+// base32   diw#<0=76[!dw]
+#undef OPTSTR_base32
+#define OPTSTR_base32 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base32
+#undef CLEANUP_base32
+#undef FOR_base32
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// base64   diw#<0=76[!dw]
+#undef OPTSTR_base64
+#define OPTSTR_base64 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base64
+#undef CLEANUP_base64
+#undef FOR_base64
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// basename ^<1as: ^<1as:
+#undef OPTSTR_basename
+#define OPTSTR_basename "^<1as:"
+#ifdef CLEANUP_basename
+#undef CLEANUP_basename
+#undef FOR_basename
+#undef FLAG_s
+#undef FLAG_a
+#endif
+
+// bc   i(interactive)l(mathlib)q(quiet)s(standard)w(warn)
+#undef OPTSTR_bc
+#define OPTSTR_bc "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)"
+#ifdef CLEANUP_bc
+#undef CLEANUP_bc
+#undef FOR_bc
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#endif
+
+// blkdiscard   <1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]
+#undef OPTSTR_blkdiscard
+#define OPTSTR_blkdiscard "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]"
+#ifdef CLEANUP_blkdiscard
+#undef CLEANUP_blkdiscard
+#undef FOR_blkdiscard
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_f
+#endif
+
+// blkid   ULo:s*[!LU]
+#undef OPTSTR_blkid
+#define OPTSTR_blkid "ULo:s*[!LU]"
+#ifdef CLEANUP_blkid
+#undef CLEANUP_blkid
+#undef FOR_blkid
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_L
+#undef FLAG_U
+#endif
+
+// blockdev   <1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)
+#undef OPTSTR_blockdev
+#define OPTSTR_blockdev "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)"
+#ifdef CLEANUP_blockdev
+#undef CLEANUP_blockdev
+#undef FOR_blockdev
+#undef FLAG_rereadpt
+#undef FLAG_flushbufs
+#undef FLAG_setra
+#undef FLAG_getra
+#undef FLAG_getsize64
+#undef FLAG_getsize
+#undef FLAG_getsz
+#undef FLAG_setbsz
+#undef FLAG_getbsz
+#undef FLAG_getss
+#undef FLAG_getro
+#undef FLAG_setrw
+#undef FLAG_setro
+#endif
+
+// bootchartd    
+#undef OPTSTR_bootchartd
+#define OPTSTR_bootchartd 0
+#ifdef CLEANUP_bootchartd
+#undef CLEANUP_bootchartd
+#undef FOR_bootchartd
+#endif
+
+// brctl   <1
+#undef OPTSTR_brctl
+#define OPTSTR_brctl "<1"
+#ifdef CLEANUP_brctl
+#undef CLEANUP_brctl
+#undef FOR_brctl
+#endif
+
+// bunzip2   cftkv
+#undef OPTSTR_bunzip2
+#define OPTSTR_bunzip2 "cftkv"
+#ifdef CLEANUP_bunzip2
+#undef CLEANUP_bunzip2
+#undef FOR_bunzip2
+#undef FLAG_v
+#undef FLAG_k
+#undef FLAG_t
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// bzcat    
+#undef OPTSTR_bzcat
+#define OPTSTR_bzcat 0
+#ifdef CLEANUP_bzcat
+#undef CLEANUP_bzcat
+#undef FOR_bzcat
+#endif
+
+// cal   >3h
+#undef OPTSTR_cal
+#define OPTSTR_cal ">3h"
+#ifdef CLEANUP_cal
+#undef CLEANUP_cal
+#undef FOR_cal
+#undef FLAG_h
+#endif
+
+// cat uvte uvte
+#undef OPTSTR_cat
+#define OPTSTR_cat "uvte"
+#ifdef CLEANUP_cat
+#undef CLEANUP_cat
+#undef FOR_cat
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_u
+#endif
+
+// cd   >1LP[-LP]
+#undef OPTSTR_cd
+#define OPTSTR_cd ">1LP[-LP]"
+#ifdef CLEANUP_cd
+#undef CLEANUP_cd
+#undef FOR_cd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// chattr   ?p#v#R
+#undef OPTSTR_chattr
+#define OPTSTR_chattr "?p#v#R"
+#ifdef CLEANUP_chattr
+#undef CLEANUP_chattr
+#undef FOR_chattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// chcon   <2hvR
+#undef OPTSTR_chcon
+#define OPTSTR_chcon "<2hvR"
+#ifdef CLEANUP_chcon
+#undef CLEANUP_chcon
+#undef FOR_chcon
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_h
+#endif
+
+// chgrp   <2h(no-dereference)PLHRfv[-HLP]
+#undef OPTSTR_chgrp
+#define OPTSTR_chgrp "<2h(no-dereference)PLHRfv[-HLP]"
+#ifdef CLEANUP_chgrp
+#undef CLEANUP_chgrp
+#undef FOR_chgrp
+#undef FLAG_v
+#undef FLAG_f
+#undef FLAG_R
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_h
+#endif
+
+// chmod <2?vfR[-vf] <2?vfR[-vf]
+#undef OPTSTR_chmod
+#define OPTSTR_chmod "<2?vfR[-vf]"
+#ifdef CLEANUP_chmod
+#undef CLEANUP_chmod
+#undef FOR_chmod
+#undef FLAG_R
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// chroot   ^<1
+#undef OPTSTR_chroot
+#define OPTSTR_chroot "^<1"
+#ifdef CLEANUP_chroot
+#undef CLEANUP_chroot
+#undef FOR_chroot
+#endif
+
+// chrt   ^mp#<0iRbrfo[!ibrfo]
+#undef OPTSTR_chrt
+#define OPTSTR_chrt "^mp#<0iRbrfo[!ibrfo]"
+#ifdef CLEANUP_chrt
+#undef CLEANUP_chrt
+#undef FOR_chrt
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_m
+#endif
+
+// chsh   >1R:s:a
+#undef OPTSTR_chsh
+#define OPTSTR_chsh ">1R:s:a"
+#ifdef CLEANUP_chsh
+#undef CLEANUP_chsh
+#undef FOR_chsh
+#undef FLAG_a
+#undef FLAG_s
+#undef FLAG_R
+#endif
+
+// chvt   <1>1
+#undef OPTSTR_chvt
+#define OPTSTR_chvt "<1>1"
+#ifdef CLEANUP_chvt
+#undef CLEANUP_chvt
+#undef FOR_chvt
+#endif
+
+// cksum   HIPLN
+#undef OPTSTR_cksum
+#define OPTSTR_cksum "HIPLN"
+#ifdef CLEANUP_cksum
+#undef CLEANUP_cksum
+#undef FOR_cksum
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_I
+#undef FLAG_H
+#endif
+
+// clear    
+#undef OPTSTR_clear
+#define OPTSTR_clear 0
+#ifdef CLEANUP_clear
+#undef CLEANUP_clear
+#undef FOR_clear
+#endif
+
+// cmp <1>4ls(silent)(quiet)n#<1[!ls] <1>4ls(silent)(quiet)n#<1[!ls]
+#undef OPTSTR_cmp
+#define OPTSTR_cmp "<1>4ls(silent)(quiet)n#<1[!ls]"
+#ifdef CLEANUP_cmp
+#undef CLEANUP_cmp
+#undef FOR_cmp
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// comm <2>2321 <2>2321
+#undef OPTSTR_comm
+#define OPTSTR_comm "<2>2321"
+#ifdef CLEANUP_comm
+#undef CLEANUP_comm
+#undef FOR_comm
+#undef FLAG_1
+#undef FLAG_2
+#undef FLAG_3
+#endif
+
+// count   <0>0l
+#undef OPTSTR_count
+#define OPTSTR_count "<0>0l"
+#ifdef CLEANUP_count
+#undef CLEANUP_count
+#undef FOR_count
+#undef FLAG_l
+#endif
+
+// cp <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr] <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]
+#undef OPTSTR_cp
+#define OPTSTR_cp "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]"
+#ifdef CLEANUP_cp
+#undef CLEANUP_cp
+#undef FOR_cp
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_R
+#undef FLAG_D
+#undef FLAG_preserve
+#endif
+
+// cpio (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF] (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]
+#undef OPTSTR_cpio
+#define OPTSTR_cpio "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]"
+#ifdef CLEANUP_cpio
+#undef CLEANUP_cpio
+#undef FOR_cpio
+#undef FLAG_o
+#undef FLAG_v
+#undef FLAG_F
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_m
+#undef FLAG_R
+#undef FLAG_no_preserve_owner
+#undef FLAG_quiet
+#undef FLAG_renumber_inodes
+#undef FLAG_ignore_devno
+#endif
+
+// crc32    
+#undef OPTSTR_crc32
+#define OPTSTR_crc32 0
+#ifdef CLEANUP_crc32
+#undef CLEANUP_crc32
+#undef FOR_crc32
+#endif
+
+// crond   fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]
+#undef OPTSTR_crond
+#define OPTSTR_crond "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]"
+#ifdef CLEANUP_crond
+#undef CLEANUP_crond
+#undef FOR_crond
+#undef FLAG_c
+#undef FLAG_L
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_S
+#undef FLAG_b
+#undef FLAG_f
+#endif
+
+// crontab   c:u:elr[!elr]
+#undef OPTSTR_crontab
+#define OPTSTR_crontab "c:u:elr[!elr]"
+#ifdef CLEANUP_crontab
+#undef CLEANUP_crontab
+#undef FOR_crontab
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_e
+#undef FLAG_u
+#undef FLAG_c
+#endif
+
+// csplit   <2skf:n#
+#undef OPTSTR_csplit
+#define OPTSTR_csplit "<2skf:n#"
+#ifdef CLEANUP_csplit
+#undef CLEANUP_csplit
+#undef FOR_csplit
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_k
+#undef FLAG_s
+#endif
+
+// cut b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF] b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]
+#undef OPTSTR_cut
+#define OPTSTR_cut "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]"
+#ifdef CLEANUP_cut
+#undef CLEANUP_cut
+#undef FOR_cut
+#undef FLAG_n
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_O
+#undef FLAG_C
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// date >1d:D:I(iso-8601):;r:s:u(utc)[!dr] >1d:D:I(iso-8601):;r:s:u(utc)[!dr]
+#undef OPTSTR_date
+#define OPTSTR_date ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]"
+#ifdef CLEANUP_date
+#undef CLEANUP_date
+#undef FOR_date
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_I
+#undef FLAG_D
+#undef FLAG_d
+#endif
+
+// dd    
+#undef OPTSTR_dd
+#define OPTSTR_dd 0
+#ifdef CLEANUP_dd
+#undef CLEANUP_dd
+#undef FOR_dd
+#endif
+
+// deallocvt   >1
+#undef OPTSTR_deallocvt
+#define OPTSTR_deallocvt ">1"
+#ifdef CLEANUP_deallocvt
+#undef CLEANUP_deallocvt
+#undef FOR_deallocvt
+#endif
+
+// declare   pAailunxr
+#undef OPTSTR_declare
+#define OPTSTR_declare "pAailunxr"
+#ifdef CLEANUP_declare
+#undef CLEANUP_declare
+#undef FOR_declare
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_p
+#endif
+
+// demo_many_options   ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba
+#undef OPTSTR_demo_many_options
+#define OPTSTR_demo_many_options "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba"
+#ifdef CLEANUP_demo_many_options
+#undef CLEANUP_demo_many_options
+#undef FOR_demo_many_options
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_i
+#undef FLAG_j
+#undef FLAG_k
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_o
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_y
+#undef FLAG_z
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_D
+#undef FLAG_E
+#undef FLAG_F
+#undef FLAG_G
+#undef FLAG_H
+#undef FLAG_I
+#undef FLAG_J
+#undef FLAG_K
+#undef FLAG_L
+#undef FLAG_M
+#undef FLAG_N
+#undef FLAG_O
+#undef FLAG_P
+#undef FLAG_Q
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_T
+#undef FLAG_U
+#undef FLAG_V
+#undef FLAG_W
+#undef FLAG_X
+#undef FLAG_Y
+#undef FLAG_Z
+#endif
+
+// demo_number   D#=3<3M#<0hcdbs
+#undef OPTSTR_demo_number
+#define OPTSTR_demo_number "D#=3<3M#<0hcdbs"
+#ifdef CLEANUP_demo_number
+#undef CLEANUP_demo_number
+#undef FOR_demo_number
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_h
+#undef FLAG_M
+#undef FLAG_D
+#endif
+
+// demo_scankey    
+#undef OPTSTR_demo_scankey
+#define OPTSTR_demo_scankey 0
+#ifdef CLEANUP_demo_scankey
+#undef CLEANUP_demo_scankey
+#undef FOR_demo_scankey
+#endif
+
+// demo_utf8towc    
+#undef OPTSTR_demo_utf8towc
+#define OPTSTR_demo_utf8towc 0
+#ifdef CLEANUP_demo_utf8towc
+#undef CLEANUP_demo_utf8towc
+#undef FOR_demo_utf8towc
+#endif
+
+// devmem   <1>3
+#undef OPTSTR_devmem
+#define OPTSTR_devmem "<1>3"
+#ifdef CLEANUP_devmem
+#undef CLEANUP_devmem
+#undef FOR_devmem
+#endif
+
+// df   HPkhit*a[-HPh]
+#undef OPTSTR_df
+#define OPTSTR_df "HPkhit*a[-HPh]"
+#ifdef CLEANUP_df
+#undef CLEANUP_df
+#undef FOR_df
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_k
+#undef FLAG_P
+#undef FLAG_H
+#endif
+
+// dhcp   V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf
+#undef OPTSTR_dhcp
+#define OPTSTR_dhcp "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf"
+#ifdef CLEANUP_dhcp
+#undef CLEANUP_dhcp
+#undef FOR_dhcp
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_C
+#undef FLAG_R
+#undef FLAG_B
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_O
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_F
+#undef FLAG_H
+#undef FLAG_V
+#endif
+
+// dhcp6   r:A#<0T#<0t#<0s:p:i:SRvqnbf
+#undef OPTSTR_dhcp6
+#define OPTSTR_dhcp6 "r:A#<0T#<0t#<0s:p:i:SRvqnbf"
+#ifdef CLEANUP_dhcp6
+#undef CLEANUP_dhcp6
+#undef FOR_dhcp6
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_r
+#endif
+
+// dhcpd   >1P#<0>65535fi:S46[!46]
+#undef OPTSTR_dhcpd
+#define OPTSTR_dhcpd ">1P#<0>65535fi:S46[!46]"
+#ifdef CLEANUP_dhcpd
+#undef CLEANUP_dhcpd
+#undef FOR_dhcpd
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_P
+#endif
+
+// diff <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3 <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3
+#undef OPTSTR_diff
+#define OPTSTR_diff "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3"
+#ifdef CLEANUP_diff
+#undef CLEANUP_diff
+#undef FOR_diff
+#undef FLAG_U
+#undef FLAG_r
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_F
+#undef FLAG_S
+#undef FLAG_a
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_T
+#undef FLAG_i
+#undef FLAG_w
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_B
+#undef FLAG_strip_trailing_cr
+#undef FLAG_color
+#undef FLAG_new_line_format
+#undef FLAG_old_line_format
+#undef FLAG_unchanged_line_format
+#endif
+
+// dirname <1 <1
+#undef OPTSTR_dirname
+#define OPTSTR_dirname "<1"
+#ifdef CLEANUP_dirname
+#undef CLEANUP_dirname
+#undef FOR_dirname
+#endif
+
+// dmesg   w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]
+#undef OPTSTR_dmesg
+#define OPTSTR_dmesg "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]"
+#ifdef CLEANUP_dmesg
+#undef CLEANUP_dmesg
+#undef FOR_dmesg
+#undef FLAG_c
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_C
+#undef FLAG_w
+#endif
+
+// dnsdomainname   >0
+#undef OPTSTR_dnsdomainname
+#define OPTSTR_dnsdomainname ">0"
+#ifdef CLEANUP_dnsdomainname
+#undef CLEANUP_dnsdomainname
+#undef FOR_dnsdomainname
+#endif
+
+// dos2unix    
+#undef OPTSTR_dos2unix
+#define OPTSTR_dos2unix 0
+#ifdef CLEANUP_dos2unix
+#undef CLEANUP_dos2unix
+#undef FOR_dos2unix
+#endif
+
+// du d#<0=-1hmlcaHkKLsxb[-HL][-kKmh] d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]
+#undef OPTSTR_du
+#define OPTSTR_du "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]"
+#ifdef CLEANUP_du
+#undef CLEANUP_du
+#undef FOR_du
+#undef FLAG_b
+#undef FLAG_x
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_h
+#undef FLAG_d
+#endif
+
+// dumpleases   >0arf:[!ar]
+#undef OPTSTR_dumpleases
+#define OPTSTR_dumpleases ">0arf:[!ar]"
+#ifdef CLEANUP_dumpleases
+#undef CLEANUP_dumpleases
+#undef FOR_dumpleases
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_a
+#endif
+
+// echo ^?Een[-eE] ^?Een[-eE]
+#undef OPTSTR_echo
+#define OPTSTR_echo "^?Een[-eE]"
+#ifdef CLEANUP_echo
+#undef CLEANUP_echo
+#undef FOR_echo
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_E
+#endif
+
+// eject   >1stT[!tT]
+#undef OPTSTR_eject
+#define OPTSTR_eject ">1stT[!tT]"
+#ifdef CLEANUP_eject
+#undef CLEANUP_eject
+#undef FOR_eject
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#endif
+
+// env ^e:i0u* ^e:i0u*
+#undef OPTSTR_env
+#define OPTSTR_env "^e:i0u*"
+#ifdef CLEANUP_env
+#undef CLEANUP_env
+#undef FOR_env
+#undef FLAG_u
+#undef FLAG_0
+#undef FLAG_i
+#undef FLAG_e
+#endif
+
+// eval    
+#undef OPTSTR_eval
+#define OPTSTR_eval 0
+#ifdef CLEANUP_eval
+#undef CLEANUP_eval
+#undef FOR_eval
+#endif
+
+// exec   ^cla:
+#undef OPTSTR_exec
+#define OPTSTR_exec "^cla:"
+#ifdef CLEANUP_exec
+#undef CLEANUP_exec
+#undef FOR_exec
+#undef FLAG_a
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// exit    
+#undef OPTSTR_exit
+#define OPTSTR_exit 0
+#ifdef CLEANUP_exit
+#undef CLEANUP_exit
+#undef FOR_exit
+#endif
+
+// expand   t*
+#undef OPTSTR_expand
+#define OPTSTR_expand "t*"
+#ifdef CLEANUP_expand
+#undef CLEANUP_expand
+#undef FOR_expand
+#undef FLAG_t
+#endif
+
+// export   np
+#undef OPTSTR_export
+#define OPTSTR_export "np"
+#ifdef CLEANUP_export
+#undef CLEANUP_export
+#undef FOR_export
+#undef FLAG_p
+#undef FLAG_n
+#endif
+
+// expr    
+#undef OPTSTR_expr
+#define OPTSTR_expr 0
+#ifdef CLEANUP_expr
+#undef CLEANUP_expr
+#undef FOR_expr
+#endif
+
+// factor   ?hx
+#undef OPTSTR_factor
+#define OPTSTR_factor "?hx"
+#ifdef CLEANUP_factor
+#undef CLEANUP_factor
+#undef FOR_factor
+#undef FLAG_x
+#undef FLAG_h
+#endif
+
+// fallocate   >1l#|o#
+#undef OPTSTR_fallocate
+#define OPTSTR_fallocate ">1l#|o#"
+#ifdef CLEANUP_fallocate
+#undef CLEANUP_fallocate
+#undef FOR_fallocate
+#undef FLAG_o
+#undef FLAG_l
+#endif
+
+// false    
+#undef OPTSTR_false
+#define OPTSTR_false 0
+#ifdef CLEANUP_false
+#undef CLEANUP_false
+#undef FOR_false
+#endif
+
+// fdisk   C#<0H#<0S#<0b#<512ul
+#undef OPTSTR_fdisk
+#define OPTSTR_fdisk "C#<0H#<0S#<0b#<512ul"
+#ifdef CLEANUP_fdisk
+#undef CLEANUP_fdisk
+#undef FOR_fdisk
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_S
+#undef FLAG_H
+#undef FLAG_C
+#endif
+
+// file <1b(brief)hLs[!hL] <1b(brief)hLs[!hL]
+#undef OPTSTR_file
+#define OPTSTR_file "<1b(brief)hLs[!hL]"
+#ifdef CLEANUP_file
+#undef CLEANUP_file
+#undef FOR_file
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_h
+#undef FLAG_b
+#endif
+
+// find ?^HL[-HL] ?^HL[-HL]
+#undef OPTSTR_find
+#define OPTSTR_find "?^HL[-HL]"
+#ifdef CLEANUP_find
+#undef CLEANUP_find
+#undef FOR_find
+#undef FLAG_L
+#undef FLAG_H
+#endif
+
+// flock <1>1nsux[-sux] <1>1nsux[-sux]
+#undef OPTSTR_flock
+#define OPTSTR_flock "<1>1nsux[-sux]"
+#ifdef CLEANUP_flock
+#undef CLEANUP_flock
+#undef FOR_flock
+#undef FLAG_x
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_n
+#endif
+
+// fmt   w#<0=75
+#undef OPTSTR_fmt
+#define OPTSTR_fmt "w#<0=75"
+#ifdef CLEANUP_fmt
+#undef CLEANUP_fmt
+#undef FOR_fmt
+#undef FLAG_w
+#endif
+
+// fold   bsw#<1=80
+#undef OPTSTR_fold
+#define OPTSTR_fold "bsw#<1=80"
+#ifdef CLEANUP_fold
+#undef CLEANUP_fold
+#undef FOR_fold
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_b
+#endif
+
+// free   hgmkb[!hgmkb]
+#undef OPTSTR_free
+#define OPTSTR_free "hgmkb[!hgmkb]"
+#ifdef CLEANUP_free
+#undef CLEANUP_free
+#undef FOR_free
+#undef FLAG_b
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_g
+#undef FLAG_h
+#endif
+
+// freeramdisk   <1>1
+#undef OPTSTR_freeramdisk
+#define OPTSTR_freeramdisk "<1>1"
+#ifdef CLEANUP_freeramdisk
+#undef CLEANUP_freeramdisk
+#undef FOR_freeramdisk
+#endif
+
+// fsck   ?t:ANPRTVsC#
+#undef OPTSTR_fsck
+#define OPTSTR_fsck "?t:ANPRTVsC#"
+#ifdef CLEANUP_fsck
+#undef CLEANUP_fsck
+#undef FOR_fsck
+#undef FLAG_C
+#undef FLAG_s
+#undef FLAG_V
+#undef FLAG_T
+#undef FLAG_R
+#undef FLAG_P
+#undef FLAG_N
+#undef FLAG_A
+#undef FLAG_t
+#endif
+
+// fsfreeze   <1>1f|u|[!fu]
+#undef OPTSTR_fsfreeze
+#define OPTSTR_fsfreeze "<1>1f|u|[!fu]"
+#ifdef CLEANUP_fsfreeze
+#undef CLEANUP_fsfreeze
+#undef FOR_fsfreeze
+#undef FLAG_u
+#undef FLAG_f
+#endif
+
+// fstype   <1
+#undef OPTSTR_fstype
+#define OPTSTR_fstype "<1"
+#ifdef CLEANUP_fstype
+#undef CLEANUP_fstype
+#undef FOR_fstype
+#endif
+
+// fsync   <1d
+#undef OPTSTR_fsync
+#define OPTSTR_fsync "<1d"
+#ifdef CLEANUP_fsync
+#undef CLEANUP_fsync
+#undef FOR_fsync
+#undef FLAG_d
+#endif
+
+// ftpget   <2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]
+#undef OPTSTR_ftpget
+#define OPTSTR_ftpget "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]"
+#ifdef CLEANUP_ftpget
+#undef CLEANUP_ftpget
+#undef FOR_ftpget
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_g
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_P
+#endif
+
+// getconf >2al >2al
+#undef OPTSTR_getconf
+#define OPTSTR_getconf ">2al"
+#ifdef CLEANUP_getconf
+#undef CLEANUP_getconf
+#undef FOR_getconf
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// getenforce   >0
+#undef OPTSTR_getenforce
+#define OPTSTR_getenforce ">0"
+#ifdef CLEANUP_getenforce
+#undef CLEANUP_getenforce
+#undef FOR_getenforce
+#endif
+
+// getfattr   (only-values)dhn:
+#undef OPTSTR_getfattr
+#define OPTSTR_getfattr "(only-values)dhn:"
+#ifdef CLEANUP_getfattr
+#undef CLEANUP_getfattr
+#undef FOR_getfattr
+#undef FLAG_n
+#undef FLAG_h
+#undef FLAG_d
+#undef FLAG_only_values
+#endif
+
+// getopt ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu
+#undef OPTSTR_getopt
+#define OPTSTR_getopt "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu"
+#ifdef CLEANUP_getopt
+#undef CLEANUP_getopt
+#undef FOR_getopt
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_l
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_a
+#endif
+
+// getty   <2t#<0H:I:l:f:iwnmLh
+#undef OPTSTR_getty
+#define OPTSTR_getty "<2t#<0H:I:l:f:iwnmLh"
+#ifdef CLEANUP_getty
+#undef CLEANUP_getty
+#undef FOR_getty
+#undef FLAG_h
+#undef FLAG_L
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_l
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_t
+#endif
+
+// gitcheckout   <1
+#undef OPTSTR_gitcheckout
+#define OPTSTR_gitcheckout "<1"
+#ifdef CLEANUP_gitcheckout
+#undef CLEANUP_gitcheckout
+#undef FOR_gitcheckout
+#endif
+
+// gitclone   <1
+#undef OPTSTR_gitclone
+#define OPTSTR_gitclone "<1"
+#ifdef CLEANUP_gitclone
+#undef CLEANUP_gitclone
+#undef FOR_gitclone
+#endif
+
+// gitfetch    
+#undef OPTSTR_gitfetch
+#define OPTSTR_gitfetch 0
+#ifdef CLEANUP_gitfetch
+#undef CLEANUP_gitfetch
+#undef FOR_gitfetch
+#endif
+
+// gitinit   <1
+#undef OPTSTR_gitinit
+#define OPTSTR_gitinit "<1"
+#ifdef CLEANUP_gitinit
+#undef CLEANUP_gitinit
+#undef FOR_gitinit
+#endif
+
+// gitremote   <1
+#undef OPTSTR_gitremote
+#define OPTSTR_gitremote "<1"
+#ifdef CLEANUP_gitremote
+#undef CLEANUP_gitremote
+#undef FOR_gitremote
+#endif
+
+// gpiodetect   >0
+#undef OPTSTR_gpiodetect
+#define OPTSTR_gpiodetect ">0"
+#ifdef CLEANUP_gpiodetect
+#undef CLEANUP_gpiodetect
+#undef FOR_gpiodetect
+#endif
+
+// gpiofind   <1>1
+#undef OPTSTR_gpiofind
+#define OPTSTR_gpiofind "<1>1"
+#ifdef CLEANUP_gpiofind
+#undef CLEANUP_gpiofind
+#undef FOR_gpiofind
+#endif
+
+// gpioget   <2l
+#undef OPTSTR_gpioget
+#define OPTSTR_gpioget "<2l"
+#ifdef CLEANUP_gpioget
+#undef CLEANUP_gpioget
+#undef FOR_gpioget
+#undef FLAG_l
+#endif
+
+// gpioinfo    
+#undef OPTSTR_gpioinfo
+#define OPTSTR_gpioinfo 0
+#ifdef CLEANUP_gpioinfo
+#undef CLEANUP_gpioinfo
+#undef FOR_gpioinfo
+#endif
+
+// gpioset   <2l
+#undef OPTSTR_gpioset
+#define OPTSTR_gpioset "<2l"
+#ifdef CLEANUP_gpioset
+#undef CLEANUP_gpioset
+#undef FOR_gpioset
+#undef FLAG_l
+#endif
+
+// grep (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF] (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]
+#undef OPTSTR_grep
+#define OPTSTR_grep "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]"
+#ifdef CLEANUP_grep
+#undef CLEANUP_grep
+#undef FOR_grep
+#undef FLAG_x
+#undef FLAG_m
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_L
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_E
+#undef FLAG_z
+#undef FLAG_Z
+#undef FLAG_M
+#undef FLAG_S
+#undef FLAG_exclude_dir
+#undef FLAG_color
+#undef FLAG_line_buffered
+#endif
+
+// groupadd   <1>2R:g#<0>2147483647S
+#undef OPTSTR_groupadd
+#define OPTSTR_groupadd "<1>2R:g#<0>2147483647S"
+#ifdef CLEANUP_groupadd
+#undef CLEANUP_groupadd
+#undef FOR_groupadd
+#undef FLAG_S
+#undef FLAG_g
+#undef FLAG_R
+#endif
+
+// groupdel   <1>2?
+#undef OPTSTR_groupdel
+#define OPTSTR_groupdel "<1>2?"
+#ifdef CLEANUP_groupdel
+#undef CLEANUP_groupdel
+#undef FOR_groupdel
+#endif
+
+// groups    
+#undef OPTSTR_groups
+#define OPTSTR_groups 0
+#ifdef CLEANUP_groups
+#undef CLEANUP_groups
+#undef FOR_groups
+#endif
+
+// gunzip   cdfkt123456789[-123456789]
+#undef OPTSTR_gunzip
+#define OPTSTR_gunzip "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gunzip
+#undef CLEANUP_gunzip
+#undef FOR_gunzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// gzip n(no-name)cdfkt123456789[-123456789] n(no-name)cdfkt123456789[-123456789]
+#undef OPTSTR_gzip
+#define OPTSTR_gzip "n(no-name)cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gzip
+#undef CLEANUP_gzip
+#undef FOR_gzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// head ?n(lines)#<0=10c(bytes)#<0qv[-nc] ?n(lines)#<0=10c(bytes)#<0qv[-nc]
+#undef OPTSTR_head
+#define OPTSTR_head "?n(lines)#<0=10c(bytes)#<0qv[-nc]"
+#ifdef CLEANUP_head
+#undef CLEANUP_head
+#undef FOR_head
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// hello    
+#undef OPTSTR_hello
+#define OPTSTR_hello 0
+#ifdef CLEANUP_hello
+#undef CLEANUP_hello
+#undef FOR_hello
+#endif
+
+// help   ahu
+#undef OPTSTR_help
+#define OPTSTR_help "ahu"
+#ifdef CLEANUP_help
+#undef CLEANUP_help
+#undef FOR_help
+#undef FLAG_u
+#undef FLAG_h
+#undef FLAG_a
+#endif
+
+// hexdump   bcCdn#<0os#<0vx[!bcCdox]
+#undef OPTSTR_hexdump
+#define OPTSTR_hexdump "bcCdn#<0os#<0vx[!bcCdox]"
+#ifdef CLEANUP_hexdump
+#undef CLEANUP_hexdump
+#undef FOR_hexdump
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_d
+#undef FLAG_C
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// hexedit   <1>1r
+#undef OPTSTR_hexedit
+#define OPTSTR_hexedit "<1>1r"
+#ifdef CLEANUP_hexedit
+#undef CLEANUP_hexedit
+#undef FOR_hexedit
+#undef FLAG_r
+#endif
+
+// host   <1>2avt:
+#undef OPTSTR_host
+#define OPTSTR_host "<1>2avt:"
+#ifdef CLEANUP_host
+#undef CLEANUP_host
+#undef FOR_host
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// hostid   >0
+#undef OPTSTR_hostid
+#define OPTSTR_hostid ">0"
+#ifdef CLEANUP_hostid
+#undef CLEANUP_hostid
+#undef FOR_hostid
+#endif
+
+// hostname >1bdsfF:[!bdsf] >1bdsfF:[!bdsf]
+#undef OPTSTR_hostname
+#define OPTSTR_hostname ">1bdsfF:[!bdsf]"
+#ifdef CLEANUP_hostname
+#undef CLEANUP_hostname
+#undef FOR_hostname
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// httpd   >1v
+#undef OPTSTR_httpd
+#define OPTSTR_httpd ">1v"
+#ifdef CLEANUP_httpd
+#undef CLEANUP_httpd
+#undef FOR_httpd
+#undef FLAG_v
+#endif
+
+// hwclock   >0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]
+#undef OPTSTR_hwclock
+#define OPTSTR_hwclock ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]"
+#ifdef CLEANUP_hwclock
+#undef CLEANUP_hwclock
+#undef FOR_hwclock
+#undef FLAG_w
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_fast
+#endif
+
+// i2cdetect   >3aF#<0>63lqry[!qr][!Fl]
+#undef OPTSTR_i2cdetect
+#define OPTSTR_i2cdetect ">3aF#<0>63lqry[!qr][!Fl]"
+#ifdef CLEANUP_i2cdetect
+#undef CLEANUP_i2cdetect
+#undef FOR_i2cdetect
+#undef FLAG_y
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// i2cdump   <2>2fy
+#undef OPTSTR_i2cdump
+#define OPTSTR_i2cdump "<2>2fy"
+#ifdef CLEANUP_i2cdump
+#undef CLEANUP_i2cdump
+#undef FOR_i2cdump
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cget   <2>3fy
+#undef OPTSTR_i2cget
+#define OPTSTR_i2cget "<2>3fy"
+#ifdef CLEANUP_i2cget
+#undef CLEANUP_i2cget
+#undef FOR_i2cget
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cset   <4fy
+#undef OPTSTR_i2cset
+#define OPTSTR_i2cset "<4fy"
+#ifdef CLEANUP_i2cset
+#undef CLEANUP_i2cset
+#undef FOR_i2cset
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2ctransfer   <2vfy
+#undef OPTSTR_i2ctransfer
+#define OPTSTR_i2ctransfer "<2vfy"
+#ifdef CLEANUP_i2ctransfer
+#undef CLEANUP_i2ctransfer
+#undef FOR_i2ctransfer
+#undef FLAG_y
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// iconv   cst:f:
+#undef OPTSTR_iconv
+#define OPTSTR_iconv "cst:f:"
+#ifdef CLEANUP_iconv
+#undef CLEANUP_iconv
+#undef FOR_iconv
+#undef FLAG_f
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// id >1nGgru[!Ggu] >1ZnGgru[!ZGgu]
+#undef OPTSTR_id
+#define OPTSTR_id ">1nGgru[!Ggu]"
+#ifdef CLEANUP_id
+#undef CLEANUP_id
+#undef FOR_id
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_g
+#undef FLAG_G
+#undef FLAG_n
+#undef FLAG_Z
+#endif
+
+// ifconfig   ^?aS
+#undef OPTSTR_ifconfig
+#define OPTSTR_ifconfig "^?aS"
+#ifdef CLEANUP_ifconfig
+#undef CLEANUP_ifconfig
+#undef FOR_ifconfig
+#undef FLAG_S
+#undef FLAG_a
+#endif
+
+// init    
+#undef OPTSTR_init
+#define OPTSTR_init 0
+#ifdef CLEANUP_init
+#undef CLEANUP_init
+#undef FOR_init
+#endif
+
+// inotifyd   <2
+#undef OPTSTR_inotifyd
+#define OPTSTR_inotifyd "<2"
+#ifdef CLEANUP_inotifyd
+#undef CLEANUP_inotifyd
+#undef FOR_inotifyd
+#endif
+
+// insmod   <1
+#undef OPTSTR_insmod
+#define OPTSTR_insmod "<1"
+#ifdef CLEANUP_insmod
+#undef CLEANUP_insmod
+#undef FOR_insmod
+#endif
+
+// install <1cdDp(preserve-timestamps)svt:m:o:g: <1cdDp(preserve-timestamps)svt:m:o:g:
+#undef OPTSTR_install
+#define OPTSTR_install "<1cdDp(preserve-timestamps)svt:m:o:g:"
+#ifdef CLEANUP_install
+#undef CLEANUP_install
+#undef FOR_install
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// ionice   ^tc#<0>3=2n#<0>7=5p#
+#undef OPTSTR_ionice
+#define OPTSTR_ionice "^tc#<0>3=2n#<0>7=5p#"
+#ifdef CLEANUP_ionice
+#undef CLEANUP_ionice
+#undef FOR_ionice
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_t
+#endif
+
+// iorenice   <1>3
+#undef OPTSTR_iorenice
+#define OPTSTR_iorenice "<1>3"
+#ifdef CLEANUP_iorenice
+#undef CLEANUP_iorenice
+#undef FOR_iorenice
+#endif
+
+// iotop   >0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq
+#undef OPTSTR_iotop
+#define OPTSTR_iotop ">0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq"
+#ifdef CLEANUP_iotop
+#undef CLEANUP_iotop
+#undef FOR_iotop
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_O
+#undef FLAG_K
+#undef FLAG_a
+#undef FLAG_A
+#endif
+
+// ip    
+#undef OPTSTR_ip
+#define OPTSTR_ip 0
+#ifdef CLEANUP_ip
+#undef CLEANUP_ip
+#undef FOR_ip
+#endif
+
+// ipcrm   m*M*s*S*q*Q*
+#undef OPTSTR_ipcrm
+#define OPTSTR_ipcrm "m*M*s*S*q*Q*"
+#ifdef CLEANUP_ipcrm
+#undef CLEANUP_ipcrm
+#undef FOR_ipcrm
+#undef FLAG_Q
+#undef FLAG_q
+#undef FLAG_S
+#undef FLAG_s
+#undef FLAG_M
+#undef FLAG_m
+#endif
+
+// ipcs   acptulsqmi#
+#undef OPTSTR_ipcs
+#define OPTSTR_ipcs "acptulsqmi#"
+#ifdef CLEANUP_ipcs
+#undef CLEANUP_ipcs
+#undef FOR_ipcs
+#undef FLAG_i
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// jobs   lnprs
+#undef OPTSTR_jobs
+#define OPTSTR_jobs "lnprs"
+#ifdef CLEANUP_jobs
+#undef CLEANUP_jobs
+#undef FOR_jobs
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#endif
+
+// kill   ?ls: 
+#undef OPTSTR_kill
+#define OPTSTR_kill "?ls: "
+#ifdef CLEANUP_kill
+#undef CLEANUP_kill
+#undef FOR_kill
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// killall   ?s:ilqvw
+#undef OPTSTR_killall
+#define OPTSTR_killall "?s:ilqvw"
+#ifdef CLEANUP_killall
+#undef CLEANUP_killall
+#undef FOR_killall
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_s
+#endif
+
+// killall5   ?o*ls: [!lo][!ls]
+#undef OPTSTR_killall5
+#define OPTSTR_killall5 "?o*ls: [!lo][!ls]"
+#ifdef CLEANUP_killall5
+#undef CLEANUP_killall5
+#undef FOR_killall5
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_o
+#endif
+
+// klogd   c#<1>8n
+#undef OPTSTR_klogd
+#define OPTSTR_klogd "c#<1>8n"
+#ifdef CLEANUP_klogd
+#undef CLEANUP_klogd
+#undef FOR_klogd
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// last   f:W
+#undef OPTSTR_last
+#define OPTSTR_last "f:W"
+#ifdef CLEANUP_last
+#undef CLEANUP_last
+#undef FOR_last
+#undef FLAG_W
+#undef FLAG_f
+#endif
+
+// link   <2>2
+#undef OPTSTR_link
+#define OPTSTR_link "<2>2"
+#ifdef CLEANUP_link
+#undef CLEANUP_link
+#undef FOR_link
+#endif
+
+// linux32    
+#undef OPTSTR_linux32
+#define OPTSTR_linux32 0
+#ifdef CLEANUP_linux32
+#undef CLEANUP_linux32
+#undef FOR_linux32
+#endif
+
+// ln <1rt:Tvnfs <1rt:Tvnfs
+#undef OPTSTR_ln
+#define OPTSTR_ln "<1rt:Tvnfs"
+#ifdef CLEANUP_ln
+#undef CLEANUP_ln
+#undef FOR_ln
+#undef FLAG_s
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_r
+#endif
+
+// load_policy   <1>1
+#undef OPTSTR_load_policy
+#define OPTSTR_load_policy "<1>1"
+#ifdef CLEANUP_load_policy
+#undef CLEANUP_load_policy
+#undef FOR_load_policy
+#endif
+
+// local    
+#undef OPTSTR_local
+#define OPTSTR_local 0
+#ifdef CLEANUP_local
+#undef CLEANUP_local
+#undef FOR_local
+#endif
+
+// log   p:t:
+#undef OPTSTR_log
+#define OPTSTR_log "p:t:"
+#ifdef CLEANUP_log
+#undef CLEANUP_log
+#undef FOR_log
+#undef FLAG_t
+#undef FLAG_p
+#endif
+
+// logger   t:p:s
+#undef OPTSTR_logger
+#define OPTSTR_logger "t:p:s"
+#ifdef CLEANUP_logger
+#undef CLEANUP_logger
+#undef FOR_logger
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_t
+#endif
+
+// login   >1f:ph:
+#undef OPTSTR_login
+#define OPTSTR_login ">1f:ph:"
+#ifdef CLEANUP_login
+#undef CLEANUP_login
+#undef FOR_login
+#undef FLAG_h
+#undef FLAG_p
+#undef FLAG_f
+#endif
+
+// logname   >0
+#undef OPTSTR_logname
+#define OPTSTR_logname ">0"
+#ifdef CLEANUP_logname
+#undef CLEANUP_logname
+#undef FOR_logname
+#endif
+
+// logpath    
+#undef OPTSTR_logpath
+#define OPTSTR_logpath 0
+#ifdef CLEANUP_logpath
+#undef CLEANUP_logpath
+#undef FOR_logpath
+#endif
+
+// losetup   >2S(sizelimit)#s(show)ro#j:fdcaD[!afj]
+#undef OPTSTR_losetup
+#define OPTSTR_losetup ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]"
+#ifdef CLEANUP_losetup
+#undef CLEANUP_losetup
+#undef FOR_losetup
+#undef FLAG_D
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_f
+#undef FLAG_j
+#undef FLAG_o
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_S
+#endif
+
+// ls (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ] (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]
+#undef OPTSTR_ls
+#define OPTSTR_ls "(sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]"
+#ifdef CLEANUP_ls
+#undef CLEANUP_ls
+#undef FOR_ls
+#undef FLAG_1
+#undef FLAG_x
+#undef FLAG_w
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_k
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_X
+#undef FLAG_U
+#undef FLAG_S
+#undef FLAG_R
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_C
+#undef FLAG_A
+#undef FLAG_o
+#undef FLAG_g
+#undef FLAG_Z
+#undef FLAG_X7E
+#undef FLAG_X21
+#undef FLAG_X7F
+#undef FLAG_show_control_chars
+#undef FLAG_full_time
+#undef FLAG_color
+#undef FLAG_sort
+#endif
+
+// lsattr   ldapvR
+#undef OPTSTR_lsattr
+#define OPTSTR_lsattr "ldapvR"
+#ifdef CLEANUP_lsattr
+#undef CLEANUP_lsattr
+#undef FOR_lsattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_l
+#endif
+
+// lsmod    
+#undef OPTSTR_lsmod
+#define OPTSTR_lsmod 0
+#ifdef CLEANUP_lsmod
+#undef CLEANUP_lsmod
+#undef FOR_lsmod
+#endif
+
+// lsof   lp*t
+#undef OPTSTR_lsof
+#define OPTSTR_lsof "lp*t"
+#ifdef CLEANUP_lsof
+#undef CLEANUP_lsof
+#undef FOR_lsof
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_l
+#endif
+
+// lspci   emkn@x@i:
+#undef OPTSTR_lspci
+#define OPTSTR_lspci "emkn@x@i:"
+#ifdef CLEANUP_lspci
+#undef CLEANUP_lspci
+#undef FOR_lspci
+#undef FLAG_i
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_e
+#endif
+
+// lsusb   i:
+#undef OPTSTR_lsusb
+#define OPTSTR_lsusb "i:"
+#ifdef CLEANUP_lsusb
+#undef CLEANUP_lsusb
+#undef FOR_lsusb
+#undef FLAG_i
+#endif
+
+// makedevs   <1>1d:
+#undef OPTSTR_makedevs
+#define OPTSTR_makedevs "<1>1d:"
+#ifdef CLEANUP_makedevs
+#undef CLEANUP_makedevs
+#undef FOR_makedevs
+#undef FLAG_d
+#endif
+
+// man   k:M:
+#undef OPTSTR_man
+#define OPTSTR_man "k:M:"
+#ifdef CLEANUP_man
+#undef CLEANUP_man
+#undef FOR_man
+#undef FLAG_M
+#undef FLAG_k
+#endif
+
+// mcookie   v(verbose)V(version)
+#undef OPTSTR_mcookie
+#define OPTSTR_mcookie "v(verbose)V(version)"
+#ifdef CLEANUP_mcookie
+#undef CLEANUP_mcookie
+#undef FOR_mcookie
+#undef FLAG_V
+#undef FLAG_v
+#endif
+
+// md5sum bc(check)s(status)[!bc] bc(check)s(status)[!bc]
+#undef OPTSTR_md5sum
+#define OPTSTR_md5sum "bc(check)s(status)[!bc]"
+#ifdef CLEANUP_md5sum
+#undef CLEANUP_md5sum
+#undef FOR_md5sum
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// mdev   s
+#undef OPTSTR_mdev
+#define OPTSTR_mdev "s"
+#ifdef CLEANUP_mdev
+#undef CLEANUP_mdev
+#undef FOR_mdev
+#undef FLAG_s
+#endif
+
+// memeater   <1>1M
+#undef OPTSTR_memeater
+#define OPTSTR_memeater "<1>1M"
+#ifdef CLEANUP_memeater
+#undef CLEANUP_memeater
+#undef FOR_memeater
+#undef FLAG_M
+#endif
+
+// microcom <1>1s#=115200X <1>1s#=115200X
+#undef OPTSTR_microcom
+#define OPTSTR_microcom "<1>1s#=115200X"
+#ifdef CLEANUP_microcom
+#undef CLEANUP_microcom
+#undef FOR_microcom
+#undef FLAG_X
+#undef FLAG_s
+#endif
+
+// mix   c:d:l#r#
+#undef OPTSTR_mix
+#define OPTSTR_mix "c:d:l#r#"
+#ifdef CLEANUP_mix
+#undef CLEANUP_mix
+#undef FOR_mix
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// mkdir <1vp(parent)(parents)m: <1Z:vp(parent)(parents)m:
+#undef OPTSTR_mkdir
+#define OPTSTR_mkdir "<1vp(parent)(parents)m:"
+#ifdef CLEANUP_mkdir
+#undef CLEANUP_mkdir
+#undef FOR_mkdir
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_v
+#undef FLAG_Z
+#endif
+
+// mke2fs   <1>2g:Fnqm#N#i#b#
+#undef OPTSTR_mke2fs
+#define OPTSTR_mke2fs "<1>2g:Fnqm#N#i#b#"
+#ifdef CLEANUP_mke2fs
+#undef CLEANUP_mke2fs
+#undef FOR_mke2fs
+#undef FLAG_b
+#undef FLAG_i
+#undef FLAG_N
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_g
+#endif
+
+// mkfifo   <1Z:m:
+#undef OPTSTR_mkfifo
+#define OPTSTR_mkfifo "<1Z:m:"
+#ifdef CLEANUP_mkfifo
+#undef CLEANUP_mkfifo
+#undef FOR_mkfifo
+#undef FLAG_m
+#undef FLAG_Z
+#endif
+
+// mknod   <2>4m(mode):Z:
+#undef OPTSTR_mknod
+#define OPTSTR_mknod "<2>4m(mode):Z:"
+#ifdef CLEANUP_mknod
+#undef CLEANUP_mknod
+#undef FOR_mknod
+#undef FLAG_Z
+#undef FLAG_m
+#endif
+
+// mkpasswd   >2S:m:P#=0<0
+#undef OPTSTR_mkpasswd
+#define OPTSTR_mkpasswd ">2S:m:P#=0<0"
+#ifdef CLEANUP_mkpasswd
+#undef CLEANUP_mkpasswd
+#undef FOR_mkpasswd
+#undef FLAG_P
+#undef FLAG_m
+#undef FLAG_S
+#endif
+
+// mkswap   <1>1L:
+#undef OPTSTR_mkswap
+#define OPTSTR_mkswap "<1>1L:"
+#ifdef CLEANUP_mkswap
+#undef CLEANUP_mkswap
+#undef FOR_mkswap
+#undef FLAG_L
+#endif
+
+// mktemp >1(tmpdir);:uqd(directory)p:t >1(tmpdir);:uqd(directory)p:t
+#undef OPTSTR_mktemp
+#define OPTSTR_mktemp ">1(tmpdir);:uqd(directory)p:t"
+#ifdef CLEANUP_mktemp
+#undef CLEANUP_mktemp
+#undef FOR_mktemp
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_d
+#undef FLAG_q
+#undef FLAG_u
+#undef FLAG_tmpdir
+#endif
+
+// modinfo   <1b:k:F:0
+#undef OPTSTR_modinfo
+#define OPTSTR_modinfo "<1b:k:F:0"
+#ifdef CLEANUP_modinfo
+#undef CLEANUP_modinfo
+#undef FOR_modinfo
+#undef FLAG_0
+#undef FLAG_F
+#undef FLAG_k
+#undef FLAG_b
+#endif
+
+// modprobe   alrqvsDbd*
+#undef OPTSTR_modprobe
+#define OPTSTR_modprobe "alrqvsDbd*"
+#ifdef CLEANUP_modprobe
+#undef CLEANUP_modprobe
+#undef FOR_modprobe
+#undef FLAG_d
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// more    
+#undef OPTSTR_more
+#define OPTSTR_more 0
+#ifdef CLEANUP_more
+#undef CLEANUP_more
+#undef FOR_more
+#endif
+
+// mount   ?RO:afnrvwt:o*[-rw]
+#undef OPTSTR_mount
+#define OPTSTR_mount "?RO:afnrvwt:o*[-rw]"
+#ifdef CLEANUP_mount
+#undef CLEANUP_mount
+#undef FOR_mount
+#undef FLAG_o
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_a
+#undef FLAG_O
+#undef FLAG_R
+#endif
+
+// mountpoint   <1qdx[-dx]
+#undef OPTSTR_mountpoint
+#define OPTSTR_mountpoint "<1qdx[-dx]"
+#ifdef CLEANUP_mountpoint
+#undef CLEANUP_mountpoint
+#undef FOR_mountpoint
+#undef FLAG_x
+#undef FLAG_d
+#undef FLAG_q
+#endif
+
+// mv <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni] <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]
+#undef OPTSTR_mv
+#define OPTSTR_mv "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]"
+#ifdef CLEANUP_mv
+#undef CLEANUP_mv
+#undef FOR_mv
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_x
+#endif
+
+// nbd_client   <3>3b#<1>4294967295=4096ns
+#undef OPTSTR_nbd_client
+#define OPTSTR_nbd_client "<3>3b#<1>4294967295=4096ns"
+#ifdef CLEANUP_nbd_client
+#undef CLEANUP_nbd_client
+#undef FOR_nbd_client
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#endif
+
+// nbd_server   <1>1r
+#undef OPTSTR_nbd_server
+#define OPTSTR_nbd_server "<1>1r"
+#ifdef CLEANUP_nbd_server
+#undef CLEANUP_nbd_server
+#undef FOR_nbd_server
+#undef FLAG_r
+#endif
+
+// netcat   ^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]
+#undef OPTSTR_netcat
+#define OPTSTR_netcat "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]"
+#ifdef CLEANUP_netcat
+#undef CLEANUP_netcat
+#undef FOR_netcat
+#undef FLAG_z
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_W
+#undef FLAG_w
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_E
+#undef FLAG_t
+#endif
+
+// netstat   pWrxwutneal
+#undef OPTSTR_netstat
+#define OPTSTR_netstat "pWrxwutneal"
+#ifdef CLEANUP_netstat
+#undef CLEANUP_netstat
+#undef FOR_netstat
+#undef FLAG_l
+#undef FLAG_a
+#undef FLAG_e
+#undef FLAG_n
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_r
+#undef FLAG_W
+#undef FLAG_p
+#endif
+
+// nice   ^<1n#
+#undef OPTSTR_nice
+#define OPTSTR_nice "^<1n#"
+#ifdef CLEANUP_nice
+#undef CLEANUP_nice
+#undef FOR_nice
+#undef FLAG_n
+#endif
+
+// nl v#=1l#w#<0=6b:n:s:E v#=1l#w#<0=6b:n:s:E
+#undef OPTSTR_nl
+#define OPTSTR_nl "v#=1l#w#<0=6b:n:s:E"
+#ifdef CLEANUP_nl
+#undef CLEANUP_nl
+#undef FOR_nl
+#undef FLAG_E
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#undef FLAG_w
+#undef FLAG_l
+#undef FLAG_v
+#endif
+
+// nohup   <1^
+#undef OPTSTR_nohup
+#define OPTSTR_nohup "<1^"
+#ifdef CLEANUP_nohup
+#undef CLEANUP_nohup
+#undef FOR_nohup
+#endif
+
+// nproc (all) (all)
+#undef OPTSTR_nproc
+#define OPTSTR_nproc "(all)"
+#ifdef CLEANUP_nproc
+#undef CLEANUP_nproc
+#undef FOR_nproc
+#undef FLAG_all
+#endif
+
+// nsenter   <1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_nsenter
+#define OPTSTR_nsenter "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_nsenter
+#undef CLEANUP_nsenter
+#undef FOR_nsenter
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_t
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// od j#vw#<1=16N#xsodcbA:t* j#vw#<1=16N#xsodcbA:t*
+#undef OPTSTR_od
+#define OPTSTR_od "j#vw#<1=16N#xsodcbA:t*"
+#ifdef CLEANUP_od
+#undef CLEANUP_od
+#undef FOR_od
+#undef FLAG_t
+#undef FLAG_A
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_o
+#undef FLAG_s
+#undef FLAG_x
+#undef FLAG_N
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_j
+#endif
+
+// oneit   ^<1nc:p3[!pn]
+#undef OPTSTR_oneit
+#define OPTSTR_oneit "^<1nc:p3[!pn]"
+#ifdef CLEANUP_oneit
+#undef CLEANUP_oneit
+#undef FOR_oneit
+#undef FLAG_3
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// openvt   ^<1c#<1>63sw
+#undef OPTSTR_openvt
+#define OPTSTR_openvt "^<1c#<1>63sw"
+#ifdef CLEANUP_openvt
+#undef CLEANUP_openvt
+#undef FOR_openvt
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// partprobe   <1
+#undef OPTSTR_partprobe
+#define OPTSTR_partprobe "<1"
+#ifdef CLEANUP_partprobe
+#undef CLEANUP_partprobe
+#undef FOR_partprobe
+#endif
+
+// passwd   >1a:dlu
+#undef OPTSTR_passwd
+#define OPTSTR_passwd ">1a:dlu"
+#ifdef CLEANUP_passwd
+#undef CLEANUP_passwd
+#undef FOR_passwd
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#endif
+
+// paste d:s d:s
+#undef OPTSTR_paste
+#define OPTSTR_paste "d:s"
+#ifdef CLEANUP_paste
+#undef CLEANUP_paste
+#undef FOR_paste
+#undef FLAG_s
+#undef FLAG_d
+#endif
+
+// patch >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv] >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]
+#undef OPTSTR_patch
+#define OPTSTR_patch ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]"
+#ifdef CLEANUP_patch
+#undef CLEANUP_patch
+#undef FOR_patch
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_d
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_dry_run
+#undef FLAG_no_backup_if_mismatch
+#endif
+
+// pgrep ?cld:u*U*t*s*P*g*G*fnovxL:[-no] ?cld:u*U*t*s*P*g*G*fnovxL:[-no]
+#undef OPTSTR_pgrep
+#define OPTSTR_pgrep "?cld:u*U*t*s*P*g*G*fnovxL:[-no]"
+#ifdef CLEANUP_pgrep
+#undef CLEANUP_pgrep
+#undef FOR_pgrep
+#undef FLAG_L
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// pidof   so:x
+#undef OPTSTR_pidof
+#define OPTSTR_pidof "so:x"
+#ifdef CLEANUP_pidof
+#undef CLEANUP_pidof
+#undef FOR_pidof
+#undef FLAG_x
+#undef FLAG_o
+#undef FLAG_s
+#endif
+
+// ping   <1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]
+#undef OPTSTR_ping
+#define OPTSTR_ping "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]"
+#ifdef CLEANUP_ping
+#undef CLEANUP_ping
+#undef FOR_ping
+#undef FLAG_I
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_w
+#undef FLAG_W
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_t
+#undef FLAG_m
+#endif
+
+// pivot_root   <2>2
+#undef OPTSTR_pivot_root
+#define OPTSTR_pivot_root "<2>2"
+#ifdef CLEANUP_pivot_root
+#undef CLEANUP_pivot_root
+#undef FOR_pivot_root
+#endif
+
+// pkill ?Vu*U*t*s*P*g*G*fnovxl:[-no] ?Vu*U*t*s*P*g*G*fnovxl:[-no]
+#undef OPTSTR_pkill
+#define OPTSTR_pkill "?Vu*U*t*s*P*g*G*fnovxl:[-no]"
+#ifdef CLEANUP_pkill
+#undef CLEANUP_pkill
+#undef FOR_pkill
+#undef FLAG_l
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_V
+#endif
+
+// pmap   <1pqx
+#undef OPTSTR_pmap
+#define OPTSTR_pmap "<1pqx"
+#ifdef CLEANUP_pmap
+#undef CLEANUP_pmap
+#undef FOR_pmap
+#undef FLAG_x
+#undef FLAG_q
+#undef FLAG_p
+#endif
+
+// printenv   (null)0
+#undef OPTSTR_printenv
+#define OPTSTR_printenv "(null)0"
+#ifdef CLEANUP_printenv
+#undef CLEANUP_printenv
+#undef FOR_printenv
+#undef FLAG_0
+#undef FLAG_null
+#endif
+
+// printf <1?^ <1?^
+#undef OPTSTR_printf
+#define OPTSTR_printf "<1?^"
+#ifdef CLEANUP_printf
+#undef CLEANUP_printf
+#undef FOR_printf
+#endif
+
+// ps k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO] k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]
+#undef OPTSTR_ps
+#define OPTSTR_ps "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]"
+#ifdef CLEANUP_ps
+#undef CLEANUP_ps
+#undef FOR_ps
+#undef FLAG_Z
+#undef FLAG_w
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_M
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_P
+#undef FLAG_k
+#endif
+
+// pwd >0LP[-LP] >0LP[-LP]
+#undef OPTSTR_pwd
+#define OPTSTR_pwd ">0LP[-LP]"
+#ifdef CLEANUP_pwd
+#undef CLEANUP_pwd
+#undef FOR_pwd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// pwdx   <1a
+#undef OPTSTR_pwdx
+#define OPTSTR_pwdx "<1a"
+#ifdef CLEANUP_pwdx
+#undef CLEANUP_pwdx
+#undef FOR_pwdx
+#undef FLAG_a
+#endif
+
+// pwgen   >2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]
+#undef OPTSTR_pwgen
+#define OPTSTR_pwgen ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]"
+#ifdef CLEANUP_pwgen
+#undef CLEANUP_pwgen
+#undef FOR_pwgen
+#undef FLAG_0
+#undef FLAG_A
+#undef FLAG_v
+#undef FLAG_1
+#undef FLAG_C
+#undef FLAG_h
+#undef FLAG_B
+#undef FLAG_s
+#undef FLAG_y
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// readahead    
+#undef OPTSTR_readahead
+#define OPTSTR_readahead 0
+#ifdef CLEANUP_readahead
+#undef CLEANUP_readahead
+#undef FOR_readahead
+#endif
+
+// readelf   <1(dyn-syms)Aadehlnp:SsWx:
+#undef OPTSTR_readelf
+#define OPTSTR_readelf "<1(dyn-syms)Aadehlnp:SsWx:"
+#ifdef CLEANUP_readelf
+#undef CLEANUP_readelf
+#undef FOR_readelf
+#undef FLAG_x
+#undef FLAG_W
+#undef FLAG_s
+#undef FLAG_S
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_h
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_dyn_syms
+#endif
+
+// readlink <1vnf(canonicalize)emqz[-mef][-qv] <1vnf(canonicalize)emqz[-mef][-qv]
+#undef OPTSTR_readlink
+#define OPTSTR_readlink "<1vnf(canonicalize)emqz[-mef][-qv]"
+#ifdef CLEANUP_readlink
+#undef CLEANUP_readlink
+#undef FOR_readlink
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#endif
+
+// realpath <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me] <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]
+#undef OPTSTR_realpath
+#define OPTSTR_realpath "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]"
+#ifdef CLEANUP_realpath
+#undef CLEANUP_realpath
+#undef FOR_realpath
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_relative_base
+#endif
+
+// reboot   d:fn
+#undef OPTSTR_reboot
+#define OPTSTR_reboot "d:fn"
+#ifdef CLEANUP_reboot
+#undef CLEANUP_reboot
+#undef FOR_reboot
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_d
+#endif
+
+// renice   <1gpun#|
+#undef OPTSTR_renice
+#define OPTSTR_renice "<1gpun#|"
+#ifdef CLEANUP_renice
+#undef CLEANUP_renice
+#undef FOR_renice
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_g
+#endif
+
+// reset    
+#undef OPTSTR_reset
+#define OPTSTR_reset 0
+#ifdef CLEANUP_reset
+#undef CLEANUP_reset
+#undef FOR_reset
+#endif
+
+// restorecon   <1DFnRrv
+#undef OPTSTR_restorecon
+#define OPTSTR_restorecon "<1DFnRrv"
+#ifdef CLEANUP_restorecon
+#undef CLEANUP_restorecon
+#undef FOR_restorecon
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_D
+#endif
+
+// rev    
+#undef OPTSTR_rev
+#define OPTSTR_rev 0
+#ifdef CLEANUP_rev
+#undef CLEANUP_rev
+#undef FOR_rev
+#endif
+
+// rfkill   <1>2
+#undef OPTSTR_rfkill
+#define OPTSTR_rfkill "<1>2"
+#ifdef CLEANUP_rfkill
+#undef CLEANUP_rfkill
+#undef FOR_rfkill
+#endif
+
+// rm f(force)iRrv[-fi] f(force)iRrv[-fi]
+#undef OPTSTR_rm
+#define OPTSTR_rm "f(force)iRrv[-fi]"
+#ifdef CLEANUP_rm
+#undef CLEANUP_rm
+#undef FOR_rm
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_f
+#endif
+
+// rmdir <1(ignore-fail-on-non-empty)p(parents) <1(ignore-fail-on-non-empty)p(parents)
+#undef OPTSTR_rmdir
+#define OPTSTR_rmdir "<1(ignore-fail-on-non-empty)p(parents)"
+#ifdef CLEANUP_rmdir
+#undef CLEANUP_rmdir
+#undef FOR_rmdir
+#undef FLAG_p
+#undef FLAG_ignore_fail_on_non_empty
+#endif
+
+// rmmod   <1wf
+#undef OPTSTR_rmmod
+#define OPTSTR_rmmod "<1wf"
+#ifdef CLEANUP_rmmod
+#undef CLEANUP_rmmod
+#undef FOR_rmmod
+#undef FLAG_f
+#undef FLAG_w
+#endif
+
+// route   ?neA:
+#undef OPTSTR_route
+#define OPTSTR_route "?neA:"
+#ifdef CLEANUP_route
+#undef CLEANUP_route
+#undef FOR_route
+#undef FLAG_A
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// rtcwake   (list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]
+#undef OPTSTR_rtcwake
+#define OPTSTR_rtcwake "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]"
+#ifdef CLEANUP_rtcwake
+#undef CLEANUP_rtcwake
+#undef FOR_rtcwake
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_auto
+#undef FLAG_list_modes
+#endif
+
+// runcon   ^<2
+#undef OPTSTR_runcon
+#define OPTSTR_runcon "^<2"
+#ifdef CLEANUP_runcon
+#undef CLEANUP_runcon
+#undef FOR_runcon
+#endif
+
+// sed (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er] (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]
+#undef OPTSTR_sed
+#define OPTSTR_sed "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]"
+#ifdef CLEANUP_sed
+#undef CLEANUP_sed
+#undef FOR_sed
+#undef FLAG_s
+#undef FLAG_z
+#undef FLAG_r
+#undef FLAG_E
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_tarxform
+#undef FLAG_version
+#undef FLAG_help
+#endif
+
+// sendevent   <4>4
+#undef OPTSTR_sendevent
+#define OPTSTR_sendevent "<4>4"
+#ifdef CLEANUP_sendevent
+#undef CLEANUP_sendevent
+#undef FOR_sendevent
+#endif
+
+// seq <1>3?f:s:w[!fw] <1>3?f:s:w[!fw]
+#undef OPTSTR_seq
+#define OPTSTR_seq "<1>3?f:s:w[!fw]"
+#ifdef CLEANUP_seq
+#undef CLEANUP_seq
+#undef FOR_seq
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// set    
+#undef OPTSTR_set
+#define OPTSTR_set 0
+#ifdef CLEANUP_set
+#undef CLEANUP_set
+#undef FOR_set
+#endif
+
+// setenforce   <1>1
+#undef OPTSTR_setenforce
+#define OPTSTR_setenforce "<1>1"
+#ifdef CLEANUP_setenforce
+#undef CLEANUP_setenforce
+#undef FOR_setenforce
+#endif
+
+// setfattr   hn:|v:x:|[!xv]
+#undef OPTSTR_setfattr
+#define OPTSTR_setfattr "hn:|v:x:|[!xv]"
+#ifdef CLEANUP_setfattr
+#undef CLEANUP_setfattr
+#undef FOR_setfattr
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_h
+#endif
+
+// setsid ^<1wc@d[!dc] ^<1wc@d[!dc]
+#undef OPTSTR_setsid
+#define OPTSTR_setsid "^<1wc@d[!dc]"
+#ifdef CLEANUP_setsid
+#undef CLEANUP_setsid
+#undef FOR_setsid
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_w
+#endif
+
+// sh   0^(noediting)(noprofile)(norc)sc:i
+#undef OPTSTR_sh
+#define OPTSTR_sh "0^(noediting)(noprofile)(norc)sc:i"
+#ifdef CLEANUP_sh
+#undef CLEANUP_sh
+#undef FOR_sh
+#undef FLAG_i
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_norc
+#undef FLAG_noprofile
+#undef FLAG_noediting
+#endif
+
+// sha3sum   bSa#<128>512=224
+#undef OPTSTR_sha3sum
+#define OPTSTR_sha3sum "bSa#<128>512=224"
+#ifdef CLEANUP_sha3sum
+#undef CLEANUP_sha3sum
+#undef FOR_sha3sum
+#undef FLAG_a
+#undef FLAG_S
+#undef FLAG_b
+#endif
+
+// shift   >1
+#undef OPTSTR_shift
+#define OPTSTR_shift ">1"
+#ifdef CLEANUP_shift
+#undef CLEANUP_shift
+#undef FOR_shift
+#endif
+
+// shred   <1zxus#<1n#<1o#<0f
+#undef OPTSTR_shred
+#define OPTSTR_shred "<1zxus#<1n#<1o#<0f"
+#ifdef CLEANUP_shred
+#undef CLEANUP_shred
+#undef FOR_shred
+#undef FLAG_f
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_x
+#undef FLAG_z
+#endif
+
+// shuf   zen#<0
+#undef OPTSTR_shuf
+#define OPTSTR_shuf "zen#<0"
+#ifdef CLEANUP_shuf
+#undef CLEANUP_shuf
+#undef FOR_shuf
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_z
+#endif
+
+// skeleton   (walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a
+#undef OPTSTR_skeleton
+#define OPTSTR_skeleton "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a"
+#ifdef CLEANUP_skeleton
+#undef CLEANUP_skeleton
+#undef FOR_skeleton
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_also
+#undef FLAG_blubber
+#undef FLAG_walrus
+#endif
+
+// skeleton_alias   b#dq
+#undef OPTSTR_skeleton_alias
+#define OPTSTR_skeleton_alias "b#dq"
+#ifdef CLEANUP_skeleton_alias
+#undef CLEANUP_skeleton_alias
+#undef FOR_skeleton_alias
+#undef FLAG_q
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// sleep <1 <1
+#undef OPTSTR_sleep
+#define OPTSTR_sleep "<1"
+#ifdef CLEANUP_sleep
+#undef CLEANUP_sleep
+#undef FOR_sleep
+#endif
+
+// sntp   >1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]
+#undef OPTSTR_sntp
+#define OPTSTR_sntp ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]"
+#ifdef CLEANUP_sntp
+#undef CLEANUP_sntp
+#undef FOR_sntp
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_S
+#undef FLAG_m
+#undef FLAG_M
+#endif
+
+// sort gS:T:mo:k*t:xVbMCcszdfirun gS:T:mo:k*t:xVbMCcszdfirun
+#undef OPTSTR_sort
+#define OPTSTR_sort "gS:T:mo:k*t:xVbMCcszdfirun"
+#ifdef CLEANUP_sort
+#undef CLEANUP_sort
+#undef FOR_sort
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#undef FLAG_M
+#undef FLAG_b
+#undef FLAG_V
+#undef FLAG_x
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_g
+#endif
+
+// source   <1
+#undef OPTSTR_source
+#define OPTSTR_source "<1"
+#ifdef CLEANUP_source
+#undef CLEANUP_source
+#undef FOR_source
+#endif
+
+// split   >2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]
+#undef OPTSTR_split
+#define OPTSTR_split ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]"
+#ifdef CLEANUP_split
+#undef CLEANUP_split
+#undef FOR_split
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// stat <1c:(format)fLt <1c:(format)fLt
+#undef OPTSTR_stat
+#define OPTSTR_stat "<1c:(format)fLt"
+#ifdef CLEANUP_stat
+#undef CLEANUP_stat
+#undef FOR_stat
+#undef FLAG_t
+#undef FLAG_L
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// strace   ^p#s#v
+#undef OPTSTR_strace
+#define OPTSTR_strace "^p#s#v"
+#ifdef CLEANUP_strace
+#undef CLEANUP_strace
+#undef FOR_strace
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// strings   t:an#=4<1fo
+#undef OPTSTR_strings
+#define OPTSTR_strings "t:an#=4<1fo"
+#ifdef CLEANUP_strings
+#undef CLEANUP_strings
+#undef FOR_strings
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_t
+#endif
+
+// stty   ?aF:g[!ag]
+#undef OPTSTR_stty
+#define OPTSTR_stty "?aF:g[!ag]"
+#ifdef CLEANUP_stty
+#undef CLEANUP_stty
+#undef FOR_stty
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// su   ^lmpu:g:c:s:[!lmp]
+#undef OPTSTR_su
+#define OPTSTR_su "^lmpu:g:c:s:[!lmp]"
+#ifdef CLEANUP_su
+#undef CLEANUP_su
+#undef FOR_su
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_g
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_m
+#undef FLAG_l
+#endif
+
+// sulogin   t#<0=0
+#undef OPTSTR_sulogin
+#define OPTSTR_sulogin "t#<0=0"
+#ifdef CLEANUP_sulogin
+#undef CLEANUP_sulogin
+#undef FOR_sulogin
+#undef FLAG_t
+#endif
+
+// swapoff   <1>1av
+#undef OPTSTR_swapoff
+#define OPTSTR_swapoff "<1>1av"
+#ifdef CLEANUP_swapoff
+#undef CLEANUP_swapoff
+#undef FOR_swapoff
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// swapon   <1>1p#<0>32767d
+#undef OPTSTR_swapon
+#define OPTSTR_swapon "<1>1p#<0>32767d"
+#ifdef CLEANUP_swapon
+#undef CLEANUP_swapon
+#undef FOR_swapon
+#undef FLAG_d
+#undef FLAG_p
+#endif
+
+// switch_root   <2c:h
+#undef OPTSTR_switch_root
+#define OPTSTR_switch_root "<2c:h"
+#ifdef CLEANUP_switch_root
+#undef CLEANUP_switch_root
+#undef FOR_switch_root
+#undef FLAG_h
+#undef FLAG_c
+#endif
+
+// sync    
+#undef OPTSTR_sync
+#define OPTSTR_sync 0
+#ifdef CLEANUP_sync
+#undef CLEANUP_sync
+#undef FOR_sync
+#endif
+
+// sysctl   ^neNqwpaA[!ap][!aq][!aw][+aA]
+#undef OPTSTR_sysctl
+#define OPTSTR_sysctl "^neNqwpaA[!ap][!aq][!aw][+aA]"
+#ifdef CLEANUP_sysctl
+#undef CLEANUP_sysctl
+#undef FOR_sysctl
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_p
+#undef FLAG_w
+#undef FLAG_q
+#undef FLAG_N
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// syslogd   >0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD
+#undef OPTSTR_syslogd
+#define OPTSTR_syslogd ">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD"
+#ifdef CLEANUP_syslogd
+#undef CLEANUP_syslogd
+#undef FOR_syslogd
+#undef FLAG_D
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_m
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_l
+#endif
+
+// tac    
+#undef OPTSTR_tac
+#define OPTSTR_tac 0
+#ifdef CLEANUP_tac
+#undef CLEANUP_tac
+#undef FOR_tac
+#endif
+
+// tail ?fFs:c(bytes)-n(lines)-[-cn][-fF] ?fFs:c(bytes)-n(lines)-[-cn][-fF]
+#undef OPTSTR_tail
+#define OPTSTR_tail "?fFs:c(bytes)-n(lines)-[-cn][-fF]"
+#ifdef CLEANUP_tail
+#undef CLEANUP_tail
+#undef FOR_tail
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_F
+#undef FLAG_f
+#endif
+
+// tar &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa] &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]
+#undef OPTSTR_tar
+#define OPTSTR_tar "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]"
+#ifdef CLEANUP_tar
+#undef CLEANUP_tar
+#undef FOR_tar
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_C
+#undef FLAG_I
+#undef FLAG_T
+#undef FLAG_X
+#undef FLAG_m
+#undef FLAG_P
+#undef FLAG_O
+#undef FLAG_S
+#undef FLAG_z
+#undef FLAG_j
+#undef FLAG_J
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_x
+#undef FLAG_h
+#undef FLAG_c
+#undef FLAG_k
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_xform
+#undef FLAG_strip
+#undef FLAG_to_command
+#undef FLAG_owner
+#undef FLAG_group
+#undef FLAG_mtime
+#undef FLAG_mode
+#undef FLAG_sort
+#undef FLAG_exclude
+#undef FLAG_overwrite
+#undef FLAG_no_same_permissions
+#undef FLAG_numeric_owner
+#undef FLAG_null
+#undef FLAG_no_recursion
+#undef FLAG_full_time
+#undef FLAG_restrict
+#undef FLAG_selinux
+#undef FLAG_show_transformed_names
+#undef FLAG_wildcards_match_slash
+#undef FLAG_no_wildcards_match_slash
+#undef FLAG_wildcards
+#undef FLAG_no_wildcards
+#undef FLAG_anchored
+#undef FLAG_no_anchored
+#undef FLAG_ignore_case
+#undef FLAG_no_ignore_case
+#undef FLAG_one_file_system
+#endif
+
+// taskset   <1^pa
+#undef OPTSTR_taskset
+#define OPTSTR_taskset "<1^pa"
+#ifdef CLEANUP_taskset
+#undef CLEANUP_taskset
+#undef FOR_taskset
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// tcpsvd   ^<3c#=30<1b#=20<0C:u:l:hEv
+#undef OPTSTR_tcpsvd
+#define OPTSTR_tcpsvd "^<3c#=30<1b#=20<0C:u:l:hEv"
+#ifdef CLEANUP_tcpsvd
+#undef CLEANUP_tcpsvd
+#undef FOR_tcpsvd
+#undef FLAG_v
+#undef FLAG_E
+#undef FLAG_h
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_C
+#undef FLAG_b
+#undef FLAG_c
+#endif
+
+// tee ia ia
+#undef OPTSTR_tee
+#define OPTSTR_tee "ia"
+#ifdef CLEANUP_tee
+#undef CLEANUP_tee
+#undef FOR_tee
+#undef FLAG_a
+#undef FLAG_i
+#endif
+
+// telnet   <1>2
+#undef OPTSTR_telnet
+#define OPTSTR_telnet "<1>2"
+#ifdef CLEANUP_telnet
+#undef CLEANUP_telnet
+#undef FOR_telnet
+#endif
+
+// telnetd   w#<0b:p#<0>65535=23f:l:FSKi[!wi]
+#undef OPTSTR_telnetd
+#define OPTSTR_telnetd "w#<0b:p#<0>65535=23f:l:FSKi[!wi]"
+#ifdef CLEANUP_telnetd
+#undef CLEANUP_telnetd
+#undef FOR_telnetd
+#undef FLAG_i
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_F
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_b
+#undef FLAG_w
+#endif
+
+// test    
+#undef OPTSTR_test
+#define OPTSTR_test 0
+#ifdef CLEANUP_test
+#undef CLEANUP_test
+#undef FOR_test
+#endif
+
+// tftp   <1b#<8>65464r:l:g|p|[!gp]
+#undef OPTSTR_tftp
+#define OPTSTR_tftp "<1b#<8>65464r:l:g|p|[!gp]"
+#ifdef CLEANUP_tftp
+#undef CLEANUP_tftp
+#undef FOR_tftp
+#undef FLAG_p
+#undef FLAG_g
+#undef FLAG_l
+#undef FLAG_r
+#undef FLAG_b
+#endif
+
+// tftpd   rcu:l
+#undef OPTSTR_tftpd
+#define OPTSTR_tftpd "rcu:l"
+#ifdef CLEANUP_tftpd
+#undef CLEANUP_tftpd
+#undef FOR_tftpd
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// time   <1^pv[-pv]
+#undef OPTSTR_time
+#define OPTSTR_time "<1^pv[-pv]"
+#ifdef CLEANUP_time
+#undef CLEANUP_time
+#undef FOR_time
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// timeout <2^(foreground)(preserve-status)vk:s(signal):i <2^(foreground)(preserve-status)vk:s(signal):i
+#undef OPTSTR_timeout
+#define OPTSTR_timeout "<2^(foreground)(preserve-status)vk:s(signal):i"
+#ifdef CLEANUP_timeout
+#undef CLEANUP_timeout
+#undef FOR_timeout
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_k
+#undef FLAG_v
+#undef FLAG_preserve_status
+#undef FLAG_foreground
+#endif
+
+// top   >0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]
+#undef OPTSTR_top
+#define OPTSTR_top ">0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]"
+#ifdef CLEANUP_top
+#undef CLEANUP_top
+#undef FOR_top
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_h
+#undef FLAG_O
+#endif
+
+// touch <1acd:fmr:t:h[!dtr] <1acd:fmr:t:h[!dtr]
+#undef OPTSTR_touch
+#define OPTSTR_touch "<1acd:fmr:t:h[!dtr]"
+#ifdef CLEANUP_touch
+#undef CLEANUP_touch
+#undef FOR_touch
+#undef FLAG_h
+#undef FLAG_t
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// toybox    
+#undef OPTSTR_toybox
+#define OPTSTR_toybox 0
+#ifdef CLEANUP_toybox
+#undef CLEANUP_toybox
+#undef FOR_toybox
+#endif
+
+// tr ^<1>2Ccstd[+cC] ^<1>2Ccstd[+cC]
+#undef OPTSTR_tr
+#define OPTSTR_tr "^<1>2Ccstd[+cC]"
+#ifdef CLEANUP_tr
+#undef CLEANUP_tr
+#undef FOR_tr
+#undef FLAG_d
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#endif
+
+// traceroute   <1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64
+#undef OPTSTR_traceroute
+#define OPTSTR_traceroute "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64"
+#ifdef CLEANUP_traceroute
+#undef CLEANUP_traceroute
+#undef FOR_traceroute
+#undef FLAG_4
+#undef FLAG_6
+#undef FLAG_F
+#undef FLAG_U
+#undef FLAG_I
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_g
+#undef FLAG_z
+#undef FLAG_f
+#undef FLAG_i
+#endif
+
+// true    
+#undef OPTSTR_true
+#define OPTSTR_true 0
+#ifdef CLEANUP_true
+#undef CLEANUP_true
+#undef FOR_true
+#endif
+
+// truncate <1s:|c <1s:|c
+#undef OPTSTR_truncate
+#define OPTSTR_truncate "<1s:|c"
+#ifdef CLEANUP_truncate
+#undef CLEANUP_truncate
+#undef FOR_truncate
+#undef FLAG_c
+#undef FLAG_s
+#endif
+
+// ts   ims
+#undef OPTSTR_ts
+#define OPTSTR_ts "ims"
+#ifdef CLEANUP_ts
+#undef CLEANUP_ts
+#undef FOR_ts
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_i
+#endif
+
+// tsort   >1
+#undef OPTSTR_tsort
+#define OPTSTR_tsort ">1"
+#ifdef CLEANUP_tsort
+#undef CLEANUP_tsort
+#undef FOR_tsort
+#endif
+
+// tty   s
+#undef OPTSTR_tty
+#define OPTSTR_tty "s"
+#ifdef CLEANUP_tty
+#undef CLEANUP_tty
+#undef FOR_tty
+#undef FLAG_s
+#endif
+
+// tunctl   <1>1t|d|u:T[!td]
+#undef OPTSTR_tunctl
+#define OPTSTR_tunctl "<1>1t|d|u:T[!td]"
+#ifdef CLEANUP_tunctl
+#undef CLEANUP_tunctl
+#undef FOR_tunctl
+#undef FLAG_T
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_t
+#endif
+
+// uclampset   p#am#<-1>1024M#<-1>1024R
+#undef OPTSTR_uclampset
+#define OPTSTR_uclampset "p#am#<-1>1024M#<-1>1024R"
+#ifdef CLEANUP_uclampset
+#undef CLEANUP_uclampset
+#undef FOR_uclampset
+#undef FLAG_R
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// ulimit   >1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]
+#undef OPTSTR_ulimit
+#define OPTSTR_ulimit ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]"
+#ifdef CLEANUP_ulimit
+#undef CLEANUP_ulimit
+#undef FOR_ulimit
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_i
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_a
+#undef FLAG_H
+#undef FLAG_S
+#undef FLAG_P
+#endif
+
+// umount   cndDflrat*v[!na]
+#undef OPTSTR_umount
+#define OPTSTR_umount "cndDflrat*v[!na]"
+#ifdef CLEANUP_umount
+#undef CLEANUP_umount
+#undef FOR_umount
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_a
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// uname paomvrns paomvrns
+#undef OPTSTR_uname
+#define OPTSTR_uname "paomvrns"
+#ifdef CLEANUP_uname
+#undef CLEANUP_uname
+#undef FOR_uname
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_v
+#undef FLAG_m
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// unicode   <1
+#undef OPTSTR_unicode
+#define OPTSTR_unicode "<1"
+#ifdef CLEANUP_unicode
+#undef CLEANUP_unicode
+#undef FOR_unicode
+#endif
+
+// uniq f#s#w#zicdu f#s#w#zicdu
+#undef OPTSTR_uniq
+#define OPTSTR_uniq "f#s#w#zicdu"
+#ifdef CLEANUP_uniq
+#undef CLEANUP_uniq
+#undef FOR_uniq
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_i
+#undef FLAG_z
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// unix2dos    
+#undef OPTSTR_unix2dos
+#define OPTSTR_unix2dos 0
+#ifdef CLEANUP_unix2dos
+#undef CLEANUP_unix2dos
+#undef FOR_unix2dos
+#endif
+
+// unlink   <1>1
+#undef OPTSTR_unlink
+#define OPTSTR_unlink "<1>1"
+#ifdef CLEANUP_unlink
+#undef CLEANUP_unlink
+#undef FOR_unlink
+#endif
+
+// unset   fvn[!fv]
+#undef OPTSTR_unset
+#define OPTSTR_unset "fvn[!fv]"
+#ifdef CLEANUP_unset
+#undef CLEANUP_unset
+#undef FOR_unset
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_f
+#endif
+
+// unshare   <1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_unshare
+#define OPTSTR_unshare "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_unshare
+#undef CLEANUP_unshare
+#undef FOR_unshare
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_r
+#undef FLAG_f
+#undef FLAG_a
+#endif
+
+// uptime   >0ps
+#undef OPTSTR_uptime
+#define OPTSTR_uptime ">0ps"
+#ifdef CLEANUP_uptime
+#undef CLEANUP_uptime
+#undef FOR_uptime
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// useradd   <1>2u#<0G:s:g:h:SDH
+#undef OPTSTR_useradd
+#define OPTSTR_useradd "<1>2u#<0G:s:g:h:SDH"
+#ifdef CLEANUP_useradd
+#undef CLEANUP_useradd
+#undef FOR_useradd
+#undef FLAG_H
+#undef FLAG_D
+#undef FLAG_S
+#undef FLAG_h
+#undef FLAG_g
+#undef FLAG_s
+#undef FLAG_G
+#undef FLAG_u
+#endif
+
+// userdel   <1>1r
+#undef OPTSTR_userdel
+#define OPTSTR_userdel "<1>1r"
+#ifdef CLEANUP_userdel
+#undef CLEANUP_userdel
+#undef FOR_userdel
+#undef FLAG_r
+#endif
+
+// usleep   <1>1
+#undef OPTSTR_usleep
+#define OPTSTR_usleep "<1>1"
+#ifdef CLEANUP_usleep
+#undef CLEANUP_usleep
+#undef FOR_usleep
+#endif
+
+// uudecode   >1o:
+#undef OPTSTR_uudecode
+#define OPTSTR_uudecode ">1o:"
+#ifdef CLEANUP_uudecode
+#undef CLEANUP_uudecode
+#undef FOR_uudecode
+#undef FLAG_o
+#endif
+
+// uuencode   <1>2m
+#undef OPTSTR_uuencode
+#define OPTSTR_uuencode "<1>2m"
+#ifdef CLEANUP_uuencode
+#undef CLEANUP_uuencode
+#undef FOR_uuencode
+#undef FLAG_m
+#endif
+
+// uuidgen   >0r(random)
+#undef OPTSTR_uuidgen
+#define OPTSTR_uuidgen ">0r(random)"
+#ifdef CLEANUP_uuidgen
+#undef CLEANUP_uuidgen
+#undef FOR_uuidgen
+#undef FLAG_r
+#endif
+
+// vconfig   <2>4
+#undef OPTSTR_vconfig
+#define OPTSTR_vconfig "<2>4"
+#ifdef CLEANUP_vconfig
+#undef CLEANUP_vconfig
+#undef FOR_vconfig
+#endif
+
+// vi   >1s:
+#undef OPTSTR_vi
+#define OPTSTR_vi ">1s:"
+#ifdef CLEANUP_vi
+#undef CLEANUP_vi
+#undef FOR_vi
+#undef FLAG_s
+#endif
+
+// vmstat   >2n
+#undef OPTSTR_vmstat
+#define OPTSTR_vmstat ">2n"
+#ifdef CLEANUP_vmstat
+#undef CLEANUP_vmstat
+#undef FOR_vmstat
+#undef FLAG_n
+#endif
+
+// w    
+#undef OPTSTR_w
+#define OPTSTR_w 0
+#ifdef CLEANUP_w
+#undef CLEANUP_w
+#undef FOR_w
+#endif
+
+// wait   n
+#undef OPTSTR_wait
+#define OPTSTR_wait "n"
+#ifdef CLEANUP_wait
+#undef CLEANUP_wait
+#undef FOR_wait
+#undef FLAG_n
+#endif
+
+// watch   ^<1n%<100=2000tebx
+#undef OPTSTR_watch
+#define OPTSTR_watch "^<1n%<100=2000tebx"
+#ifdef CLEANUP_watch
+#undef CLEANUP_watch
+#undef FOR_watch
+#undef FLAG_x
+#undef FLAG_b
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_n
+#endif
+
+// watchdog   <1>1Ft#=4<1T#=60<1
+#undef OPTSTR_watchdog
+#define OPTSTR_watchdog "<1>1Ft#=4<1T#=60<1"
+#ifdef CLEANUP_watchdog
+#undef CLEANUP_watchdog
+#undef FOR_watchdog
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_F
+#endif
+
+// wc Lcmwl Lcmwl
+#undef OPTSTR_wc
+#define OPTSTR_wc "Lcmwl"
+#ifdef CLEANUP_wc
+#undef CLEANUP_wc
+#undef FOR_wc
+#undef FLAG_l
+#undef FLAG_w
+#undef FLAG_m
+#undef FLAG_c
+#undef FLAG_L
+#endif
+
+// wget   <1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):
+#undef OPTSTR_wget
+#define OPTSTR_wget "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):"
+#ifdef CLEANUP_wget
+#undef CLEANUP_wget
+#undef FOR_wget
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_d
+#undef FLAG_max_redirect
+#endif
+
+// which <1a <1a
+#undef OPTSTR_which
+#define OPTSTR_which "<1a"
+#ifdef CLEANUP_which
+#undef CLEANUP_which
+#undef FOR_which
+#undef FLAG_a
+#endif
+
+// who   a
+#undef OPTSTR_who
+#define OPTSTR_who "a"
+#ifdef CLEANUP_who
+#undef CLEANUP_who
+#undef FOR_who
+#undef FLAG_a
+#endif
+
+// xargs ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E] ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]
+#undef OPTSTR_xargs
+#define OPTSTR_xargs "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]"
+#ifdef CLEANUP_xargs
+#undef CLEANUP_xargs
+#undef FOR_xargs
+#undef FLAG_0
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_P
+#undef FLAG_E
+#endif
+
+// xxd >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re] >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]
+#undef OPTSTR_xxd
+#define OPTSTR_xxd ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]"
+#ifdef CLEANUP_xxd
+#undef CLEANUP_xxd
+#undef FOR_xxd
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_i
+#undef FLAG_e
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// xzcat    
+#undef OPTSTR_xzcat
+#define OPTSTR_xzcat 0
+#ifdef CLEANUP_xzcat
+#undef CLEANUP_xzcat
+#undef FOR_xzcat
+#endif
+
+// yes    
+#undef OPTSTR_yes
+#define OPTSTR_yes 0
+#ifdef CLEANUP_yes
+#undef CLEANUP_yes
+#undef FOR_yes
+#endif
+
+// zcat cdfkt123456789[-123456789] cdfkt123456789[-123456789]
+#undef OPTSTR_zcat
+#define OPTSTR_zcat "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_zcat
+#undef CLEANUP_zcat
+#undef FOR_zcat
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+#ifdef FOR_acpi
+#define CLEANUP_acpi
+#ifndef TT
+#define TT this.acpi
+#endif
+#define FLAG_V (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#define FLAG_a (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_arch
+#define CLEANUP_arch
+#ifndef TT
+#define TT this.arch
+#endif
+#endif
+
+#ifdef FOR_arp
+#define CLEANUP_arp
+#ifndef TT
+#define TT this.arp
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_v (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_arping
+#define CLEANUP_arping
+#ifndef TT
+#define TT this.arping
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_D (FORCED_FLAG<<3)
+#define FLAG_U (FORCED_FLAG<<4)
+#define FLAG_A (FORCED_FLAG<<5)
+#define FLAG_c (FORCED_FLAG<<6)
+#define FLAG_w (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_ascii
+#define CLEANUP_ascii
+#ifndef TT
+#define TT this.ascii
+#endif
+#endif
+
+#ifdef FOR_base32
+#define CLEANUP_base32
+#ifndef TT
+#define TT this.base32
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_base64
+#define CLEANUP_base64
+#ifndef TT
+#define TT this.base64
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_basename
+#define CLEANUP_basename
+#ifndef TT
+#define TT this.basename
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_bc
+#define CLEANUP_bc
+#ifndef TT
+#define TT this.bc
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_blkdiscard
+#define CLEANUP_blkdiscard
+#ifndef TT
+#define TT this.blkdiscard
+#endif
+#define FLAG_z (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_o (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_blkid
+#define CLEANUP_blkid
+#ifndef TT
+#define TT this.blkid
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_L (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_blockdev
+#define CLEANUP_blockdev
+#ifndef TT
+#define TT this.blockdev
+#endif
+#define FLAG_rereadpt (FORCED_FLAG<<0)
+#define FLAG_flushbufs (FORCED_FLAG<<1)
+#define FLAG_setra (FORCED_FLAG<<2)
+#define FLAG_getra (FORCED_FLAG<<3)
+#define FLAG_getsize64 (FORCED_FLAG<<4)
+#define FLAG_getsize (FORCED_FLAG<<5)
+#define FLAG_getsz (FORCED_FLAG<<6)
+#define FLAG_setbsz (FORCED_FLAG<<7)
+#define FLAG_getbsz (FORCED_FLAG<<8)
+#define FLAG_getss (FORCED_FLAG<<9)
+#define FLAG_getro (FORCED_FLAG<<10)
+#define FLAG_setrw (FORCED_FLAG<<11)
+#define FLAG_setro (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_bootchartd
+#define CLEANUP_bootchartd
+#ifndef TT
+#define TT this.bootchartd
+#endif
+#endif
+
+#ifdef FOR_brctl
+#define CLEANUP_brctl
+#ifndef TT
+#define TT this.brctl
+#endif
+#endif
+
+#ifdef FOR_bunzip2
+#define CLEANUP_bunzip2
+#ifndef TT
+#define TT this.bunzip2
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_bzcat
+#define CLEANUP_bzcat
+#ifndef TT
+#define TT this.bzcat
+#endif
+#endif
+
+#ifdef FOR_cal
+#define CLEANUP_cal
+#ifndef TT
+#define TT this.cal
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_cat
+#define CLEANUP_cat
+#ifndef TT
+#define TT this.cat
+#endif
+#define FLAG_e (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_u (1LL<<3)
+#endif
+
+#ifdef FOR_cd
+#define CLEANUP_cd
+#ifndef TT
+#define TT this.cd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_chattr
+#define CLEANUP_chattr
+#ifndef TT
+#define TT this.chattr
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chcon
+#define CLEANUP_chcon
+#ifndef TT
+#define TT this.chcon
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_h (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chgrp
+#define CLEANUP_chgrp
+#ifndef TT
+#define TT this.chgrp
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#define FLAG_H (FORCED_FLAG<<3)
+#define FLAG_L (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_h (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_chmod
+#define CLEANUP_chmod
+#ifndef TT
+#define TT this.chmod
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_v (1LL<<2)
+#endif
+
+#ifdef FOR_chroot
+#define CLEANUP_chroot
+#ifndef TT
+#define TT this.chroot
+#endif
+#endif
+
+#ifdef FOR_chrt
+#define CLEANUP_chrt
+#ifndef TT
+#define TT this.chrt
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_r (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#define FLAG_R (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_p (FORCED_FLAG<<6)
+#define FLAG_m (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_chsh
+#define CLEANUP_chsh
+#ifndef TT
+#define TT this.chsh
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chvt
+#define CLEANUP_chvt
+#ifndef TT
+#define TT this.chvt
+#endif
+#endif
+
+#ifdef FOR_cksum
+#define CLEANUP_cksum
+#ifndef TT
+#define TT this.cksum
+#endif
+#define FLAG_N (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_P (FORCED_FLAG<<2)
+#define FLAG_I (FORCED_FLAG<<3)
+#define FLAG_H (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_clear
+#define CLEANUP_clear
+#ifndef TT
+#define TT this.clear
+#endif
+#endif
+
+#ifdef FOR_cmp
+#define CLEANUP_cmp
+#ifndef TT
+#define TT this.cmp
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_l (1LL<<2)
+#endif
+
+#ifdef FOR_comm
+#define CLEANUP_comm
+#ifndef TT
+#define TT this.comm
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_2 (1LL<<1)
+#define FLAG_3 (1LL<<2)
+#endif
+
+#ifdef FOR_count
+#define CLEANUP_count
+#ifndef TT
+#define TT this.count
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_cp
+#define CLEANUP_cp
+#ifndef TT
+#define TT this.cp
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_a (1LL<<9)
+#define FLAG_d (1LL<<10)
+#define FLAG_u (1LL<<11)
+#define FLAG_r (1LL<<12)
+#define FLAG_p (1LL<<13)
+#define FLAG_P (1LL<<14)
+#define FLAG_L (1LL<<15)
+#define FLAG_H (1LL<<16)
+#define FLAG_R (1LL<<17)
+#define FLAG_D (1LL<<18)
+#define FLAG_preserve (1LL<<19)
+#endif
+
+#ifdef FOR_cpio
+#define CLEANUP_cpio
+#ifndef TT
+#define TT this.cpio
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_F (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_i (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_L (1LL<<7)
+#define FLAG_u (1LL<<8)
+#define FLAG_d (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_R (1LL<<11)
+#define FLAG_no_preserve_owner (1LL<<12)
+#define FLAG_quiet (1LL<<13)
+#define FLAG_renumber_inodes (1LL<<14)
+#define FLAG_ignore_devno (1LL<<15)
+#endif
+
+#ifdef FOR_crc32
+#define CLEANUP_crc32
+#ifndef TT
+#define TT this.crc32
+#endif
+#endif
+
+#ifdef FOR_crond
+#define CLEANUP_crond
+#ifndef TT
+#define TT this.crond
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_S (FORCED_FLAG<<4)
+#define FLAG_b (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_crontab
+#define CLEANUP_crontab
+#ifndef TT
+#define TT this.crontab
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_csplit
+#define CLEANUP_csplit
+#ifndef TT
+#define TT this.csplit
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_k (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_cut
+#define CLEANUP_cut
+#ifndef TT
+#define TT this.cut
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_D (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_O (1LL<<4)
+#define FLAG_C (1LL<<5)
+#define FLAG_F (1LL<<6)
+#define FLAG_f (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_b (1LL<<9)
+#endif
+
+#ifdef FOR_date
+#define CLEANUP_date
+#ifndef TT
+#define TT this.date
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_I (1LL<<3)
+#define FLAG_D (1LL<<4)
+#define FLAG_d (1LL<<5)
+#endif
+
+#ifdef FOR_dd
+#define CLEANUP_dd
+#ifndef TT
+#define TT this.dd
+#endif
+#endif
+
+#ifdef FOR_deallocvt
+#define CLEANUP_deallocvt
+#ifndef TT
+#define TT this.deallocvt
+#endif
+#endif
+
+#ifdef FOR_declare
+#define CLEANUP_declare
+#ifndef TT
+#define TT this.declare
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_demo_many_options
+#define CLEANUP_demo_many_options
+#ifndef TT
+#define TT this.demo_many_options
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_j (FORCED_FLAG<<9)
+#define FLAG_k (FORCED_FLAG<<10)
+#define FLAG_l (FORCED_FLAG<<11)
+#define FLAG_m (FORCED_FLAG<<12)
+#define FLAG_n (FORCED_FLAG<<13)
+#define FLAG_o (FORCED_FLAG<<14)
+#define FLAG_p (FORCED_FLAG<<15)
+#define FLAG_q (FORCED_FLAG<<16)
+#define FLAG_r (FORCED_FLAG<<17)
+#define FLAG_s (FORCED_FLAG<<18)
+#define FLAG_t (FORCED_FLAG<<19)
+#define FLAG_u (FORCED_FLAG<<20)
+#define FLAG_v (FORCED_FLAG<<21)
+#define FLAG_w (FORCED_FLAG<<22)
+#define FLAG_x (FORCED_FLAG<<23)
+#define FLAG_y (FORCED_FLAG<<24)
+#define FLAG_z (FORCED_FLAG<<25)
+#define FLAG_A (FORCED_FLAG<<26)
+#define FLAG_B (FORCED_FLAG<<27)
+#define FLAG_C (FORCED_FLAG<<28)
+#define FLAG_D (FORCED_FLAG<<29)
+#define FLAG_E (FORCED_FLAG<<30)
+#define FLAG_F (FORCED_FLAG<<31)
+#define FLAG_G (FORCED_FLAG<<32)
+#define FLAG_H (FORCED_FLAG<<33)
+#define FLAG_I (FORCED_FLAG<<34)
+#define FLAG_J (FORCED_FLAG<<35)
+#define FLAG_K (FORCED_FLAG<<36)
+#define FLAG_L (FORCED_FLAG<<37)
+#define FLAG_M (FORCED_FLAG<<38)
+#define FLAG_N (FORCED_FLAG<<39)
+#define FLAG_O (FORCED_FLAG<<40)
+#define FLAG_P (FORCED_FLAG<<41)
+#define FLAG_Q (FORCED_FLAG<<42)
+#define FLAG_R (FORCED_FLAG<<43)
+#define FLAG_S (FORCED_FLAG<<44)
+#define FLAG_T (FORCED_FLAG<<45)
+#define FLAG_U (FORCED_FLAG<<46)
+#define FLAG_V (FORCED_FLAG<<47)
+#define FLAG_W (FORCED_FLAG<<48)
+#define FLAG_X (FORCED_FLAG<<49)
+#define FLAG_Y (FORCED_FLAG<<50)
+#define FLAG_Z (FORCED_FLAG<<51)
+#endif
+
+#ifdef FOR_demo_number
+#define CLEANUP_demo_number
+#ifndef TT
+#define TT this.demo_number
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#define FLAG_h (FORCED_FLAG<<4)
+#define FLAG_M (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_demo_scankey
+#define CLEANUP_demo_scankey
+#ifndef TT
+#define TT this.demo_scankey
+#endif
+#endif
+
+#ifdef FOR_demo_utf8towc
+#define CLEANUP_demo_utf8towc
+#ifndef TT
+#define TT this.demo_utf8towc
+#endif
+#endif
+
+#ifdef FOR_devmem
+#define CLEANUP_devmem
+#ifndef TT
+#define TT this.devmem
+#endif
+#endif
+
+#ifdef FOR_df
+#define CLEANUP_df
+#ifndef TT
+#define TT this.df
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_i (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#define FLAG_k (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_H (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_dhcp
+#define CLEANUP_dhcp
+#ifndef TT
+#define TT this.dhcp
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_o (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_C (FORCED_FLAG<<7)
+#define FLAG_R (FORCED_FLAG<<8)
+#define FLAG_B (FORCED_FLAG<<9)
+#define FLAG_S (FORCED_FLAG<<10)
+#define FLAG_i (FORCED_FLAG<<11)
+#define FLAG_p (FORCED_FLAG<<12)
+#define FLAG_s (FORCED_FLAG<<13)
+#define FLAG_t (FORCED_FLAG<<14)
+#define FLAG_T (FORCED_FLAG<<15)
+#define FLAG_A (FORCED_FLAG<<16)
+#define FLAG_O (FORCED_FLAG<<17)
+#define FLAG_r (FORCED_FLAG<<18)
+#define FLAG_x (FORCED_FLAG<<19)
+#define FLAG_F (FORCED_FLAG<<20)
+#define FLAG_H (FORCED_FLAG<<21)
+#define FLAG_V (FORCED_FLAG<<22)
+#endif
+
+#ifdef FOR_dhcp6
+#define CLEANUP_dhcp6
+#ifndef TT
+#define TT this.dhcp6
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_R (FORCED_FLAG<<5)
+#define FLAG_S (FORCED_FLAG<<6)
+#define FLAG_i (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_T (FORCED_FLAG<<11)
+#define FLAG_A (FORCED_FLAG<<12)
+#define FLAG_r (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_dhcpd
+#define CLEANUP_dhcpd
+#ifndef TT
+#define TT this.dhcpd
+#endif
+#define FLAG_6 (FORCED_FLAG<<0)
+#define FLAG_4 (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_i (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_diff
+#define CLEANUP_diff
+#ifndef TT
+#define TT this.diff
+#endif
+#define FLAG_U (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_N (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_S (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_T (1LL<<9)
+#define FLAG_i (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_t (1LL<<12)
+#define FLAG_u (1LL<<13)
+#define FLAG_b (1LL<<14)
+#define FLAG_d (1LL<<15)
+#define FLAG_B (1LL<<16)
+#define FLAG_strip_trailing_cr (1LL<<17)
+#define FLAG_color (1LL<<18)
+#define FLAG_new_line_format (1LL<<19)
+#define FLAG_old_line_format (1LL<<20)
+#define FLAG_unchanged_line_format (1LL<<21)
+#endif
+
+#ifdef FOR_dirname
+#define CLEANUP_dirname
+#ifndef TT
+#define TT this.dirname
+#endif
+#endif
+
+#ifdef FOR_dmesg
+#define CLEANUP_dmesg
+#ifndef TT
+#define TT this.dmesg
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#define FLAG_T (FORCED_FLAG<<5)
+#define FLAG_S (FORCED_FLAG<<6)
+#define FLAG_C (FORCED_FLAG<<7)
+#define FLAG_w (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_dnsdomainname
+#define CLEANUP_dnsdomainname
+#ifndef TT
+#define TT this.dnsdomainname
+#endif
+#endif
+
+#ifdef FOR_dos2unix
+#define CLEANUP_dos2unix
+#ifndef TT
+#define TT this.dos2unix
+#endif
+#endif
+
+#ifdef FOR_du
+#define CLEANUP_du
+#ifndef TT
+#define TT this.du
+#endif
+#define FLAG_b (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_K (1LL<<4)
+#define FLAG_k (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_a (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_l (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_h (1LL<<11)
+#define FLAG_d (1LL<<12)
+#endif
+
+#ifdef FOR_dumpleases
+#define CLEANUP_dumpleases
+#ifndef TT
+#define TT this.dumpleases
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_echo
+#define CLEANUP_echo
+#ifndef TT
+#define TT this.echo
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_e (1LL<<1)
+#define FLAG_E (1LL<<2)
+#endif
+
+#ifdef FOR_eject
+#define CLEANUP_eject
+#ifndef TT
+#define TT this.eject
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_env
+#define CLEANUP_env
+#ifndef TT
+#define TT this.env
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_0 (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_e (1LL<<3)
+#endif
+
+#ifdef FOR_eval
+#define CLEANUP_eval
+#ifndef TT
+#define TT this.eval
+#endif
+#endif
+
+#ifdef FOR_exec
+#define CLEANUP_exec
+#ifndef TT
+#define TT this.exec
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_exit
+#define CLEANUP_exit
+#ifndef TT
+#define TT this.exit
+#endif
+#endif
+
+#ifdef FOR_expand
+#define CLEANUP_expand
+#ifndef TT
+#define TT this.expand
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_export
+#define CLEANUP_export
+#ifndef TT
+#define TT this.export
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_expr
+#define CLEANUP_expr
+#ifndef TT
+#define TT this.expr
+#endif
+#endif
+
+#ifdef FOR_factor
+#define CLEANUP_factor
+#ifndef TT
+#define TT this.factor
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_fallocate
+#define CLEANUP_fallocate
+#ifndef TT
+#define TT this.fallocate
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_false
+#define CLEANUP_false
+#ifndef TT
+#define TT this.false
+#endif
+#endif
+
+#ifdef FOR_fdisk
+#define CLEANUP_fdisk
+#ifndef TT
+#define TT this.fdisk
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_H (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_file
+#define CLEANUP_file
+#ifndef TT
+#define TT this.file
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_h (1LL<<2)
+#define FLAG_b (1LL<<3)
+#endif
+
+#ifdef FOR_find
+#define CLEANUP_find
+#ifndef TT
+#define TT this.find
+#endif
+#define FLAG_L (1LL<<0)
+#define FLAG_H (1LL<<1)
+#endif
+
+#ifdef FOR_flock
+#define CLEANUP_flock
+#ifndef TT
+#define TT this.flock
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_n (1LL<<3)
+#endif
+
+#ifdef FOR_fmt
+#define CLEANUP_fmt
+#ifndef TT
+#define TT this.fmt
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_fold
+#define CLEANUP_fold
+#ifndef TT
+#define TT this.fold
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_free
+#define CLEANUP_free
+#ifndef TT
+#define TT this.free
+#endif
+#define FLAG_b (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_g (FORCED_FLAG<<3)
+#define FLAG_h (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_freeramdisk
+#define CLEANUP_freeramdisk
+#ifndef TT
+#define TT this.freeramdisk
+#endif
+#endif
+
+#ifdef FOR_fsck
+#define CLEANUP_fsck
+#ifndef TT
+#define TT this.fsck
+#endif
+#define FLAG_C (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_V (FORCED_FLAG<<2)
+#define FLAG_T (FORCED_FLAG<<3)
+#define FLAG_R (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_N (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_t (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_fsfreeze
+#define CLEANUP_fsfreeze
+#ifndef TT
+#define TT this.fsfreeze
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_fstype
+#define CLEANUP_fstype
+#ifndef TT
+#define TT this.fstype
+#endif
+#endif
+
+#ifdef FOR_fsync
+#define CLEANUP_fsync
+#ifndef TT
+#define TT this.fsync
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_ftpget
+#define CLEANUP_ftpget
+#ifndef TT
+#define TT this.ftpget
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_M (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_L (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_s (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#define FLAG_v (FORCED_FLAG<<8)
+#define FLAG_u (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#define FLAG_c (FORCED_FLAG<<11)
+#define FLAG_P (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_getconf
+#define CLEANUP_getconf
+#ifndef TT
+#define TT this.getconf
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_getenforce
+#define CLEANUP_getenforce
+#ifndef TT
+#define TT this.getenforce
+#endif
+#endif
+
+#ifdef FOR_getfattr
+#define CLEANUP_getfattr
+#ifndef TT
+#define TT this.getfattr
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_only_values (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_getopt
+#define CLEANUP_getopt
+#ifndef TT
+#define TT this.getopt
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_T (1LL<<1)
+#define FLAG_l (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_a (1LL<<5)
+#endif
+
+#ifdef FOR_getty
+#define CLEANUP_getty
+#ifndef TT
+#define TT this.getty
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_w (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_l (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_H (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_gitcheckout
+#define CLEANUP_gitcheckout
+#ifndef TT
+#define TT this.gitcheckout
+#endif
+#endif
+
+#ifdef FOR_gitclone
+#define CLEANUP_gitclone
+#ifndef TT
+#define TT this.gitclone
+#endif
+#endif
+
+#ifdef FOR_gitfetch
+#define CLEANUP_gitfetch
+#ifndef TT
+#define TT this.gitfetch
+#endif
+#endif
+
+#ifdef FOR_gitinit
+#define CLEANUP_gitinit
+#ifndef TT
+#define TT this.gitinit
+#endif
+#endif
+
+#ifdef FOR_gitremote
+#define CLEANUP_gitremote
+#ifndef TT
+#define TT this.gitremote
+#endif
+#endif
+
+#ifdef FOR_gpiodetect
+#define CLEANUP_gpiodetect
+#ifndef TT
+#define TT this.gpiodetect
+#endif
+#endif
+
+#ifdef FOR_gpiofind
+#define CLEANUP_gpiofind
+#ifndef TT
+#define TT this.gpiofind
+#endif
+#endif
+
+#ifdef FOR_gpioget
+#define CLEANUP_gpioget
+#ifndef TT
+#define TT this.gpioget
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_gpioinfo
+#define CLEANUP_gpioinfo
+#ifndef TT
+#define TT this.gpioinfo
+#endif
+#endif
+
+#ifdef FOR_gpioset
+#define CLEANUP_gpioset
+#ifndef TT
+#define TT this.gpioset
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_grep
+#define CLEANUP_grep
+#ifndef TT
+#define TT this.grep
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_m (1LL<<1)
+#define FLAG_A (1LL<<2)
+#define FLAG_B (1LL<<3)
+#define FLAG_C (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_e (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_l (1LL<<8)
+#define FLAG_L (1LL<<9)
+#define FLAG_c (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_v (1LL<<12)
+#define FLAG_s (1LL<<13)
+#define FLAG_R (1LL<<14)
+#define FLAG_r (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_n (1LL<<17)
+#define FLAG_i (1LL<<18)
+#define FLAG_h (1LL<<19)
+#define FLAG_b (1LL<<20)
+#define FLAG_a (1LL<<21)
+#define FLAG_I (1LL<<22)
+#define FLAG_H (1LL<<23)
+#define FLAG_F (1LL<<24)
+#define FLAG_E (1LL<<25)
+#define FLAG_z (1LL<<26)
+#define FLAG_Z (1LL<<27)
+#define FLAG_M (1LL<<28)
+#define FLAG_S (1LL<<29)
+#define FLAG_exclude_dir (1LL<<30)
+#define FLAG_color (1LL<<31)
+#define FLAG_line_buffered (1LL<<32)
+#endif
+
+#ifdef FOR_groupadd
+#define CLEANUP_groupadd
+#ifndef TT
+#define TT this.groupadd
+#endif
+#define FLAG_S (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_groupdel
+#define CLEANUP_groupdel
+#ifndef TT
+#define TT this.groupdel
+#endif
+#endif
+
+#ifdef FOR_groups
+#define CLEANUP_groups
+#ifndef TT
+#define TT this.groups
+#endif
+#endif
+
+#ifdef FOR_gunzip
+#define CLEANUP_gunzip
+#ifndef TT
+#define TT this.gunzip
+#endif
+#define FLAG_9 (FORCED_FLAG<<0)
+#define FLAG_8 (FORCED_FLAG<<1)
+#define FLAG_7 (FORCED_FLAG<<2)
+#define FLAG_6 (FORCED_FLAG<<3)
+#define FLAG_5 (FORCED_FLAG<<4)
+#define FLAG_4 (FORCED_FLAG<<5)
+#define FLAG_3 (FORCED_FLAG<<6)
+#define FLAG_2 (FORCED_FLAG<<7)
+#define FLAG_1 (FORCED_FLAG<<8)
+#define FLAG_t (FORCED_FLAG<<9)
+#define FLAG_k (FORCED_FLAG<<10)
+#define FLAG_f (FORCED_FLAG<<11)
+#define FLAG_d (FORCED_FLAG<<12)
+#define FLAG_c (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_gzip
+#define CLEANUP_gzip
+#ifndef TT
+#define TT this.gzip
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#define FLAG_n (1LL<<14)
+#endif
+
+#ifdef FOR_head
+#define CLEANUP_head
+#ifndef TT
+#define TT this.head
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_n (1LL<<3)
+#endif
+
+#ifdef FOR_hello
+#define CLEANUP_hello
+#ifndef TT
+#define TT this.hello
+#endif
+#endif
+
+#ifdef FOR_help
+#define CLEANUP_help
+#ifndef TT
+#define TT this.help
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_hexdump
+#define CLEANUP_hexdump
+#ifndef TT
+#define TT this.hexdump
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_o (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_d (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#define FLAG_b (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_hexedit
+#define CLEANUP_hexedit
+#ifndef TT
+#define TT this.hexedit
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_host
+#define CLEANUP_host
+#ifndef TT
+#define TT this.host
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_hostid
+#define CLEANUP_hostid
+#ifndef TT
+#define TT this.hostid
+#endif
+#endif
+
+#ifdef FOR_hostname
+#define CLEANUP_hostname
+#ifndef TT
+#define TT this.hostname
+#endif
+#define FLAG_F (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_b (1LL<<4)
+#endif
+
+#ifdef FOR_httpd
+#define CLEANUP_httpd
+#ifndef TT
+#define TT this.httpd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_hwclock
+#define CLEANUP_hwclock
+#ifndef TT
+#define TT this.hwclock
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_fast (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_i2cdetect
+#define CLEANUP_i2cdetect
+#ifndef TT
+#define TT this.i2cdetect
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_F (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_i2cdump
+#define CLEANUP_i2cdump
+#ifndef TT
+#define TT this.i2cdump
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2cget
+#define CLEANUP_i2cget
+#ifndef TT
+#define TT this.i2cget
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2cset
+#define CLEANUP_i2cset
+#ifndef TT
+#define TT this.i2cset
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2ctransfer
+#define CLEANUP_i2ctransfer
+#ifndef TT
+#define TT this.i2ctransfer
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_iconv
+#define CLEANUP_iconv
+#ifndef TT
+#define TT this.iconv
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_id
+#define CLEANUP_id
+#ifndef TT
+#define TT this.id
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_g (1LL<<2)
+#define FLAG_G (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_Z (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_ifconfig
+#define CLEANUP_ifconfig
+#ifndef TT
+#define TT this.ifconfig
+#endif
+#define FLAG_S (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_init
+#define CLEANUP_init
+#ifndef TT
+#define TT this.init
+#endif
+#endif
+
+#ifdef FOR_inotifyd
+#define CLEANUP_inotifyd
+#ifndef TT
+#define TT this.inotifyd
+#endif
+#endif
+
+#ifdef FOR_insmod
+#define CLEANUP_insmod
+#ifndef TT
+#define TT this.insmod
+#endif
+#endif
+
+#ifdef FOR_install
+#define CLEANUP_install
+#ifndef TT
+#define TT this.install
+#endif
+#define FLAG_g (1LL<<0)
+#define FLAG_o (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_p (1LL<<6)
+#define FLAG_D (1LL<<7)
+#define FLAG_d (1LL<<8)
+#define FLAG_c (1LL<<9)
+#endif
+
+#ifdef FOR_ionice
+#define CLEANUP_ionice
+#ifndef TT
+#define TT this.ionice
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_iorenice
+#define CLEANUP_iorenice
+#ifndef TT
+#define TT this.iorenice
+#endif
+#endif
+
+#ifdef FOR_iotop
+#define CLEANUP_iotop
+#ifndef TT
+#define TT this.iotop
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_u (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_o (FORCED_FLAG<<8)
+#define FLAG_k (FORCED_FLAG<<9)
+#define FLAG_H (FORCED_FLAG<<10)
+#define FLAG_O (FORCED_FLAG<<11)
+#define FLAG_K (FORCED_FLAG<<12)
+#define FLAG_a (FORCED_FLAG<<13)
+#define FLAG_A (FORCED_FLAG<<14)
+#endif
+
+#ifdef FOR_ip
+#define CLEANUP_ip
+#ifndef TT
+#define TT this.ip
+#endif
+#endif
+
+#ifdef FOR_ipcrm
+#define CLEANUP_ipcrm
+#ifndef TT
+#define TT this.ipcrm
+#endif
+#define FLAG_Q (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_M (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_ipcs
+#define CLEANUP_ipcs
+#ifndef TT
+#define TT this.ipcs
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_c (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_jobs
+#define CLEANUP_jobs
+#ifndef TT
+#define TT this.jobs
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_kill
+#define CLEANUP_kill
+#ifndef TT
+#define TT this.kill
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_killall
+#define CLEANUP_killall
+#ifndef TT
+#define TT this.killall
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_killall5
+#define CLEANUP_killall5
+#ifndef TT
+#define TT this.killall5
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_o (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_klogd
+#define CLEANUP_klogd
+#ifndef TT
+#define TT this.klogd
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_last
+#define CLEANUP_last
+#ifndef TT
+#define TT this.last
+#endif
+#define FLAG_W (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_link
+#define CLEANUP_link
+#ifndef TT
+#define TT this.link
+#endif
+#endif
+
+#ifdef FOR_linux32
+#define CLEANUP_linux32
+#ifndef TT
+#define TT this.linux32
+#endif
+#endif
+
+#ifdef FOR_ln
+#define CLEANUP_ln
+#ifndef TT
+#define TT this.ln
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_T (1LL<<4)
+#define FLAG_t (1LL<<5)
+#define FLAG_r (1LL<<6)
+#endif
+
+#ifdef FOR_load_policy
+#define CLEANUP_load_policy
+#ifndef TT
+#define TT this.load_policy
+#endif
+#endif
+
+#ifdef FOR_local
+#define CLEANUP_local
+#ifndef TT
+#define TT this.local
+#endif
+#endif
+
+#ifdef FOR_log
+#define CLEANUP_log
+#ifndef TT
+#define TT this.log
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_logger
+#define CLEANUP_logger
+#ifndef TT
+#define TT this.logger
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_login
+#define CLEANUP_login
+#ifndef TT
+#define TT this.login
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_logname
+#define CLEANUP_logname
+#ifndef TT
+#define TT this.logname
+#endif
+#endif
+
+#ifdef FOR_logpath
+#define CLEANUP_logpath
+#ifndef TT
+#define TT this.logpath
+#endif
+#endif
+
+#ifdef FOR_losetup
+#define CLEANUP_losetup
+#ifndef TT
+#define TT this.losetup
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#define FLAG_j (FORCED_FLAG<<5)
+#define FLAG_o (FORCED_FLAG<<6)
+#define FLAG_r (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_S (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_ls
+#define CLEANUP_ls
+#ifndef TT
+#define TT this.ls
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_w (1LL<<2)
+#define FLAG_u (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_r (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_p (1LL<<8)
+#define FLAG_n (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_l (1LL<<11)
+#define FLAG_k (1LL<<12)
+#define FLAG_i (1LL<<13)
+#define FLAG_h (1LL<<14)
+#define FLAG_f (1LL<<15)
+#define FLAG_d (1LL<<16)
+#define FLAG_c (1LL<<17)
+#define FLAG_b (1LL<<18)
+#define FLAG_a (1LL<<19)
+#define FLAG_X (1LL<<20)
+#define FLAG_U (1LL<<21)
+#define FLAG_S (1LL<<22)
+#define FLAG_R (1LL<<23)
+#define FLAG_N (1LL<<24)
+#define FLAG_L (1LL<<25)
+#define FLAG_H (1LL<<26)
+#define FLAG_F (1LL<<27)
+#define FLAG_C (1LL<<28)
+#define FLAG_A (1LL<<29)
+#define FLAG_o (1LL<<30)
+#define FLAG_g (1LL<<31)
+#define FLAG_Z (1LL<<32)
+#define FLAG_X7E (1LL<<33)
+#define FLAG_X21 (1LL<<34)
+#define FLAG_X7F (1LL<<35)
+#define FLAG_show_control_chars (1LL<<36)
+#define FLAG_full_time (1LL<<37)
+#define FLAG_color (1LL<<38)
+#define FLAG_sort (1LL<<39)
+#endif
+
+#ifdef FOR_lsattr
+#define CLEANUP_lsattr
+#ifndef TT
+#define TT this.lsattr
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_lsmod
+#define CLEANUP_lsmod
+#ifndef TT
+#define TT this.lsmod
+#endif
+#endif
+
+#ifdef FOR_lsof
+#define CLEANUP_lsof
+#ifndef TT
+#define TT this.lsof
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_l (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_lspci
+#define CLEANUP_lspci
+#ifndef TT
+#define TT this.lspci
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_k (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_e (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_lsusb
+#define CLEANUP_lsusb
+#ifndef TT
+#define TT this.lsusb
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_makedevs
+#define CLEANUP_makedevs
+#ifndef TT
+#define TT this.makedevs
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_man
+#define CLEANUP_man
+#ifndef TT
+#define TT this.man
+#endif
+#define FLAG_M (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mcookie
+#define CLEANUP_mcookie
+#ifndef TT
+#define TT this.mcookie
+#endif
+#define FLAG_V (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_md5sum
+#define CLEANUP_md5sum
+#ifndef TT
+#define TT this.md5sum
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_b (1LL<<2)
+#endif
+
+#ifdef FOR_mdev
+#define CLEANUP_mdev
+#ifndef TT
+#define TT this.mdev
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_memeater
+#define CLEANUP_memeater
+#ifndef TT
+#define TT this.memeater
+#endif
+#define FLAG_M (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_microcom
+#define CLEANUP_microcom
+#ifndef TT
+#define TT this.microcom
+#endif
+#define FLAG_X (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_mix
+#define CLEANUP_mix
+#ifndef TT
+#define TT this.mix
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_mkdir
+#define CLEANUP_mkdir
+#ifndef TT
+#define TT this.mkdir
+#endif
+#define FLAG_m (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_Z (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_mke2fs
+#define CLEANUP_mke2fs
+#ifndef TT
+#define TT this.mke2fs
+#endif
+#define FLAG_b (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_N (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_F (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_mkfifo
+#define CLEANUP_mkfifo
+#ifndef TT
+#define TT this.mkfifo
+#endif
+#define FLAG_m (FORCED_FLAG<<0)
+#define FLAG_Z (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mknod
+#define CLEANUP_mknod
+#ifndef TT
+#define TT this.mknod
+#endif
+#define FLAG_Z (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mkpasswd
+#define CLEANUP_mkpasswd
+#ifndef TT
+#define TT this.mkpasswd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_mkswap
+#define CLEANUP_mkswap
+#ifndef TT
+#define TT this.mkswap
+#endif
+#define FLAG_L (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_mktemp
+#define CLEANUP_mktemp
+#ifndef TT
+#define TT this.mktemp
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_d (1LL<<2)
+#define FLAG_q (1LL<<3)
+#define FLAG_u (1LL<<4)
+#define FLAG_tmpdir (1LL<<5)
+#endif
+
+#ifdef FOR_modinfo
+#define CLEANUP_modinfo
+#ifndef TT
+#define TT this.modinfo
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_F (FORCED_FLAG<<1)
+#define FLAG_k (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_modprobe
+#define CLEANUP_modprobe
+#ifndef TT
+#define TT this.modprobe
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_D (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_q (FORCED_FLAG<<5)
+#define FLAG_r (FORCED_FLAG<<6)
+#define FLAG_l (FORCED_FLAG<<7)
+#define FLAG_a (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_more
+#define CLEANUP_more
+#ifndef TT
+#define TT this.more
+#endif
+#endif
+
+#ifdef FOR_mount
+#define CLEANUP_mount
+#ifndef TT
+#define TT this.mount
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_w (FORCED_FLAG<<2)
+#define FLAG_v (FORCED_FLAG<<3)
+#define FLAG_r (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_a (FORCED_FLAG<<7)
+#define FLAG_O (FORCED_FLAG<<8)
+#define FLAG_R (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_mountpoint
+#define CLEANUP_mountpoint
+#ifndef TT
+#define TT this.mountpoint
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_mv
+#define CLEANUP_mv
+#ifndef TT
+#define TT this.mv
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_x (1LL<<7)
+#endif
+
+#ifdef FOR_nbd_client
+#define CLEANUP_nbd_client
+#ifndef TT
+#define TT this.nbd_client
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_nbd_server
+#define CLEANUP_nbd_server
+#ifndef TT
+#define TT this.nbd_server
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_netcat
+#define CLEANUP_netcat
+#ifndef TT
+#define TT this.netcat
+#endif
+#define FLAG_z (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_6 (FORCED_FLAG<<5)
+#define FLAG_4 (FORCED_FLAG<<6)
+#define FLAG_f (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_q (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#define FLAG_W (FORCED_FLAG<<11)
+#define FLAG_w (FORCED_FLAG<<12)
+#define FLAG_L (FORCED_FLAG<<13)
+#define FLAG_l (FORCED_FLAG<<14)
+#define FLAG_E (FORCED_FLAG<<15)
+#define FLAG_t (FORCED_FLAG<<16)
+#endif
+
+#ifdef FOR_netstat
+#define CLEANUP_netstat
+#ifndef TT
+#define TT this.netstat
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_w (FORCED_FLAG<<6)
+#define FLAG_x (FORCED_FLAG<<7)
+#define FLAG_r (FORCED_FLAG<<8)
+#define FLAG_W (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_nice
+#define CLEANUP_nice
+#ifndef TT
+#define TT this.nice
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_nl
+#define CLEANUP_nl
+#ifndef TT
+#define TT this.nl
+#endif
+#define FLAG_E (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_b (1LL<<3)
+#define FLAG_w (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_nohup
+#define CLEANUP_nohup
+#ifndef TT
+#define TT this.nohup
+#endif
+#endif
+
+#ifdef FOR_nproc
+#define CLEANUP_nproc
+#ifndef TT
+#define TT this.nproc
+#endif
+#define FLAG_all (1LL<<0)
+#endif
+
+#ifdef FOR_nsenter
+#define CLEANUP_nsenter
+#ifndef TT
+#define TT this.nsenter
+#endif
+#define FLAG_U (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_t (FORCED_FLAG<<7)
+#define FLAG_F (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_od
+#define CLEANUP_od
+#ifndef TT
+#define TT this.od
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_A (1LL<<1)
+#define FLAG_b (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_x (1LL<<7)
+#define FLAG_N (1LL<<8)
+#define FLAG_w (1LL<<9)
+#define FLAG_v (1LL<<10)
+#define FLAG_j (1LL<<11)
+#endif
+
+#ifdef FOR_oneit
+#define CLEANUP_oneit
+#ifndef TT
+#define TT this.oneit
+#endif
+#define FLAG_3 (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_openvt
+#define CLEANUP_openvt
+#ifndef TT
+#define TT this.openvt
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_partprobe
+#define CLEANUP_partprobe
+#ifndef TT
+#define TT this.partprobe
+#endif
+#endif
+
+#ifdef FOR_passwd
+#define CLEANUP_passwd
+#ifndef TT
+#define TT this.passwd
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_paste
+#define CLEANUP_paste
+#ifndef TT
+#define TT this.paste
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_d (1LL<<1)
+#endif
+
+#ifdef FOR_patch
+#define CLEANUP_patch
+#ifndef TT
+#define TT this.patch
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_R (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_l (1LL<<6)
+#define FLAG_u (1LL<<7)
+#define FLAG_f (1LL<<8)
+#define FLAG_g (1LL<<9)
+#define FLAG_F (1LL<<10)
+#define FLAG_dry_run (1LL<<11)
+#define FLAG_no_backup_if_mismatch (1LL<<12)
+#endif
+
+#ifdef FOR_pgrep
+#define CLEANUP_pgrep
+#ifndef TT
+#define TT this.pgrep
+#endif
+#define FLAG_L (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_G (1LL<<6)
+#define FLAG_g (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_s (1LL<<9)
+#define FLAG_t (1LL<<10)
+#define FLAG_U (1LL<<11)
+#define FLAG_u (1LL<<12)
+#define FLAG_d (1LL<<13)
+#define FLAG_l (1LL<<14)
+#define FLAG_c (1LL<<15)
+#endif
+
+#ifdef FOR_pidof
+#define CLEANUP_pidof
+#ifndef TT
+#define TT this.pidof
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_ping
+#define CLEANUP_ping
+#ifndef TT
+#define TT this.ping
+#endif
+#define FLAG_I (FORCED_FLAG<<0)
+#define FLAG_6 (FORCED_FLAG<<1)
+#define FLAG_4 (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_w (FORCED_FLAG<<5)
+#define FLAG_W (FORCED_FLAG<<6)
+#define FLAG_i (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_c (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_m (FORCED_FLAG<<11)
+#endif
+
+#ifdef FOR_pivot_root
+#define CLEANUP_pivot_root
+#ifndef TT
+#define TT this.pivot_root
+#endif
+#endif
+
+#ifdef FOR_pkill
+#define CLEANUP_pkill
+#ifndef TT
+#define TT this.pkill
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_G (1LL<<6)
+#define FLAG_g (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_s (1LL<<9)
+#define FLAG_t (1LL<<10)
+#define FLAG_U (1LL<<11)
+#define FLAG_u (1LL<<12)
+#define FLAG_V (1LL<<13)
+#endif
+
+#ifdef FOR_pmap
+#define CLEANUP_pmap
+#ifndef TT
+#define TT this.pmap
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_printenv
+#define CLEANUP_printenv
+#ifndef TT
+#define TT this.printenv
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_null (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_printf
+#define CLEANUP_printf
+#ifndef TT
+#define TT this.printf
+#endif
+#endif
+
+#ifdef FOR_ps
+#define CLEANUP_ps
+#ifndef TT
+#define TT this.ps
+#endif
+#define FLAG_Z (1LL<<0)
+#define FLAG_w (1LL<<1)
+#define FLAG_G (1LL<<2)
+#define FLAG_g (1LL<<3)
+#define FLAG_U (1LL<<4)
+#define FLAG_u (1LL<<5)
+#define FLAG_T (1LL<<6)
+#define FLAG_t (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_p (1LL<<9)
+#define FLAG_O (1LL<<10)
+#define FLAG_o (1LL<<11)
+#define FLAG_n (1LL<<12)
+#define FLAG_M (1LL<<13)
+#define FLAG_l (1LL<<14)
+#define FLAG_f (1LL<<15)
+#define FLAG_e (1LL<<16)
+#define FLAG_d (1LL<<17)
+#define FLAG_A (1LL<<18)
+#define FLAG_a (1LL<<19)
+#define FLAG_P (1LL<<20)
+#define FLAG_k (1LL<<21)
+#endif
+
+#ifdef FOR_pwd
+#define CLEANUP_pwd
+#ifndef TT
+#define TT this.pwd
+#endif
+#define FLAG_P (1LL<<0)
+#define FLAG_L (1LL<<1)
+#endif
+
+#ifdef FOR_pwdx
+#define CLEANUP_pwdx
+#ifndef TT
+#define TT this.pwdx
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_pwgen
+#define CLEANUP_pwgen
+#ifndef TT
+#define TT this.pwgen
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#define FLAG_1 (FORCED_FLAG<<3)
+#define FLAG_C (FORCED_FLAG<<4)
+#define FLAG_h (FORCED_FLAG<<5)
+#define FLAG_B (FORCED_FLAG<<6)
+#define FLAG_s (FORCED_FLAG<<7)
+#define FLAG_y (FORCED_FLAG<<8)
+#define FLAG_n (FORCED_FLAG<<9)
+#define FLAG_c (FORCED_FLAG<<10)
+#define FLAG_r (FORCED_FLAG<<11)
+#endif
+
+#ifdef FOR_readahead
+#define CLEANUP_readahead
+#ifndef TT
+#define TT this.readahead
+#endif
+#endif
+
+#ifdef FOR_readelf
+#define CLEANUP_readelf
+#ifndef TT
+#define TT this.readelf
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_W (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_l (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_e (FORCED_FLAG<<8)
+#define FLAG_d (FORCED_FLAG<<9)
+#define FLAG_a (FORCED_FLAG<<10)
+#define FLAG_A (FORCED_FLAG<<11)
+#define FLAG_dyn_syms (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_readlink
+#define CLEANUP_readlink
+#ifndef TT
+#define TT this.readlink
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_realpath
+#define CLEANUP_realpath
+#ifndef TT
+#define TT this.realpath
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_P (1LL<<4)
+#define FLAG_L (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_R (1LL<<7)
+#define FLAG_relative_base (1LL<<8)
+#endif
+
+#ifdef FOR_reboot
+#define CLEANUP_reboot
+#ifndef TT
+#define TT this.reboot
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_renice
+#define CLEANUP_renice
+#ifndef TT
+#define TT this.renice
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_g (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_reset
+#define CLEANUP_reset
+#ifndef TT
+#define TT this.reset
+#endif
+#endif
+
+#ifdef FOR_restorecon
+#define CLEANUP_restorecon
+#ifndef TT
+#define TT this.restorecon
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_F (FORCED_FLAG<<4)
+#define FLAG_D (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_rev
+#define CLEANUP_rev
+#ifndef TT
+#define TT this.rev
+#endif
+#endif
+
+#ifdef FOR_rfkill
+#define CLEANUP_rfkill
+#ifndef TT
+#define TT this.rfkill
+#endif
+#endif
+
+#ifdef FOR_rm
+#define CLEANUP_rm
+#ifndef TT
+#define TT this.rm
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_R (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_rmdir
+#define CLEANUP_rmdir
+#ifndef TT
+#define TT this.rmdir
+#endif
+#define FLAG_p (1LL<<0)
+#define FLAG_ignore_fail_on_non_empty (1LL<<1)
+#endif
+
+#ifdef FOR_rmmod
+#define CLEANUP_rmmod
+#ifndef TT
+#define TT this.rmmod
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_w (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_route
+#define CLEANUP_route
+#ifndef TT
+#define TT this.route
+#endif
+#define FLAG_A (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_rtcwake
+#define CLEANUP_rtcwake
+#ifndef TT
+#define TT this.rtcwake
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_d (FORCED_FLAG<<6)
+#define FLAG_a (FORCED_FLAG<<7)
+#define FLAG_auto (FORCED_FLAG<<8)
+#define FLAG_list_modes (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_runcon
+#define CLEANUP_runcon
+#ifndef TT
+#define TT this.runcon
+#endif
+#endif
+
+#ifdef FOR_sed
+#define CLEANUP_sed
+#ifndef TT
+#define TT this.sed
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_z (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_E (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_f (1LL<<6)
+#define FLAG_e (1LL<<7)
+#define FLAG_tarxform (1LL<<8)
+#define FLAG_version (1LL<<9)
+#define FLAG_help (1LL<<10)
+#endif
+
+#ifdef FOR_sendevent
+#define CLEANUP_sendevent
+#ifndef TT
+#define TT this.sendevent
+#endif
+#endif
+
+#ifdef FOR_seq
+#define CLEANUP_seq
+#ifndef TT
+#define TT this.seq
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_f (1LL<<2)
+#endif
+
+#ifdef FOR_set
+#define CLEANUP_set
+#ifndef TT
+#define TT this.set
+#endif
+#endif
+
+#ifdef FOR_setenforce
+#define CLEANUP_setenforce
+#ifndef TT
+#define TT this.setenforce
+#endif
+#endif
+
+#ifdef FOR_setfattr
+#define CLEANUP_setfattr
+#ifndef TT
+#define TT this.setfattr
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_setsid
+#define CLEANUP_setsid
+#ifndef TT
+#define TT this.setsid
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_w (1LL<<2)
+#endif
+
+#ifdef FOR_sh
+#define CLEANUP_sh
+#ifndef TT
+#define TT this.sh
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_norc (FORCED_FLAG<<3)
+#define FLAG_noprofile (FORCED_FLAG<<4)
+#define FLAG_noediting (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_sha3sum
+#define CLEANUP_sha3sum
+#ifndef TT
+#define TT this.sha3sum
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_S (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_shift
+#define CLEANUP_shift
+#ifndef TT
+#define TT this.shift
+#endif
+#endif
+
+#ifdef FOR_shred
+#define CLEANUP_shred
+#ifndef TT
+#define TT this.shred
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_x (FORCED_FLAG<<5)
+#define FLAG_z (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_shuf
+#define CLEANUP_shuf
+#ifndef TT
+#define TT this.shuf
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_z (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_skeleton
+#define CLEANUP_skeleton
+#ifndef TT
+#define TT this.skeleton
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_also (FORCED_FLAG<<8)
+#define FLAG_blubber (FORCED_FLAG<<9)
+#define FLAG_walrus (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_skeleton_alias
+#define CLEANUP_skeleton_alias
+#ifndef TT
+#define TT this.skeleton_alias
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_sleep
+#define CLEANUP_sleep
+#ifndef TT
+#define TT this.sleep
+#endif
+#endif
+
+#ifdef FOR_sntp
+#define CLEANUP_sntp
+#ifndef TT
+#define TT this.sntp
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_D (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_s (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_S (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_M (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_sort
+#define CLEANUP_sort
+#ifndef TT
+#define TT this.sort
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_z (1LL<<6)
+#define FLAG_s (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_C (1LL<<9)
+#define FLAG_M (1LL<<10)
+#define FLAG_b (1LL<<11)
+#define FLAG_V (1LL<<12)
+#define FLAG_x (1LL<<13)
+#define FLAG_t (1LL<<14)
+#define FLAG_k (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_m (1LL<<17)
+#define FLAG_T (1LL<<18)
+#define FLAG_S (1LL<<19)
+#define FLAG_g (1LL<<20)
+#endif
+
+#ifdef FOR_source
+#define CLEANUP_source
+#ifndef TT
+#define TT this.source
+#endif
+#endif
+
+#ifdef FOR_split
+#define CLEANUP_split
+#ifndef TT
+#define TT this.split
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_stat
+#define CLEANUP_stat
+#ifndef TT
+#define TT this.stat
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_c (1LL<<3)
+#endif
+
+#ifdef FOR_strace
+#define CLEANUP_strace
+#ifndef TT
+#define TT this.strace
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_strings
+#define CLEANUP_strings
+#ifndef TT
+#define TT this.strings
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_stty
+#define CLEANUP_stty
+#ifndef TT
+#define TT this.stty
+#endif
+#define FLAG_g (FORCED_FLAG<<0)
+#define FLAG_F (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_su
+#define CLEANUP_su
+#ifndef TT
+#define TT this.su
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_g (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#define FLAG_l (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_sulogin
+#define CLEANUP_sulogin
+#ifndef TT
+#define TT this.sulogin
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_swapoff
+#define CLEANUP_swapoff
+#ifndef TT
+#define TT this.swapoff
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_swapon
+#define CLEANUP_swapon
+#ifndef TT
+#define TT this.swapon
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_switch_root
+#define CLEANUP_switch_root
+#ifndef TT
+#define TT this.switch_root
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_sync
+#define CLEANUP_sync
+#ifndef TT
+#define TT this.sync
+#endif
+#endif
+
+#ifdef FOR_sysctl
+#define CLEANUP_sysctl
+#ifndef TT
+#define TT this.sysctl
+#endif
+#define FLAG_A (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_w (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_N (FORCED_FLAG<<5)
+#define FLAG_e (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_syslogd
+#define CLEANUP_syslogd
+#ifndef TT
+#define TT this.syslogd
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_K (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_O (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_s (FORCED_FLAG<<10)
+#define FLAG_b (FORCED_FLAG<<11)
+#define FLAG_R (FORCED_FLAG<<12)
+#define FLAG_l (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_tac
+#define CLEANUP_tac
+#ifndef TT
+#define TT this.tac
+#endif
+#endif
+
+#ifdef FOR_tail
+#define CLEANUP_tail
+#ifndef TT
+#define TT this.tail
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_F (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_tar
+#define CLEANUP_tar
+#ifndef TT
+#define TT this.tar
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_C (1LL<<3)
+#define FLAG_I (1LL<<4)
+#define FLAG_T (1LL<<5)
+#define FLAG_X (1LL<<6)
+#define FLAG_m (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_O (1LL<<9)
+#define FLAG_S (1LL<<10)
+#define FLAG_z (1LL<<11)
+#define FLAG_j (1LL<<12)
+#define FLAG_J (1LL<<13)
+#define FLAG_v (1LL<<14)
+#define FLAG_t (1LL<<15)
+#define FLAG_x (1LL<<16)
+#define FLAG_h (1LL<<17)
+#define FLAG_c (1LL<<18)
+#define FLAG_k (1LL<<19)
+#define FLAG_p (1LL<<20)
+#define FLAG_o (1LL<<21)
+#define FLAG_xform (1LL<<22)
+#define FLAG_strip (1LL<<23)
+#define FLAG_to_command (1LL<<24)
+#define FLAG_owner (1LL<<25)
+#define FLAG_group (1LL<<26)
+#define FLAG_mtime (1LL<<27)
+#define FLAG_mode (1LL<<28)
+#define FLAG_sort (1LL<<29)
+#define FLAG_exclude (1LL<<30)
+#define FLAG_overwrite (1LL<<31)
+#define FLAG_no_same_permissions (1LL<<32)
+#define FLAG_numeric_owner (1LL<<33)
+#define FLAG_null (1LL<<34)
+#define FLAG_no_recursion (1LL<<35)
+#define FLAG_full_time (1LL<<36)
+#define FLAG_restrict (1LL<<37)
+#define FLAG_selinux (1LL<<38)
+#define FLAG_show_transformed_names (1LL<<39)
+#define FLAG_wildcards_match_slash (1LL<<40)
+#define FLAG_no_wildcards_match_slash (1LL<<41)
+#define FLAG_wildcards (1LL<<42)
+#define FLAG_no_wildcards (1LL<<43)
+#define FLAG_anchored (1LL<<44)
+#define FLAG_no_anchored (1LL<<45)
+#define FLAG_ignore_case (1LL<<46)
+#define FLAG_no_ignore_case (1LL<<47)
+#define FLAG_one_file_system (1LL<<48)
+#endif
+
+#ifdef FOR_taskset
+#define CLEANUP_taskset
+#ifndef TT
+#define TT this.taskset
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_tcpsvd
+#define CLEANUP_tcpsvd
+#ifndef TT
+#define TT this.tcpsvd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_E (FORCED_FLAG<<1)
+#define FLAG_h (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#define FLAG_b (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_tee
+#define CLEANUP_tee
+#ifndef TT
+#define TT this.tee
+#endif
+#define FLAG_a (1LL<<0)
+#define FLAG_i (1LL<<1)
+#endif
+
+#ifdef FOR_telnet
+#define CLEANUP_telnet
+#ifndef TT
+#define TT this.telnet
+#endif
+#endif
+
+#ifdef FOR_telnetd
+#define CLEANUP_telnetd
+#ifndef TT
+#define TT this.telnetd
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_K (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_F (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_p (FORCED_FLAG<<6)
+#define FLAG_b (FORCED_FLAG<<7)
+#define FLAG_w (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_test
+#define CLEANUP_test
+#ifndef TT
+#define TT this.test
+#endif
+#endif
+
+#ifdef FOR_tftp
+#define CLEANUP_tftp
+#ifndef TT
+#define TT this.tftp
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_l (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_b (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_tftpd
+#define CLEANUP_tftpd
+#ifndef TT
+#define TT this.tftpd
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_time
+#define CLEANUP_time
+#ifndef TT
+#define TT this.time
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_timeout
+#define CLEANUP_timeout
+#ifndef TT
+#define TT this.timeout
+#endif
+#define FLAG_i (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_k (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_preserve_status (1LL<<4)
+#define FLAG_foreground (1LL<<5)
+#endif
+
+#ifdef FOR_top
+#define CLEANUP_top
+#ifndef TT
+#define TT this.top
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_u (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_o (FORCED_FLAG<<8)
+#define FLAG_k (FORCED_FLAG<<9)
+#define FLAG_H (FORCED_FLAG<<10)
+#define FLAG_h (FORCED_FLAG<<11)
+#define FLAG_O (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_touch
+#define CLEANUP_touch
+#ifndef TT
+#define TT this.touch
+#endif
+#define FLAG_h (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_m (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_c (1LL<<6)
+#define FLAG_a (1LL<<7)
+#endif
+
+#ifdef FOR_toybox
+#define CLEANUP_toybox
+#ifndef TT
+#define TT this.toybox
+#endif
+#endif
+
+#ifdef FOR_tr
+#define CLEANUP_tr
+#ifndef TT
+#define TT this.tr
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_C (1LL<<4)
+#endif
+
+#ifdef FOR_traceroute
+#define CLEANUP_traceroute
+#ifndef TT
+#define TT this.traceroute
+#endif
+#define FLAG_4 (FORCED_FLAG<<0)
+#define FLAG_6 (FORCED_FLAG<<1)
+#define FLAG_F (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#define FLAG_I (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_d (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_v (FORCED_FLAG<<8)
+#define FLAG_r (FORCED_FLAG<<9)
+#define FLAG_m (FORCED_FLAG<<10)
+#define FLAG_p (FORCED_FLAG<<11)
+#define FLAG_q (FORCED_FLAG<<12)
+#define FLAG_s (FORCED_FLAG<<13)
+#define FLAG_t (FORCED_FLAG<<14)
+#define FLAG_w (FORCED_FLAG<<15)
+#define FLAG_g (FORCED_FLAG<<16)
+#define FLAG_z (FORCED_FLAG<<17)
+#define FLAG_f (FORCED_FLAG<<18)
+#define FLAG_i (FORCED_FLAG<<19)
+#endif
+
+#ifdef FOR_true
+#define CLEANUP_true
+#ifndef TT
+#define TT this.true
+#endif
+#endif
+
+#ifdef FOR_truncate
+#define CLEANUP_truncate
+#ifndef TT
+#define TT this.truncate
+#endif
+#define FLAG_c (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_ts
+#define CLEANUP_ts
+#ifndef TT
+#define TT this.ts
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_i (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_tsort
+#define CLEANUP_tsort
+#ifndef TT
+#define TT this.tsort
+#endif
+#endif
+
+#ifdef FOR_tty
+#define CLEANUP_tty
+#ifndef TT
+#define TT this.tty
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_tunctl
+#define CLEANUP_tunctl
+#ifndef TT
+#define TT this.tunctl
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_uclampset
+#define CLEANUP_uclampset
+#ifndef TT
+#define TT this.uclampset
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_M (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_ulimit
+#define CLEANUP_ulimit
+#ifndef TT
+#define TT this.ulimit
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_m (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#define FLAG_q (FORCED_FLAG<<9)
+#define FLAG_R (FORCED_FLAG<<10)
+#define FLAG_r (FORCED_FLAG<<11)
+#define FLAG_s (FORCED_FLAG<<12)
+#define FLAG_t (FORCED_FLAG<<13)
+#define FLAG_u (FORCED_FLAG<<14)
+#define FLAG_v (FORCED_FLAG<<15)
+#define FLAG_a (FORCED_FLAG<<16)
+#define FLAG_H (FORCED_FLAG<<17)
+#define FLAG_S (FORCED_FLAG<<18)
+#define FLAG_P (FORCED_FLAG<<19)
+#endif
+
+#ifdef FOR_umount
+#define CLEANUP_umount
+#ifndef TT
+#define TT this.umount
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#define FLAG_d (FORCED_FLAG<<7)
+#define FLAG_n (FORCED_FLAG<<8)
+#define FLAG_c (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_uname
+#define CLEANUP_uname
+#ifndef TT
+#define TT this.uname
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_p (1LL<<7)
+#endif
+
+#ifdef FOR_unicode
+#define CLEANUP_unicode
+#ifndef TT
+#define TT this.unicode
+#endif
+#endif
+
+#ifdef FOR_uniq
+#define CLEANUP_uniq
+#ifndef TT
+#define TT this.uniq
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_d (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_z (1LL<<4)
+#define FLAG_w (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_f (1LL<<7)
+#endif
+
+#ifdef FOR_unix2dos
+#define CLEANUP_unix2dos
+#ifndef TT
+#define TT this.unix2dos
+#endif
+#endif
+
+#ifdef FOR_unlink
+#define CLEANUP_unlink
+#ifndef TT
+#define TT this.unlink
+#endif
+#endif
+
+#ifdef FOR_unset
+#define CLEANUP_unset
+#ifndef TT
+#define TT this.unset
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_unshare
+#define CLEANUP_unshare
+#ifndef TT
+#define TT this.unshare
+#endif
+#define FLAG_U (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_r (FORCED_FLAG<<7)
+#define FLAG_f (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_uptime
+#define CLEANUP_uptime
+#ifndef TT
+#define TT this.uptime
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_useradd
+#define CLEANUP_useradd
+#ifndef TT
+#define TT this.useradd
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_D (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#define FLAG_g (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_G (FORCED_FLAG<<6)
+#define FLAG_u (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_userdel
+#define CLEANUP_userdel
+#ifndef TT
+#define TT this.userdel
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_usleep
+#define CLEANUP_usleep
+#ifndef TT
+#define TT this.usleep
+#endif
+#endif
+
+#ifdef FOR_uudecode
+#define CLEANUP_uudecode
+#ifndef TT
+#define TT this.uudecode
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_uuencode
+#define CLEANUP_uuencode
+#ifndef TT
+#define TT this.uuencode
+#endif
+#define FLAG_m (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_uuidgen
+#define CLEANUP_uuidgen
+#ifndef TT
+#define TT this.uuidgen
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_vconfig
+#define CLEANUP_vconfig
+#ifndef TT
+#define TT this.vconfig
+#endif
+#endif
+
+#ifdef FOR_vi
+#define CLEANUP_vi
+#ifndef TT
+#define TT this.vi
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_vmstat
+#define CLEANUP_vmstat
+#ifndef TT
+#define TT this.vmstat
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_w
+#define CLEANUP_w
+#ifndef TT
+#define TT this.w
+#endif
+#endif
+
+#ifdef FOR_wait
+#define CLEANUP_wait
+#ifndef TT
+#define TT this.wait
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_watch
+#define CLEANUP_watch
+#ifndef TT
+#define TT this.watch
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_watchdog
+#define CLEANUP_watchdog
+#ifndef TT
+#define TT this.watchdog
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_F (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_wc
+#define CLEANUP_wc
+#ifndef TT
+#define TT this.wc
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_w (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_L (1LL<<4)
+#endif
+
+#ifdef FOR_wget
+#define CLEANUP_wget
+#ifndef TT
+#define TT this.wget
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_O (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_max_redirect (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_which
+#define CLEANUP_which
+#ifndef TT
+#define TT this.which
+#endif
+#define FLAG_a (1LL<<0)
+#endif
+
+#ifdef FOR_who
+#define CLEANUP_who
+#ifndef TT
+#define TT this.who
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_xargs
+#define CLEANUP_xargs
+#ifndef TT
+#define TT this.xargs
+#endif
+#define FLAG_0 (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_r (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_P (1LL<<7)
+#define FLAG_E (1LL<<8)
+#endif
+
+#ifdef FOR_xxd
+#define CLEANUP_xxd
+#ifndef TT
+#define TT this.xxd
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_e (1LL<<4)
+#define FLAG_g (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_c (1LL<<8)
+#endif
+
+#ifdef FOR_xzcat
+#define CLEANUP_xzcat
+#ifndef TT
+#define TT this.xzcat
+#endif
+#endif
+
+#ifdef FOR_yes
+#define CLEANUP_yes
+#ifndef TT
+#define TT this.yes
+#endif
+#endif
+
+#ifdef FOR_zcat
+#define CLEANUP_zcat
+#ifndef TT
+#define TT this.zcat
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#endif
+
diff --git a/android/linux/generated/globals.h b/android/linux/generated/globals.h
new file mode 100644
index 0000000..362a97b
--- /dev/null
+++ b/android/linux/generated/globals.h
@@ -0,0 +1,447 @@
+struct gzip_data {
+  int level;
+};
+
+struct hostname_data {
+  char *F;
+};
+
+struct md5sum_data {
+  int sawline;
+};
+
+struct mktemp_data {
+  char *p, *tmpdir;
+};
+
+struct seq_data {
+  char *s, *f;
+
+  int precision, buflen;
+};
+
+struct microcom_data {
+  long s;
+
+  int fd, stok;
+  struct termios old_stdin, old_fd;
+};
+
+struct dos2unix_data {
+  char *tempfile;
+};
+
+struct getopt_data {
+  struct arg_list *l;
+  char *o, *n;
+};
+
+struct realpath_data {
+  char *R, *relative_base;
+};
+
+struct setsid_data {
+  long c;
+};
+
+struct stat_data {
+  char *c;
+
+  union {
+    struct stat st;
+    struct statfs sf;
+  } stat;
+  char *file, *pattern;
+  int patlen;
+};
+
+struct timeout_data {
+  char *s, *k;
+
+  struct pollfd pfd;
+  sigjmp_buf sj;
+  int fds[2], pid, rc;
+};
+
+struct truncate_data {
+  char *s;
+
+  long long size;
+  int type;
+};
+
+struct xxd_data {
+  long s, g, o, l, c;
+};
+
+struct diff_data {
+  long U;
+  struct arg_list *L;
+  char *F, *S, *new_line_format, *old_line_format, *unchanged_line_format;
+
+  int dir_num, size, is_binary, differ, change, len[2], *offset[2];
+  struct stat st[2];
+  struct {
+    char **list;
+    int nr_elm;
+  } dir[2];
+  struct {
+    FILE *fp;
+    int len;
+  } file[2];
+};
+
+struct expr_data {
+  char **tok, *delete;
+};
+
+struct tr_data {
+  short *map;
+  int len1, len2;
+};
+
+struct basename_data {
+  char *s;
+};
+
+struct chmod_data {
+  char *mode;
+};
+
+struct cmp_data {
+  long n;
+
+  int fd;
+  char *name;
+};
+
+struct cp_data {
+  union {
+    // install's options
+    struct {
+      char *g, *o, *m, *t;
+    } i;
+    // cp's options
+    struct {
+      char *t, *preserve;
+    } c;
+  };
+
+  char *destname;
+  struct stat top;
+  int (*callback)(struct dirtree *try);
+  uid_t uid;
+  gid_t gid;
+  int pflags;
+};
+
+struct cpio_data {
+  char *F, *H, *R;
+};
+
+struct cut_data {
+  char *d, *O;
+  struct arg_list *select[5]; // we treat them the same, so loop through
+
+  unsigned line;
+  int pairs;
+  regex_t reg;
+};
+
+struct date_data {
+  char *s, *r, *I, *D, *d;
+
+  unsigned nano;
+};
+
+struct dd_data {
+  // Display fields
+  int show_xfer, show_records;
+  unsigned long long bytes, in_full, in_part, out_full, out_part, start;
+};
+
+struct du_data {
+  long d;
+
+  unsigned long depth, total;
+  dev_t st_dev;
+  void *inodes;
+};
+
+struct env_data {
+  struct arg_list *u;
+  char *e;
+};
+
+struct file_data {
+  int max_name_len;
+  off_t len;
+};
+
+struct find_data {
+  char **filter;
+  struct double_list *argdata;
+  int topdir, xdev, depth;
+  time_t now;
+  long max_bytes;
+  char *start;
+};
+
+struct grep_data {
+  long m, A, B, C;
+  struct arg_list *f, *e, *M, *S, *exclude_dir;
+  char *color;
+
+  char *purple, *cyan, *red, *green, *grey;
+  struct double_list *reg;
+  int found, tried, delim;
+  struct arg_list **fixed;
+};
+
+struct head_data {
+  long c, n;
+
+  int file_no;
+};
+
+struct id_data {
+  int is_groups;
+};
+
+struct ln_data {
+  char *t;
+};
+
+struct ls_data {
+  long w, l, block_size;
+  char *color, *sort;
+
+  struct dirtree *files, *singledir;
+  unsigned screen_width;
+  int nl_title;
+  char *escmore;
+};
+
+struct mkdir_data {
+  char *m, *Z;
+};
+
+struct nl_data {
+  char *s, *n, *b;
+  long w, l, v;
+
+  // Count of consecutive blank lines for -l has to persist between files
+  long lcount, slen;
+};
+
+struct od_data {
+  struct arg_list *t;
+  char *A;
+  long N, w, j;
+
+  int address_idx;
+  unsigned types, leftover, star;
+  char *buf; // Points to buffers[0] or buffers[1].
+  char *bufs[2]; // Used to detect duplicate lines.
+  off_t pos;
+};
+
+struct paste_data {
+  char *d;
+
+  int files;
+};
+
+struct patch_data {
+  char *i, *d;
+  long v, p, g, F;
+
+  void *current_hunk;
+  long oldline, oldlen, newline, newlen, linenum, outnum;
+  int context, state, filein, fileout, filepatch, hunknum;
+  char *tempname;
+};
+
+struct ps_data {
+  union {
+    struct {
+      struct arg_list *G, *g, *U, *u, *t, *s, *p, *O, *o, *P, *k;
+    } ps;
+    struct {
+      long n, m, d, s;
+      struct arg_list *u, *p, *o, *k, *O;
+    } top;
+    struct {
+      char *L;
+      struct arg_list *G, *g, *P, *s, *t, *U, *u;
+      char *d;
+
+      void *regexes, *snapshot;
+      int signal;
+      pid_t self, match;
+    } pgrep;
+  };
+
+  struct ps_ptr_len {
+    void *ptr;
+    long len;
+  } gg, GG, pp, PP, ss, tt, uu, UU;
+  struct dirtree *threadparent;
+  unsigned width, height, scroll;
+  dev_t tty;
+  void *fields, *kfields;
+  long long ticks, bits, time;
+  int kcount, forcek, sortpos, pidlen;
+  int (*match_process)(long long *slot);
+  void (*show_process)(void *tb);
+};
+
+struct sed_data {
+  char *i;
+  struct arg_list *f, *e;
+
+  // processed pattern list
+  struct double_list *pattern;
+
+  char *nextline, *remember, *tarxform;
+  void *restart, *lastregex;
+  long nextlen, rememberlen, count;
+  int fdout, noeol;
+  unsigned xx, tarxlen, xflags;
+  char delim, xftype;
+};
+
+struct sort_data {
+  char *t;
+  struct arg_list *k;
+  char *o, *T, S;
+
+  void *key_list;
+  unsigned linecount;
+  char **lines, *name;
+};
+
+struct tail_data {
+  long n, c;
+  char *s;
+
+  int file_no, last_fd, ss;
+  struct xnotify *not;
+  struct {
+    char *path;
+    int fd;
+    struct dev_ino di;
+  } *F;
+};
+
+struct tar_data {
+  char *f, *C, *I;
+  struct arg_list *T, *X, *xform;
+  long strip;
+  char *to_command, *owner, *group, *mtime, *mode, *sort;
+  struct arg_list *exclude;
+
+  struct double_list *incl, *excl, *seen;
+  struct string_list *dirs;
+  char *cwd, **xfsed;
+  int fd, ouid, ggid, hlc, warn, sparselen, pid, xfpipe[2];
+  struct dev_ino archive_di;
+  long long *sparse;
+  time_t mtt;
+
+  // hardlinks seen so far (hlc many)
+  struct {
+    char *arg;
+    struct dev_ino di;
+  } *hlx;
+
+  // Parsed information about a tar header.
+  struct tar_header {
+    char *name, *link_target, *uname, *gname;
+    long long size, ssize;
+    uid_t uid;
+    gid_t gid;
+    mode_t mode;
+    time_t mtime;
+    dev_t device;
+  } hdr;
+};
+
+struct tee_data {
+  void *outputs;
+  int out;
+};
+
+struct touch_data {
+  char *t, *r, *d;
+};
+
+struct uniq_data {
+  long w, s, f;
+
+  long repeats;
+};
+
+struct wc_data {
+  unsigned long totals[5];
+};
+
+struct xargs_data {
+  long s, n, P;
+  char *E;
+
+  long entries, bytes, np;
+  char delim;
+  FILE *tty;
+};
+extern union global_union {
+	struct gzip_data gzip;
+	struct hostname_data hostname;
+	struct md5sum_data md5sum;
+	struct mktemp_data mktemp;
+	struct seq_data seq;
+	struct microcom_data microcom;
+	struct dos2unix_data dos2unix;
+	struct getopt_data getopt;
+	struct realpath_data realpath;
+	struct setsid_data setsid;
+	struct stat_data stat;
+	struct timeout_data timeout;
+	struct truncate_data truncate;
+	struct xxd_data xxd;
+	struct diff_data diff;
+	struct expr_data expr;
+	struct tr_data tr;
+	struct basename_data basename;
+	struct chmod_data chmod;
+	struct cmp_data cmp;
+	struct cp_data cp;
+	struct cpio_data cpio;
+	struct cut_data cut;
+	struct date_data date;
+	struct dd_data dd;
+	struct du_data du;
+	struct env_data env;
+	struct file_data file;
+	struct find_data find;
+	struct grep_data grep;
+	struct head_data head;
+	struct id_data id;
+	struct ln_data ln;
+	struct ls_data ls;
+	struct mkdir_data mkdir;
+	struct nl_data nl;
+	struct od_data od;
+	struct paste_data paste;
+	struct patch_data patch;
+	struct ps_data ps;
+	struct sed_data sed;
+	struct sort_data sort;
+	struct tail_data tail;
+	struct tar_data tar;
+	struct tee_data tee;
+	struct touch_data touch;
+	struct uniq_data uniq;
+	struct wc_data wc;
+	struct xargs_data xargs;
+} this;
diff --git a/android/linux/generated/help.h b/android/linux/generated/help.h
new file mode 100644
index 0000000..b3c74b1
--- /dev/null
+++ b/android/linux/generated/help.h
@@ -0,0 +1,692 @@
+#define HELP_toybox_force_nommu "When using musl-libc on a nommu system, you'll need to say \"y\" here\nunless you used the patch in the mcm-buildall.sh script. You can also\nsay \"y\" here to test the nommu codepaths on an mmu system.\n\nA nommu system can't use fork(), it can only vfork() which suspends\nthe parent until the child calls exec() or exits. When a program\nneeds a second instance of itself to run specific code at the same\ntime as the parent, it must use a more complicated approach (such as\nexec(\"/proc/self/exe\") then pass data to the new child through a pipe)\nwhich is larger and slower, especially for things like toysh subshells\nthat need to duplicate a lot of internal state in the child process\nfork() gives you for free.\n\nLibraries like uclibc omit fork() on nommu systems, allowing\ncompile-time probes to select which codepath to use. But musl\nintentionally includes a broken version of fork() that always returns\n-ENOSYS on nommu systems, and goes out of its way to prevent any\ncross-compile compatible compile-time probes for a nommu system.\n(It doesn't even #define __MUSL__ in features.h.) Musl does this\ndespite the fact that a nommu system can't even run standard ELF\nbinaries (requiring specially packaged executables) because it wants\nto force every program to either include all nommu code in every\ninstance ever built, or drop nommu support altogether.\n\nBuilding a scripts/mcm-buildall.sh toolchain patches musl to fix this."
+
+#define HELP_toybox_uid_usr "When commands like useradd/groupadd allocate user IDs, start here."
+
+#define HELP_toybox_uid_sys "When commands like useradd/groupadd allocate system IDs, start here."
+
+#define HELP_toybox_debug "Enable extra checks for debugging purposes. All of them catch\nthings that can only go wrong at development time, not runtime."
+
+#define HELP_toybox_norecurse "When one toybox command calls another, usually it just calls the new\ncommand's main() function rather than searching the $PATH and calling\nexec on another file (which is much slower).\n\nThis disables that optimization, so toybox will run external commands\n       even when it has a built-in version of that command. This requires\n       toybox symlinks to be installed in the $PATH, or re-invoking the\n       \"toybox\" multiplexer command by name."
+
+#define HELP_toybox_free "When a program exits, the operating system will clean up after it\n(free memory, close files, etc). To save size, toybox usually relies\non this behavior. If you're running toybox under a debugger or\nwithout a real OS (ala newlib+libgloss), enable this to make toybox\nclean up after itself."
+
+#define HELP_toybox_zhelp "Compress help with gzip -9, deflating when displayed. This makes the\nbinary smaller but can increase runtime memory usage."
+
+#define HELP_toybox_help_dashdash "Support --help argument in all commands, even ones with a NULL\noptstring. (Use TOYFLAG_NOHELP to disable.) Produces the same output\nas \"help command\". --version shows toybox version."
+
+#define HELP_toybox_help "Include help text for each command."
+
+#define HELP_toybox_float "Include floating point support infrastructure and commands that\nrequire it."
+
+#define HELP_toybox_libz "Use libz for gz support."
+
+#define HELP_toybox_libcrypto "Use faster hash functions out of external -lcrypto library."
+
+#define HELP_toybox_smack "Include SMACK options in commands like ls for systems like Tizen."
+
+#define HELP_toybox_selinux "Include SELinux options in commands such as ls, and add\nSELinux-specific commands such as chcon to the Android menu."
+
+#define HELP_toybox_lsm_none "Don't try to achieve \"watertight\" by plugging the holes in a\ncollander, instead use conventional unix security (and possibly\nLinux Containers) for a simple straightforward system."
+
+#define HELP_toybox_suid "Support for the Set User ID bit, to install toybox suid root and drop\npermissions for commands which do not require root access. To use\nthis change ownership of the file to the root user and set the suid\nbit in the file permissions:\n\nchown root:root toybox; chmod +s toybox\n\nprompt \"Security Blanket\"\ndefault TOYBOX_LSM_NONE\nhelp\nSelect a Linux Security Module to complicate your system\nuntil you can't find holes in it."
+
+#define HELP_toybox "usage: toybox [--long | --help | --version | [COMMAND] [ARGUMENTS...]]\n\nWith no arguments, \"toybox\" shows available COMMAND names. Add --long\nto include suggested install path for each command, see\nhttps://landley.net/toybox/faq.html#install for details.\n\nFirst argument is name of a COMMAND to run, followed by any ARGUMENTS\nto that command. Most toybox commands also understand:\n\n--help		Show command help (only)\n--version	Show toybox version (only)\n\nThe filename \"-\" means stdin/stdout, and \"--\" stops argument parsing.\n\nNumerical arguments accept a single letter suffix for\nkilo, mega, giga, tera, peta, and exabytes, plus an additional\n\"d\" to indicate decimal 1000's instead of 1024.\n\nDurations can be decimal fractions and accept minute (\"m\"), hour (\"h\"),\nor day (\"d\") suffixes (so 0.1m = 6s)."
+
+#define HELP_setenforce "usage: setenforce [enforcing|permissive|1|0]\n\nSets whether SELinux is enforcing (1) or permissive (0)."
+
+#define HELP_sendevent "usage: sendevent DEVICE TYPE CODE VALUE\n\nSends a Linux input event."
+
+#define HELP_runcon "usage: runcon CONTEXT COMMAND [ARGS...]\n\nRun a command in a specified security context."
+
+#define HELP_restorecon "usage: restorecon [-D] [-F] [-R] [-n] [-v] FILE...\n\nRestores the default security contexts for the given files.\n\n-D	Apply to /data/data too\n-F	Force reset\n-R	Recurse into directories\n-n	Don't make any changes; useful with -v to see what would change\n-v	Verbose"
+
+#define HELP_log "usage: log [-p PRI] [-t TAG] [MESSAGE...]\n\nLogs message (or stdin) to logcat.\n\n-p	Use the given priority instead of INFO:\n	d: DEBUG  e: ERROR  f: FATAL  i: INFO  v: VERBOSE  w: WARN  s: SILENT\n-t	Use the given tag instead of \"log\""
+
+#define HELP_load_policy "usage: load_policy FILE\n\nLoad the specified SELinux policy file."
+
+#define HELP_getenforce "usage: getenforce\n\nShows whether SELinux is disabled, enforcing, or permissive."
+
+#define HELP_skeleton_alias "usage: skeleton_alias [-dq] [-b NUMBER]\n\nExample of a second command with different arguments in the same source\nfile as the first. This allows shared infrastructure outside of lib/."
+
+#define HELP_skeleton "usage: skeleton [-a] [-b STRING] [-c NUMBER] [-d LIST] [-e COUNT] [...]\n\nTemplate for new commands. You don't need this.\n\nWhen creating a new command, copy this file and delete the parts you\ndon't need. Be sure to replace all instances of \"skeleton\" (upper and lower\ncase) with your new command name.\n\nFor simple commands, \"hello.c\" is probably a better starting point."
+
+#define HELP_logpath "usage: logpath ...\n\nAppend command line to $LOGPATH, then call second instance\nof command in $PATH."
+
+#define HELP_hostid "usage: hostid\n\nPrint the numeric identifier for the current host."
+
+#define HELP_hello "usage: hello\n\nA hello world program.\n\nMostly used as a simple template for adding new commands.\nOccasionally nice to smoketest kernel booting via \"init=/usr/bin/hello\"."
+
+#define HELP_demo_utf8towc "usage: demo_utf8towc\n\nPrint differences between toybox's utf8 conversion routines vs libc du jour."
+
+#define HELP_demo_scankey "usage: demo_scankey\n\nMove a letter around the screen. Hit ESC to exit."
+
+#define HELP_demo_number "usage: demo_number [-hsbi] [-D LEN] NUMBER...\n\n-D	output field is LEN chars\n-M	input units (index into bkmgtpe)\n-c	Comma comma down do be do down down\n-b	Use \"B\" for single byte units (HR_B)\n-d	Decimal units\n-h	Human readable\n-s	Space between number and units (HR_SPACE)"
+
+#define HELP_demo_many_options "usage: demo_many_options -[a-zA-Z]\n\nPrint the optflags value of the command arguments, in hex."
+
+#define HELP_umount "usage: umount [-a [-t TYPE[,TYPE...]]] [-vrfD] [DIR...]\n\nUnmount the listed filesystems.\n\n-a	Unmount all mounts in /proc/mounts instead of command line list\n-D	Don't free loopback device(s)\n-f	Force unmount\n-l	Lazy unmount (detach from filesystem now, close when last user does)\n-n	Don't use /proc/mounts\n-r	Remount read only if unmounting fails\n-t	Restrict \"all\" to mounts of TYPE (or use \"noTYPE\" to skip)\n-v	Verbose"
+
+#define HELP_sync "usage: sync\n\nWrite pending cached data to disk (synchronize), blocking until done."
+
+#define HELP_su "usage: su [-lp] [-u UID] [-g GID,...] [-s SHELL] [-c CMD] [USER [COMMAND...]]\n\nSwitch user, prompting for password of new user when not run as root.\n\nWith one argument, switch to USER and run user's shell from /etc/passwd.\nWith no arguments, USER is root. If COMMAND line provided after USER,\nexec() it as new USER (bypassing shell). If -u or -g specified, first\nargument (if any) isn't USER (it's COMMAND).\n\nfirst argument is USER name to switch to (which must exist).\nNon-root users are prompted for new user's password.\n\n-s	Shell to use (default is user's shell from /etc/passwd)\n-c	Command line to pass to -s shell (ala sh -c \"CMD\")\n-l	Reset environment as if new login.\n-u	Switch to UID instead of USER\n-g	Switch to GID (only root allowed, can be comma separated list)\n-p	Preserve environment (except for $PATH and $IFS)"
+
+#define HELP_seq "usage: seq [-w|-f fmt_str] [-s sep_str] [first] [increment] last\n\nCount from first to last, by increment. Omitted arguments default\nto 1. Two arguments are used as first and last. Arguments can be\nnegative or floating point.\n\n-f	Use fmt_str as a printf-style floating point format string\n-s	Use sep_str as separator, default is a newline character\n-w	Pad to equal width with leading zeroes"
+
+#define HELP_pidof "usage: pidof [-s] [-o omitpid[,omitpid...]] [NAME...]\n\nPrint the PIDs of all processes with the given names.\n\n-o	Omit PID(s)\n-s	Single shot, only return one pid\n-x	Match shell scripts too"
+
+#define HELP_passwd_sad "Password changes are checked to make sure they're at least 6 chars long,\ndon't include the entire username (but not a subset of it), or the entire\nprevious password (but changing password1, password2, password3 is fine).\nThis heuristic accepts \"aaaaaa\" and \"123456\"."
+
+#define HELP_passwd "usage: passwd [-a ALGO] [-dlu] [USER]\n\nUpdate user's login password. Defaults to current user.\n\n-a ALGO	Encryption method (des, md5, sha256, sha512) default: md5\n-d		Set password to ''\n-l		Lock (disable) account\n-u		Unlock (enable) account"
+
+#define HELP_mount "usage: mount [-afFrsvw] [-t TYPE] [-o OPTION,] [[DEVICE] DIR]\n\nMount new filesystem(s) on directories. With no arguments, display existing\nmounts.\n\n-a	Mount all entries in /etc/fstab (with -t, only entries of that TYPE)\n-O	Only mount -a entries that have this option\n-f	Fake it (don't actually mount)\n-r	Read only (same as -o ro)\n-w	Read/write (default, same as -o rw)\n-t	Specify filesystem type\n-v	Verbose\n\nOPTIONS is a comma separated list of options, which can also be supplied\nas --longopts.\n\nAutodetects loopback mounts (a file on a directory) and bind mounts (file\non file, directory on directory), so you don't need to say --bind or --loop.\nYou can also \"mount -a /path\" to mount everything in /etc/fstab under /path,\neven if it's noauto. DEVICE starting with UUID= is identified by blkid -U."
+
+#define HELP_mktemp "usage: mktemp [-dqtu] [-p DIR] [TEMPLATE]\n\nSafely create a new file \"DIR/TEMPLATE\" and print its name.\n\n-d	Create directory instead of file (--directory)\n-p	Put new file in DIR (--tmpdir)\n-q	Quiet, no error messages\n-t	Prefer $TMPDIR > DIR > /tmp (default DIR > $TMPDIR > /tmp)\n-u	Don't create anything, just print what would be created\n\nEach X in TEMPLATE is replaced with a random printable character. The\ndefault TEMPLATE is tmp.XXXXXXXXXX."
+
+#define HELP_mknod_z "usage: mknod [-Z CONTEXT] ...\n\n-Z	Set security context to created file"
+
+#define HELP_mknod "usage: mknod [-m MODE] NAME TYPE [MAJOR MINOR]\n\nCreate a special file NAME with a given type. TYPE is b for block device,\nc or u for character device, p for named pipe (which ignores MAJOR/MINOR).\n\n-m	Mode (file permissions) of new device, in octal or u+x format"
+
+#define HELP_sha512sum "See md5sum"
+
+#define HELP_sha384sum "See md5sum"
+
+#define HELP_sha256sum "See md5sum"
+
+#define HELP_sha224sum "See md5sum"
+
+#define HELP_sha1sum "See md5sum"
+
+#define HELP_md5sum "usage: ???sum [-bcs] [FILE]...\n\nCalculate hash for each input file, reading from stdin if none, writing\nhexadecimal digits to stdout for each input file (md5=32 hex digits,\nsha1=40, sha224=56, sha256=64, sha384=96, sha512=128) followed by filename.\n\n-b	Brief (hash only, no filename)\n-c	Check each line of each FILE is the same hash+filename we'd output\n-s	No output, exit status 0 if all hashes match, 1 otherwise"
+
+#define HELP_killall "usage: killall [-l] [-iqv] [-SIGNAL|-s SIGNAL] PROCESS_NAME...\n\nSend a signal (default: TERM) to all processes with the given names.\n\n-i	Ask for confirmation before killing\n-l	Print list of all available signals\n-q	Don't print any warnings or error messages\n-s	Send SIGNAL instead of SIGTERM\n-v	Report if the signal was successfully sent\n-w	Wait until all signaled processes are dead"
+
+#define HELP_dnsdomainname "usage: dnsdomainname\n\nShow domain this system belongs to (same as hostname -d)."
+
+#define HELP_hostname "usage: hostname [-bdsf] [-F FILENAME] [newname]\n\nGet/set the current hostname.\n\n-b	Set hostname to 'localhost' if otherwise unset\n-d	Show DNS domain name (no host)\n-f	Show fully-qualified name (host+domain, FQDN)\n-F	Set hostname to contents of FILENAME\n-s	Show short host name (no domain)"
+
+#define HELP_zcat "usage: zcat [-f] [FILE...]\n\nDecompress files to stdout. Like `gzip -dc`.\n\n-f	Force: allow read from tty"
+
+#define HELP_gunzip "usage: gunzip [-cfkt] [FILE...]\n\nDecompress files. With no files, decompresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles without the .gz suffix.\n\n-c	Output to stdout (act as zcat)\n-f	Force: allow read from tty\n-k	Keep input files (default is to remove)\n-t	Test integrity"
+
+#define HELP_gzip "usage: gzip [-19cdfkt] [FILE...]\n\nCompress files. With no files, compresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles with the .gz suffix.\n\n-c	Output to stdout\n-d	Decompress (act as gunzip)\n-f	Force: allow overwrite of output file\n-k	Keep input files (default is to remove)\n-t	Test integrity\n-#	Compression level 1-9 (1:fastest, 6:default, 9:best)"
+
+#define HELP_dmesg "usage: dmesg [-Cc] [-r|-t|-T] [-n LEVEL] [-s SIZE] [-w]\n\nPrint or control the kernel ring buffer.\n\n-C	Clear ring buffer without printing\n-c	Clear ring buffer after printing\n-n	Set kernel logging LEVEL (1-8)\n-r	Raw output (with <level markers>)\n-S	Use syslog(2) rather than /dev/kmsg\n-s	Show the last SIZE many bytes\n-T	Human readable timestamps\n-t	Don't print timestamps\n-w	Keep waiting for more output (aka --follow)"
+
+#define HELP_wget_libtls "Enable HTTPS support for wget by linking to LibTLS.\nSupports using libtls, libretls or libtls-bearssl.\n\nUse TOYBOX_LIBCRYPTO to enable HTTPS support via OpenSSL."
+
+#define HELP_wget "usage: wget [OPTIONS]... [URL]\n    --max-redirect          maximum redirections allowed\n-d, --debug                 print lots of debugging information\n-O, --output-document=FILE  specify output filename\n-p, --post-data=DATA        send data in body of POST request\n\nexamples:\n  wget http://www.example.com"
+
+#define HELP_tunctl "usage: tunctl [-dtT] [-u USER] NAME\n\nCreate and delete tun/tap virtual ethernet devices.\n\n-T	Use tap (ethernet frames) instead of tun (ip packets)\n-d	Delete tun/tap device\n-t	Create tun/tap device\n-u	Set owner (user who can read/write device without root access)"
+
+#define HELP_sntp "usage: sntp [-saSdDq] [-r SHIFT] [-mM[ADDRESS]] [-p PORT] [SERVER]\n\nSimple Network Time Protocol client. Query SERVER and display time.\n\n-p	Use PORT (default 123)\n-s	Set system clock suddenly\n-a	Adjust system clock gradually\n-S	Serve time instead of querying (bind to SERVER address if specified)\n-m	Wait for updates from multicast ADDRESS (RFC 4330 suggests 224.0.1.1)\n-M	Multicast server on ADDRESS (RFC 4330 suggests 224.0.1.1)\n-t	TTL (multicast only, default 1)\n-d	Daemonize (run in background re-querying)\n-D	Daemonize but stay in foreground: re-query time every 1000 seconds\n-r	Retry shift (every 1<<SHIFT seconds)\n-q	Quiet (don't display time)"
+
+#define HELP_rfkill "usage: rfkill COMMAND [DEVICE]\n\nEnable/disable wireless devices.\n\nCommands:\nlist [DEVICE]   List current state\nblock DEVICE    Disable device\nunblock DEVICE  Enable device\n\nDEVICE is an index number, or one of:\nall, wlan(wifi), bluetooth, uwb(ultrawideband), wimax, wwan, gps, fm."
+
+#define HELP_ping "usage: ping [OPTIONS] HOST\n\nCheck network connectivity by sending packets to a host and reporting\nits response.\n\nSend ICMP ECHO_REQUEST packets to ipv4 or ipv6 addresses and prints each\necho it receives back, with round trip time. Returns true if host alive.\n\nOptions:\n-4, -6		Force IPv4 or IPv6\n-c CNT		Send CNT many packets (default 3, 0 = infinite)\n-f		Flood (print . and \\b to show drops, default -c 15 -i 0.2)\n-i TIME		Interval between packets (default 1, need root for < .2)\n-I IFACE/IP	Source interface or address\n-m MARK		Tag outgoing packets using SO_MARK\n-q		Quiet (stops after one returns true if host is alive)\n-s SIZE		Data SIZE in bytes (default 56)\n-t TTL		Set Time To Live (number of hops)\n-W SEC		Seconds to wait for response after last -c packet (default 3)\n-w SEC		Exit after this many seconds"
+
+#define HELP_netstat "usage: netstat [-pWrxwutneal]\n\nDisplay networking information. Default is netstat -tuwx\n\n-r	Routing table\n-a	All sockets (not just connected)\n-l	Listening server sockets\n-t	TCP sockets\n-u	UDP sockets\n-w	Raw sockets\n-x	Unix sockets\n-e	Extended info\n-n	Don't resolve names\n-W	Wide display\n-p	Show PID/program name of sockets"
+
+#define HELP_netcat "usage: netcat [-46ELlntUu] [-pqWw #] [-s addr] {IPADDR PORTNUM|-f FILENAME|COMMAND...}\n\nForward stdin/stdout to a file or network connection.\n\n-4	Force IPv4\n-6	Force IPv6\n-E	Forward stderr\n-f	Use FILENAME (ala /dev/ttyS0) instead of network\n-L	Listen and background each incoming connection (server mode)\n-l	Listen for one incoming connection, then exit\n-n	No DNS lookup\n-p	Local port number\n-q	Quit SECONDS after EOF on stdin, even if stdout hasn't closed yet\n-s	Local source address\n-t	Allocate tty\n-v	Verbose\n-u	Use UDP\n-U	Use a UNIX domain socket\n-W	SECONDS timeout for more data on an idle connection\n-w	SECONDS timeout to establish connection\n-z	zero-I/O mode [used for scanning]\n\nWhen listening the COMMAND line is executed as a child process to handle\nan incoming connection. With no COMMAND -l forwards the connection\nto stdin/stdout. If no -p specified, -l prints the port it bound to and\nbackgrounds itself (returning immediately).\n\nFor a quick-and-dirty server, try something like:\nnetcat -s 127.0.0.1 -p 1234 -tL sh -l\n\nOr use \"stty 115200 -F /dev/ttyS0 && stty raw -echo -ctlecho\" with\nnetcat -f to connect to a serial port."
+
+#define HELP_microcom "usage: microcom [-s SPEED] [-X] DEVICE\n\nSimple serial console. Hit CTRL-] for menu.\n\n-s	Set baud rate to SPEED (default 115200)\n-X	Ignore ^] menu escape"
+
+#define HELP_ifconfig "usage: ifconfig [-aS] [INTERFACE [ACTION...]]\n\nDisplay or configure network interface.\n\nWith no arguments, display active interfaces. First argument is interface\nto operate on, one argument by itself displays that interface.\n\n-a	All interfaces displayed, not just active ones\n-S	Short view, one line per interface\n\nStandard ACTIONs to perform on an INTERFACE:\n\nADDR[/MASK]        - set IPv4 address (1.2.3.4/5) and activate interface\nadd|del ADDR[/LEN] - add/remove IPv6 address (1111::8888/128)\nup|down            - activate or deactivate interface\n\nAdvanced ACTIONs (default values usually suffice):\n\ndefault          - remove IPv4 address\nnetmask ADDR     - set IPv4 netmask via 255.255.255.0 instead of /24\ntxqueuelen LEN   - number of buffered packets before output blocks\nmtu LEN          - size of outgoing packets (Maximum Transmission Unit)\nbroadcast ADDR   - Set broadcast address\npointopoint ADDR - PPP and PPPOE use this instead of \"route add default gw\"\nhw TYPE ADDR     - set hardware (mac) address (type = ether|infiniband)\nrename NEWNAME   - rename interface\n\nFlags you can set on an interface (or -remove by prefixing with -):\n\narp       - don't use Address Resolution Protocol to map LAN routes\npromisc   - don't discard packets that aren't to this LAN hardware address\nmulticast - force interface into multicast mode if the driver doesn't\nallmulti  - promisc for multicast packets"
+
+#define HELP_httpd "usage: httpd [-de STR] [-v] [DIR]\n\nServe contents of directory as static web pages.\n\n-e	Escape STR as URL, printing result and exiting.\n-d	Decode escaped STR, printing result and exiting.\n-v	Verbose"
+
+#define HELP_host "usage: host [-v] [-t TYPE] NAME [SERVER]\n\nLook up DNS records for NAME, either domain name or IPv4/IPv6 address to\nreverse lookup, from SERVER or default DNS server(s).\n\n-a	All records\n-t TYPE	Record TYPE (number or ANY A AAAA CNAME MX NS PTR SOA SRV TXT)\n-v	Verbose"
+
+#define HELP_ftpput "An ftpget that defaults to -s instead of -g"
+
+#define HELP_ftpget "usage: ftpget [-cvgslLmMdD] [-P PORT] [-p PASSWORD] [-u USER] HOST [LOCAL] REMOTE\n\nTalk to ftp server. By default get REMOTE file via passive anonymous\ntransfer, optionally saving under a LOCAL name. Can also send, list, etc.\n\n-c	Continue partial transfer\n-p	Use PORT instead of \"21\"\n-P	Use PASSWORD instead of \"ftpget@\"\n-u	Use USER instead of \"anonymous\"\n-v	Verbose\n\nWays to interact with FTP server:\n-d	Delete file\n-D	Remove directory\n-g	Get file (default)\n-l	List directory\n-L	List (filenames only)\n-m	Move file on server from LOCAL to REMOTE\n-M	mkdir\n-s	Send file"
+
+#define HELP_yes "usage: yes [args...]\n\nRepeatedly output line until killed. If no args, output 'y'."
+
+#define HELP_xxd "usage: xxd [-eipr] [-cglos N] [file]\n\nHexdump a file to stdout. If no file is listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-c N	Show N bytes per line (default 16)\n-e	Little-endian\n-g N	Group bytes by adding a ' ' every N bytes (default 2)\n-i	Output include file (CSV hex bytes, plus C header/footer if not stdin)\n-l N	Limit of N bytes before stopping (default is no limit)\n-o N	Add N to display offset\n-p	Plain hexdump (30 bytes/line, no grouping. With -c 0 no wrap/group)\n-r	Reverse operation: turn a hexdump into a binary file\n-s N	Skip to offset N"
+
+#define HELP_which "usage: which [-a] filename ...\n\nSearch $PATH for executable files matching filename(s).\n\n-a	Show all matches"
+
+#define HELP_watchdog "usage: watchdog [-F] [-t UPDATE] [-T DEADLINE] DEV\n\nStart the watchdog timer at DEV with optional timeout parameters.\n\n-F	run in the foreground (do not daemonize)\n-t	poke watchdog every UPDATE seconds (default 4)\n-T	reboot if not poked for DEADLINE seconds (default 60)"
+
+#define HELP_watch "usage: watch [-tebx] [-n SEC] COMMAND...\n\nRun COMMAND every -n seconds, showing output that fits terminal, q to quit.\n\n-n	Number of seconds between repeats (default 2.0)\n-t	Don't print header\n-e	Exit on error\n-b	Beep on command error\n-x	Exec command directly (without \"sh -c\")"
+
+#define HELP_w "usage: w\n\nShow who is logged on and since how long they logged in."
+
+#define HELP_vmstat "usage: vmstat [-n] [DELAY [COUNT]]\n\nPrint virtual memory statistics, repeating each DELAY seconds, COUNT times.\n(With no DELAY, prints one line. With no COUNT, repeats until killed.)\n\nShow processes running and blocked, kilobytes swapped, free, buffered, and\ncached, kilobytes swapped in and out per second, file disk blocks input and\noutput per second, interrupts and context switches per second, percent\nof CPU time spent running user code, system code, idle, and awaiting I/O.\nFirst line is since system started, later lines are since last line.\n\n-n	Display the header only once"
+
+#define HELP_vconfig "usage: vconfig COMMAND [OPTIONS]\n\nCreate and remove virtual ethernet devices\n\nadd             [interface-name] [vlan_id]\nrem             [vlan-name]\nset_flag        [interface-name] [flag-num]       [0 | 1]\nset_egress_map  [vlan-name]      [skb_priority]   [vlan_qos]\nset_ingress_map [vlan-name]      [skb_priority]   [vlan_qos]\nset_name_type   [name-type]"
+
+#define HELP_uuidgen "usage: uuidgen\n\nCreate and print a new RFC4122 random UUID."
+
+#define HELP_usleep "usage: usleep MICROSECONDS\n\nPause for MICROSECONDS microseconds."
+
+#define HELP_uptime "usage: uptime [-ps]\n\nTell the current time, how long the system has been running, the number\nof users, and the system load averages for the past 1, 5 and 15 minutes.\n\n-p	Pretty (human readable) uptime\n-s	Since when has the system been up?"
+
+#define HELP_uclampset "usage: uclampset [-m MIN] [-M MAX] {-p PID | COMMAND...}\n\nSet or query process utilization limits ranging from 0 to 1024, or -1 to\nreset to system default. With no arguments, prints current values.\n\n-m MIN      Reserve at least this much CPU utilization for task\n-M MAX      Limit task to at most this much CPU utilization\n-p PID	Apply to PID rather than new COMMAND\n-R	Reset child processes to default values on fork\n-a	Apply to all threads for the given PID"
+
+#define HELP_ts "usage: ts [-is] [FORMAT]\n\nAdd timestamps to each line in pipeline. Default format without options\n\"%b %d %H:%M:%S\", with -i or -s \"%H:%M:%S\".\n\n-i	Incremental (since previous line)\n-m	Add milliseconds\n-s	Since start"
+
+#define HELP_truncate "usage: truncate [-c] -s SIZE file...\n\nSet length of file(s), extending sparsely if necessary.\n\n-c	Don't create file if it doesn't exist\n-s	New size (with optional prefix and suffix)\n\nSIZE prefix: + add, - subtract, < shrink to, > expand to,\n             / multiple rounding down, % multiple rounding up\nSIZE suffix: k=1024, m=1024^2, g=1024^3, t=1024^4, p=1024^5, e=1024^6"
+
+#define HELP_timeout "usage: timeout [-iv] [-k DURATION] [-s SIGNAL] DURATION COMMAND...\n\nRun command line as a child process, sending child a signal if the\ncommand doesn't exit soon enough.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default).\n\n-i	Only kill for inactivity (restart timeout when command produces output)\n-k	Send KILL signal if child still running this long after first signal\n-s	Send specified signal (default TERM)\n-v	Verbose\n--foreground       Don't create new process group\n--preserve-status  Exit with the child's exit status"
+
+#define HELP_taskset "usage: taskset [-ap] [mask] [PID | cmd [args...]]\n\nLaunch a new task which may only run on certain processors, or change\nthe processor affinity of an existing PID.\n\nMask is a hex string where each bit represents a processor the process\nis allowed to run on. PID without a mask displays existing affinity.\n\n-p	Set/get the affinity of given PID instead of a new command\n-a	Set/get the affinity of all threads of the PID"
+
+#define HELP_nproc "usage: nproc [--all]\n\nPrint number of processors.\n\n--all	Show all processors, not just ones this task can run on"
+
+#define HELP_tac "usage: tac [FILE...]\n\nOutput lines in reverse order."
+
+#define HELP_sysctl "usage: sysctl [-aAeNnqw] [-p [FILE] | KEY[=VALUE]...]\n\nRead/write system control data (under /proc/sys).\n\n-a,A	Show all values\n-e	Don't warn about unknown keys\n-N	Don't print key values\n-n	Don't print key names\n-p	Read values from FILE (default /etc/sysctl.conf)\n-q	Don't show value after write\n-w	Only write values (object to reading)"
+
+#define HELP_switch_root "usage: switch_root [-c /dev/console] NEW_ROOT NEW_INIT...\n\nUse from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\nand exec NEW_INIT.\n\n-c	Redirect console to device in NEW_ROOT\n-h	Hang instead of exiting on failure (avoids kernel panic)"
+
+#define HELP_swapon "usage: swapon [-d] [-p priority] filename\n\nEnable swapping on a given device/file.\n\n-d	Discard freed SSD pages\n-p	Priority (highest priority areas allocated first)"
+
+#define HELP_swapoff "usage: swapoff FILE\n\nDisable swapping on a device or file."
+
+#define HELP_stat "usage: stat [-tfL] [-c FORMAT] FILE...\n\nDisplay status of files or filesystems.\n\n-c	Output specified FORMAT string instead of default\n-f	Display filesystem status instead of file status\n-L	Follow symlinks\n-t	terse (-c \"%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\")\n	      (with -f = -c \"%n %i %l %t %s %S %b %f %a %c %d\")\n\nThe valid format escape sequences for files:\n%a  Access bits (octal) |%A  Access bits (flags)|%b  Size/512\n%B  Bytes per %b (512)  |%C  Security context   |%d  Device ID (dec)\n%D  Device ID (hex)     |%f  All mode bits (hex)|%F  File type\n%g  Group ID            |%G  Group name         |%h  Hard links\n%i  Inode               |%m  Mount point        |%n  Filename\n%N  Long filename       |%o  I/O block size     |%s  Size (bytes)\n%t  Devtype major (hex) |%T  Devtype minor (hex)|%u  User ID\n%U  User name           |%x  Access time        |%X  Access unix time\n%y  Modification time   |%Y  Mod unix time      |%z  Creation time\n%Z  Creation unix time\n\nThe valid format escape sequences for filesystems:\n%a  Available blocks    |%b  Total blocks       |%c  Total inodes\n%d  Free inodes         |%f  Free blocks        |%i  File system ID\n%l  Max filename length |%n  File name          |%s  Best transfer size\n%S  Actual block size   |%t  FS type (hex)      |%T  FS type (driver name)"
+
+#define HELP_shuf "usage: shuf [-ze] [-n COUNT] [FILE...]\n\nWrite lines of input to output in random order.\n\n-z	Input/output lines are NUL terminated.\n-n	Stop after COUNT many output lines.\n-e	Echo mode: arguments are inputs to shuffle, not files to read."
+
+#define HELP_shred "usage: shred [-fuxz] [-n COUNT] [-o OFFSET] [-s SIZE] FILE...\n\nSecurely delete a file by overwriting its contents with random data.\n\n-f		Force (chmod if necessary)\n-n COUNT	Random overwrite iterations (default 1)\n-o OFFSET	Start at OFFSET\n-s SIZE		Use SIZE instead of detecting file size\n-u		Unlink (actually delete file when done)\n-x		Use exact size (default without -s rounds up to next 4k)\n-z		Zero at end\n\nNote: data journaling filesystems render this command useless, you must\noverwrite all free space (fill up disk) to erase old data on those."
+
+#define HELP_sha3sum "usage: sha3sum [-bS] [-a BITS] [FILE...]\n\nHash function du jour.\n\n-a	Produce a hash BITS long (default 224)\n-b	Brief (hash only, no filename)\n-S	Use SHAKE termination byte instead of SHA3 (ask FIPS why)"
+
+#define HELP_setsid "usage: setsid [-cdw] command [args...]\n\nRun process in a new session.\n\n-d	Detach from tty\n-c	Control tty (repeat to steal)\n-w	Wait for child (and exit with its status)"
+
+#define HELP_setfattr "usage: setfattr [-h] [-x|-n NAME] [-v VALUE] FILE...\n\nWrite POSIX extended attributes.\n\n-h	Do not dereference symlink\n-n	Set given attribute\n-x	Remove given attribute\n-v	Set value for attribute -n (default is empty)"
+
+#define HELP_rtcwake "usage: rtcwake [-aluv] [-d FILE] [-m MODE] [-s SECS] [-t UNIX]\n\nEnter the given sleep state until the given time.\n\n-a	RTC uses time specified in /etc/adjtime\n-d FILE	Device to use (default /dev/rtc)\n-l	RTC uses local time\n-m	Mode (--list-modes to see those supported by your kernel):\n	  standby  S1: default              mem     S3: suspend to RAM\n	  disk     S4: suspend to disk      off     S5: power off\n	  disable  Cancel current alarm     freeze  stop processes/processors\n	  no       just set wakeup time     on      just poll RTC for alarm\n	  show     just show current alarm\n-s SECS	Wake SECS seconds from now\n-t UNIX	Wake UNIX seconds from epoch\n-u	RTC uses UTC\n-v	Verbose"
+
+#define HELP_rmmod "usage: rmmod [-wf] MODULE...\n\nUnload the given kernel modules.\n\n-f	Force unload of a module\n-w	Wait until the module is no longer used"
+
+#define HELP_rev "usage: rev [FILE...]\n\nOutput each line reversed, when no files are given stdin is used."
+
+#define HELP_reset "usage: reset\n\nReset the terminal."
+
+#define HELP_reboot "usage: reboot/halt/poweroff [-fn] [-d DELAY]\n\nRestart, halt, or power off the system.\n\n-d	Wait DELAY before proceeding (in seconds or m/h/d suffix: -d 1.5m = 90s)\n-f	Force reboot (don't signal init, reboot directly)\n-n	Don't sync filesystems before reboot"
+
+#define HELP_realpath "usage: realpath [-LPemqsz] [--relative-base DIR] [-R DIR] FILE...\n\nDisplay the canonical absolute pathname\n\n-R Show ../path relative to DIR (--relative-to)\n-L Logical path (resolve .. before symlinks)\n-P Physical path (default)\n-e Canonical path to existing entry (fail if missing)\n-m Ignore missing entries, show where it would be\n-q Quiet (no error messages)\n-s Don't expand symlinks\n-z NUL instead of newline\n--relative-base  If path under DIR trim off prefix"
+
+#define HELP_readlink "usage: readlink [-efmnqz] FILE...\n\nWith no options, show what symlink points to, return error if not symlink.\n\nOptions for producing canonical paths (all symlinks/./.. resolved):\n\n-e	Canonical path to existing entry (fail if missing)\n-f	Full path (fail if directory missing)\n-m	Ignore missing entries, show where it would be\n-n	No trailing newline\n-q	Quiet (no error messages)\n-z	NUL instead of newline"
+
+#define HELP_readelf "usage: readelf [-AadehlnSs] [-p SECTION] [-x SECTION] [file...]\n\nDisplays information about ELF files.\n\n-A	Show architecture-specific info\n-a	Equivalent to -AdhlnSs\n-d	Show dynamic section\n-e	Headers (equivalent to -hlS)\n-h	Show ELF header\n-l	Show program headers\n-n	Show notes\n-p S	Dump strings found in named/numbered section\n-S	Show section headers\n-s	Show symbol tables (.dynsym and .symtab)\n-x S	Hex dump of named/numbered section\n\n--dyn-syms	Show just .dynsym symbol table"
+
+#define HELP_readahead "usage: readahead FILE...\n\nPreload files into disk cache."
+
+#define HELP_pwgen "usage: pwgen [-cAn0yrsBC1v] [-r CHARS] [LENGTH] [COUNT]\n\nGenerate human-readable random passwords. Default output to tty fills screen\nwith passwords to defeat shoulder surfing (pick one and clear the screen).\n\n-0	No numbers (--no-numerals)\n-1	Output one per line\n-A	No capital letters (--no-capitalize)\n-B	Avoid ambiguous characters like 0O and 1lI (--ambiguous)\n-C	Output in columns\n-c	Add capital letters (--capitalize)\n-n	Add numbers (--numerals)\n-r	Don't include the given CHARS (--remove)\n-v	No vowels.\n-y	Add punctuation (--symbols)"
+
+#define HELP_pwdx "usage: pwdx PID...\n\nPrint working directory of processes listed on command line."
+
+#define HELP_printenv "usage: printenv [-0] [env_var...]\n\nPrint environment variables.\n\n-0	Use \\0 as delimiter instead of \\n"
+
+#define HELP_pmap "usage: pmap [-pqx] PID...\n\nReport the memory map of a process or processes.\n\n-p	Show full paths\n-q	Do not show header or footer\n-x	Show the extended format"
+
+#define HELP_pivot_root "usage: pivot_root OLD NEW\n\nSwap OLD and NEW filesystems (as if by simultaneous mount --move), and\nmove all processes with chdir or chroot under OLD into NEW (including\nkernel threads) so OLD may be unmounted.\n\nThe directory NEW must exist under OLD. This doesn't work on initramfs,\nwhich can't be moved (about the same way PID 1 can't be killed; see\nswitch_root instead)."
+
+#define HELP_partprobe "usage: partprobe DEVICE...\n\nTell the kernel about partition table changes\n\nAsk the kernel to re-read the partition table on the specified devices."
+
+#define HELP_deallocvt "usage: deallocvt [NUM]\n\nDeallocate unused virtual terminals, either a specific /dev/ttyNUM, or all."
+
+#define HELP_chvt "usage: chvt NUM\n\nChange to virtual terminal number NUM. (This only works in text mode.)\n\nVirtual terminals are the Linux VGA text mode (or framebuffer) displays,\nswitched between via alt-F1, alt-F2, etc. Use ctrl-alt-F1 to switch\nfrom X11 to a virtual terminal, and alt-F6 (or F7, or F8) to get back."
+
+#define HELP_openvt "usage: openvt [-c NUM] [-sw] COMMAND...\n\nRun COMMAND on a new virtual terminal.\n\n-c NUM  Use VT NUM\n-s    Switch to the new VT\n-w    Wait for command to exit (with -s, deallocates VT on exit)"
+
+#define HELP_oneit "usage: oneit [-prn3] [-c CONSOLE] [COMMAND...]\n\nSimple init program that runs a single supplied command line with a\ncontrolling tty (so CTRL-C can kill it).\n\n-c	Which console device to use (/dev/console doesn't do CTRL-C, etc)\n-p	Power off instead of rebooting when command exits\n-r	Restart child when it exits\n-n	No reboot, just relaunch command line\n-3	Write 32 bit PID of each exiting reparented process to fd 3 of child\n	(Blocking writes, child must read to avoid eventual deadlock.)\n\nSpawns a single child process (because PID 1 has signals blocked)\nin its own session, reaps zombies until the child exits, then\nreboots the system (or powers off with -p, or restarts the child with -r).\n\nResponds to SIGUSR1 by halting the system, SIGUSR2 by powering off,\nand SIGTERM or SIGINT reboot."
+
+#define HELP_nsenter "usage: nsenter [-t pid] [-F] [-i] [-m] [-n] [-p] [-u] [-U] COMMAND...\n\nRun COMMAND in an existing (set of) namespace(s).\n\n-a	Enter all supported namespaces (--all)\n-F	don't fork, even if -p is used (--no-fork)\n-t	PID to take namespaces from    (--target)\n\nThe namespaces to switch are:\n\n-C	Control groups (--cgroup)\n-i	SysV IPC: message queues, semaphores, shared memory (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init, will fork unless -F is used (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nIf -t isn't specified, each namespace argument must provide a path\nto a namespace file, ala \"-i=/proc/$PID/ns/ipc\""
+
+#define HELP_unshare "usage: unshare [-imnpuUr] COMMAND...\n\nCreate new container namespace(s) for this process and its children, allowing\nthe new set of processes to have a different view of the system than the\nparent process.\n\n-a	Unshare all supported namespaces\n-f	Fork command in the background (--fork)\n-r	Become root (map current euid/egid to 0/0, implies -U) (--map-root-user)\n\nAvailable namespaces:\n-C	Control groups (--cgroup)\n-i	SysV IPC (message queues, semaphores, shared memory) (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nEach namespace can take an optional argument, a persistent mountpoint usable\nby the nsenter command to add new processes to that the namespace. (Specify\nmultiple namespaces to unshare separately, ala -c -i -m because -cim is -c\nwith persistent mount \"im\".)"
+
+#define HELP_nbd_server "usage: nbd-server [-r] FILE\n\nServe a Network Block Device from FILE on stdin/out (ala inetd).\n\n-r	Read only export"
+
+#define HELP_nbd_client "usage: nbd-client [-ns] [-b BLKSZ] HOST PORT DEVICE\n\n-b	Block size (default 4096)\n-n	Do not daemonize\n-s	nbd swap support (lock server into memory)"
+
+#define HELP_mountpoint "usage: mountpoint [-qd] DIR\n       mountpoint [-qx] DEVICE\n\nCheck whether the directory or device is a mountpoint.\n\n-q	Be quiet, return zero if directory is a mountpoint\n-d	Print major/minor device number of the directory\n-x	Print major/minor device number of the block device"
+
+#define HELP_modinfo "usage: modinfo [-0] [-b basedir] [-k kernel] [-F field] [module|file...]\n\nDisplay module fields for modules specified by name or .ko path.\n\n-F  Only show the given field\n-0  Separate fields with NUL rather than newline\n-b  Use <basedir> as root for /lib/modules/\n-k  Look in given directory under /lib/modules/"
+
+#define HELP_mkswap "usage: mkswap [-L LABEL] DEVICE\n\nSet up a Linux swap area on a device or file."
+
+#define HELP_mkpasswd "usage: mkpasswd [-P FD] [-m TYPE] [-S SALT] [PASSWORD] [SALT]\n\nEncrypt PASSWORD using crypt(3), with either random or provided SALT.\n\n-P FD	Read password from file descriptor FD\n-m TYPE	Encryption method (des, md5, sha256, or sha512; default is des)"
+
+#define HELP_mix "usage: mix [-d DEV] [-c CHANNEL] [-l VOL] [-r RIGHT]\n\nList OSS sound channels (module snd-mixer-oss), or set volume(s).\n\n-c CHANNEL	Set/show volume of CHANNEL (default first channel found)\n-d DEV		Device node (default /dev/mixer)\n-l VOL		Volume level\n-r RIGHT	Volume of right stereo channel (with -r, -l sets left volume)"
+
+#define HELP_memeater "usage: memeater [-M] BYTES\n\nConsume the specified amount of memory and wait to be killed.\n\n-M	Don't mlock() the memory (let it swap out)."
+
+#define HELP_mcookie "usage: mcookie [-vV]\n\nGenerate a 128-bit strong random number.\n\n-v  show entropy source (verbose)\n-V  show version"
+
+#define HELP_makedevs "usage: makedevs [-d device_table] rootdir\n\nCreate a range of special files as specified in a device table.\n\n-d	File containing device table (default reads from stdin)\n\nEach line of the device table has the fields:\n<name> <type> <mode> <uid> <gid> <major> <minor> <start> <increment> <count>\nWhere name is the file name, and type is one of the following:\n\nb	Block device\nc	Character device\nd	Directory\nf	Regular file\np	Named pipe (fifo)\n\nOther fields specify permissions, user and group id owning the file,\nand additional fields for device special files. Use '-' for blank entries,\nunspecified fields are treated as '-'."
+
+#define HELP_lsusb "usage: lsusb [-i]\n\nList USB hosts/devices.\n\n-i	ID database (default /etc/usb.ids[.gz])"
+
+#define HELP_lspci "usage: lspci [-ekmn] [-i FILE]\n\nList PCI devices.\n\n-e	Extended (6 digit) class\n-i	ID database (default /etc/pci.ids[.gz])\n-k	Show kernel driver\n-m	Machine readable\n-n	Numeric output (-nn for both)\n-x	Hex dump of config space (64 bytes; -xxx for 256, -xxxx for 4096)"
+
+#define HELP_lsmod "usage: lsmod\n\nDisplay the currently loaded modules, their sizes and their dependencies."
+
+#define HELP_chattr "usage: chattr [-R] [-+=AacDdijsStTu] [-p PROJID] [-v VERSION] [FILE...]\n\nChange file attributes on a Linux file system.\n\n-R	Recurse\n-p	Set the file's project number\n-v	Set the file's version/generation number\n\nOperators:\n  '-' Remove attributes\n  '+' Add attributes\n  '=' Set attributes\n\nAttributes:\n  A  No atime                     a  Append only\n  C  No COW                       c  Compression\n  D  Synchronous dir updates      d  No dump\n  E  Encrypted                    e  Extents\n  F  Case-insensitive (casefold)\n  I  Indexed directory            i  Immutable\n  j  Journal data\n  N  Inline data in inode\n  P  Project hierarchy\n  S  Synchronous file updates     s  Secure delete\n  T  Top of dir hierarchy         t  No tail-merging\n  u  Allow undelete\n  V  Verity"
+
+#define HELP_lsattr "usage: lsattr [-Radlpv] [FILE...]\n\nList file attributes on a Linux file system.\nFlag letters are defined in chattr help.\n\n-R	Recursively list attributes of directories and their contents\n-a	List all files in directories, including files that start with '.'\n-d	List directories like other files, rather than listing their contents\n-l	List long flag names\n-p	List the file's project number\n-v	List the file's version/generation number"
+
+#define HELP_losetup "usage: losetup [-cdrs] [-o OFFSET] [-S SIZE] {-d DEVICE...|-j FILE|-af|{DEVICE FILE}}\n\nAssociate a loopback device with a file, or show current file (if any)\nassociated with a loop device.\n\nInstead of a device:\n-a	Iterate through all loopback devices\n-f	Find first unused loop device (may create one)\n-j FILE	Iterate through all loopback devices associated with FILE\n\nexisting:\n-c	Check capacity (file size changed)\n-d DEV	Detach loopback device\n-D	Detach all loopback devices\n\nnew:\n-s	Show device name (alias --show)\n-o OFF	Start association at offset OFF into FILE\n-r	Read only\n-S SIZE	Limit SIZE of loopback association (alias --sizelimit)"
+
+#define HELP_login "usage: login [-p] [-h host] [-f USERNAME] [USERNAME]\n\nLog in as a user, prompting for username and password if necessary.\n\n-p	Preserve environment\n-h	The name of the remote host for this login\n-f	login as USERNAME without authentication"
+
+#define HELP_linux32 "usage: linux32 [COMMAND...]\n\nTell uname -m to lie to autoconf (to build 32 bit binaries on 64 bit kernel)."
+
+#define HELP_iorenice "usage: iorenice PID [CLASS] [PRIORITY]\n\nDisplay or change I/O priority of existing process. CLASS can be\n\"rt\" for realtime, \"be\" for best effort, \"idle\" for only when idle, or\n\"none\" to leave it alone. PRIORITY can be 0-7 (0 is highest, default 4)."
+
+#define HELP_ionice "usage: ionice [-t] [-c CLASS] [-n LEVEL] [COMMAND...|-p PID]\n\nChange the I/O scheduling priority of a process. With no arguments\n(or just -p), display process' existing I/O class/priority.\n\n-c	CLASS = 1-3: 1(realtime), 2(best-effort, default), 3(when-idle)\n-n	LEVEL = 0-7: (0 is highest priority, default = 5)\n-p	Affect existing PID instead of spawning new child\n-t	Ignore failure to set I/O priority\n\nSystem default iopriority is generally -c 2 -n 4."
+
+#define HELP_insmod "usage: insmod MODULE [OPTION...]\n\nLoad the module named MODULE passing options if given."
+
+#define HELP_inotifyd "usage: inotifyd PROG FILE[:MASK] ...\n\nWhen a filesystem event matching MASK occurs to a FILE, run PROG as:\n\n  PROG EVENTS FILE [DIRFILE]\n\nIf PROG is \"-\" events are sent to stdout.\n\nThis file is:\n  a  accessed    c  modified    e  metadata change  w  closed (writable)\n  r  opened      D  deleted     M  moved            0  closed (unwritable)\n  u  unmounted   o  overflow    x  unwatchable\n\nA file in this directory is:\n  m  moved in    y  moved out   n  created          d  deleted\n\nWhen x event happens for all FILEs, inotifyd exits (after waiting for PROG)."
+
+#define HELP_i2ctransfer "usage: i2ctransfer [-fy] BUS DESC [DATA...]...\n\nMake i2c transfers. DESC is 'r' for read or 'w' for write, followed by\nthe number of bytes to read or write, followed by '@' and a 7-bit address.\nFor any message after the first, the '@' and address can be omitted to\nreuse the previous address. A 'w' DESC must be followed by the number of\nDATA bytes that was specified in the DESC.\n\n-f	Force access to busy devices\n-v	Verbose (show messages sent, not just received)\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cset "usage: i2cset [-fy] BUS CHIP ADDR VALUE... MODE\n\nWrite an i2c register. MODE is b for byte, w for 16-bit word, i for I2C block.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cget "usage: i2cget [-fy] BUS CHIP [ADDR]\n\nRead an i2c register.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdump "usage: i2cdump [-fy] BUS CHIP\n\nDump i2c registers.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdetect "usage: i2cdetect [-aqry] BUS [FIRST LAST]\nusage: i2cdetect -F BUS\nusage: i2cdetect -l\n\nDetect i2c devices.\n\n-a	All addresses (0x00-0x7f rather than 0x03-0x77 or FIRST-LAST)\n-F	Show functionality\n-l	List available buses\n-q	Probe with SMBus Quick Write (default)\n-r	Probe with SMBus Read Byte\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_hwclock "usage: hwclock [-rswtluf]\n\nGet/set the hardware clock.\n\n-f FILE	Use specified device file instead of /dev/rtc0 (--rtc)\n-l	Hardware clock uses localtime (--localtime)\n-r	Show hardware clock time (--show)\n-s	Set system time from hardware clock (--hctosys)\n-t	Set the system time based on the current timezone (--systz)\n-u	Hardware clock uses UTC (--utc)\n-w	Set hardware clock from system time (--systohc)"
+
+#define HELP_hexedit "usage: hexedit [-r] FILE\n\nHexadecimal file editor/viewer. All changes are written to disk immediately.\n\n-r	Read only (display but don't edit)\n\nKeys:\nArrows         Move left/right/up/down by one line/column\nPgUp/PgDn      Move up/down by one page\nHome/End       Start/end of line (start/end of file with ctrl)\n0-9, a-f       Change current half-byte to hexadecimal value\n^J or :        Jump (+/- for relative offset, otherwise absolute address)\n^F or /        Find string (^G/n: next, ^D/p: previous match)\nu              Undo\nx              Toggle bw/color display\nq/^C/^Q/Esc    Quit"
+
+#define HELP_help "usage: help [-ahu] [COMMAND]\n\n-a	All commands\n-u	Usage only\n-h	HTML output\n\nShow usage information for toybox commands.\nRun \"toybox\" with no arguments for a list of available commands."
+
+#define HELP_gpioset "usage: gpioset [-l] CHIP LINE=VALUE...\n\nSet the lines on CHIP to the given values. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioget "usage: gpioget [-l] CHIP LINE...\n\nGets the values of the given lines on CHIP. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioinfo "usage: gpioinfo [CHIP...]\n\nShow gpio chips' lines."
+
+#define HELP_gpiofind "usage: gpiofind NAME\n\nShow the chip and line number for the given line name."
+
+#define HELP_gpiodetect "usage: gpiodetect\n\nShow all gpio chips' names, labels, and number of lines."
+
+#define HELP_getopt "usage: getopt [-aTu] [-lo OPTIONS] [-n NAME] [OPTIONS] ARG...\n\nOutputs command line with recognized OPTIONS character arguments moved to\nfront, then \"--\", then non-option arguments. Returns 1 if unknown options.\nOPTIONS followed by : take an argument, or :: for optional arguments (which\nmust be attached, ala -xblah or --long=blah).\n\n-a	Allow long options starting with a single -\n-l	Long OPTIONS (repeated or comma separated)\n-n	Command NAME for error messages\n-o	Short OPTIONS (instead of using first argument)\n-T	Test whether this is a modern getopt\n-u	Unquoted output (default if no other options set)\n\nExample:\n  $ getopt -l long:,arg:: abc command --long -b there --arg\n  --long '-b' --arg '' -- 'command' 'there'"
+
+#define HELP_fsync "usage: fsync [-d] [FILE...]\n\nFlush disk cache for FILE(s), writing cached data to storage device.\n\n-d	Skip directory info (sync file contents only)."
+
+#define HELP_fsfreeze "usage: fsfreeze {-f | -u} MOUNTPOINT\n\nFreeze or unfreeze a filesystem.\n\n-f	Freeze\n-u	Unfreeze"
+
+#define HELP_freeramdisk "usage: freeramdisk [RAM device]\n\nFree all memory allocated to specified ramdisk"
+
+#define HELP_free "usage: free [-bkmgt]\n\nDisplay the total, free and used amount of physical memory and swap space.\n\n-bkmg	Output units (default is bytes)\n-h	Human readable (K=1024)"
+
+#define HELP_fmt "usage: fmt [-w WIDTH] [FILE...]\n\nReformat input to wordwrap at a given line length, preserving existing\nindentation level, writing to stdout.\n\n-w WIDTH	Maximum characters per line (default 75)"
+
+#define HELP_flock "usage: flock [-sxun] fd\n\nManage advisory file locks.\n\n-s	Shared lock\n-x	Exclusive lock (default)\n-u	Unlock\n-n	Non-blocking: fail rather than wait for the lock"
+
+#define HELP_fallocate "usage: fallocate [-o OFFSET] -l SIZE FILE\n\nTell the filesystem to allocate space for a range in a file.\n\n-l	Number of bytes in range\n-o	Start offset of range (default 0)"
+
+#define HELP_factor "usage: factor [-hx] NUMBER...\n\nFactor integers.\n\n-h	Human readable: show repeated factors as x^n\n-x	Hexadecimal output"
+
+#define HELP_eject "usage: eject [-stT] [DEVICE]\n\nEject DEVICE or default /dev/cdrom\n\n-s	SCSI device\n-t	Close tray\n-T	Open/close tray (toggle)"
+
+#define HELP_unix2dos "usage: unix2dos [FILE...]\n\nConvert newline format from unix \"\\n\" to dos \"\\r\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_dos2unix "usage: dos2unix [FILE...]\n\nConvert newline format from dos \"\\r\\n\" to unix \"\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_devmem "usage: devmem ADDR [WIDTH [DATA]]\n\nRead/write physical address. WIDTH is 1, 2, 4, or 8 bytes (default 4).\nPrefix ADDR with 0x for hexadecimal, output is in same base as address."
+
+#define HELP_count "usage: count [-l]\n\n-l	Long output (total bytes, human readable, transfer rate, elapsed time)\n\nCopy stdin to stdout, displaying simple progress indicator to stderr."
+
+#define HELP_clear "Clear the screen."
+
+#define HELP_chrt "usage: chrt [-Rmofrbi] {-p PID [PRIORITY] | [PRIORITY COMMAND...]}\n\nGet/set a process' real-time scheduling policy and priority.\n\n-p	Set/query given pid (instead of running COMMAND)\n-R	Set SCHED_RESET_ON_FORK\n-m	Show min/max priorities available\n\nSet policy (default -r):\n\n  -o  SCHED_OTHER    -f  SCHED_FIFO    -r  SCHED_RR\n  -b  SCHED_BATCH    -i  SCHED_IDLE"
+
+#define HELP_chroot "usage: chroot NEWROOT [COMMAND [ARG...]]\n\nRun command within a new root directory. If no command, run /bin/sh."
+
+#define HELP_chcon "usage: chcon [-hRv] CONTEXT FILE...\n\nChange the SELinux security context of listed file[s].\n\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories\n-v	Verbose"
+
+#define HELP_bzcat "usage: bzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_bunzip2 "usage: bunzip2 [-cftkv] [FILE...]\n\nDecompress listed files (file.bz becomes file) deleting archive file(s).\nRead from stdin if no files listed.\n\n-c	Force output to stdout\n-f	Force decompression (if FILE doesn't end in .bz, replace original)\n-k	Keep input files (-c and -t imply this)\n-t	Test integrity\n-v	Verbose"
+
+#define HELP_blockdev "usage: blockdev --OPTION... BLOCKDEV...\n\nCall ioctl(s) on each listed block device\n\n--setro		Set read only\n--setrw		Set read write\n--getro		Get read only\n--getss		Get sector size\n--getbsz	Get block size\n--setbsz BYTES	Set block size\n--getsz		Get device size in 512-byte sectors\n--getsize	Get device size in sectors (deprecated)\n--getsize64	Get device size in bytes\n--getra		Get readahead in 512-byte sectors\n--setra SECTORS	Set readahead\n--flushbufs	Flush buffers\n--rereadpt	Reread partition table"
+
+#define HELP_fstype "usage: fstype DEV...\n\nPrint type of filesystem on a block device or image."
+
+#define HELP_blkid "usage: blkid [-o TYPE] [-s TAG] [-UL] DEV...\n\nPrint type, label and UUID of filesystem on a block device or image.\n\n-U	Show UUID only (or device with that UUID)\n-L	Show LABEL only (or device with that LABEL)\n-o TYPE	Output format (full, value, export)\n-s TAG	Only show matching tags (default all)"
+
+#define HELP_blkdiscard "usage: blkdiscard [-szf] [-o OFFSET] [-l LENGTH] DEVICE\n\nDiscard device sectors (permanetly deleting data). Free space can improve\nflash performance and lifetime by wear leveling and collating data.\n(Some filesystem/driver combinations can do this automatically.)\n\n-o	Start at OFFSET (--offset, default 0)\n-l	LENGTH to discard (--length, default all)\n-s	Overwrite discarded data (--secure)\n-z	Zero-fill rather than discard (--zeroout)\n-f	Disable check for mounted filesystem (--force)\n\nOFFSET and LENGTH must be aligned to the device sector size. Default\nwithout -o/-l discards the entire device. (You have been warned.)"
+
+#define HELP_base32 "usage: base32 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base32.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_base64 "usage: base64 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base64.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_unicode "usage: unicode CODE[-END]...\n\nConvert between Unicode code points and UTF-8, in both directions.\nCODE can be one or more characters (show U+XXXX), hex numbers\n(show character), or dash separated range."
+
+#define HELP_ascii "usage: ascii\n\nDisplay ascii character set."
+
+#define HELP_acpi "usage: acpi [-abctV]\n\nShow status of power sources and thermal devices.\n\n-a	Show power adapters\n-b	Show batteries\n-c	Show cooling device state\n-t	Show temperatures\n-V	Show everything"
+
+#define HELP_xzcat "usage: xzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_vi "usage: vi [-s SCRIPT] FILE\n\nVisual text editor. Predates keyboards with standardized cursor keys.\nIf you don't know how to use it, hit the ESC key, type :q! and press ENTER.\n\n-s	run SCRIPT of commands on FILE\n\nvi mode commands:\n\n  [count][cmd][motion]\n  cmd: c d y\n  motion: 0 b e G H h j k L l M w $ f F\n\n  [count][cmd]\n  cmd: D I J O n o p x dd yy\n\n  [cmd]\n  cmd: / ? : A a i CTRL_D CTRL_B CTRL_E CTRL_F CTRL_Y \\e \\b\n\nex mode commands:\n\n  [cmd]\n  \\b \\e \\n w wq q! 'set list' 'set nolist' d $ % g v"
+
+#define HELP_userdel "usage: userdel [-r] USER\nusage: deluser [-r] USER\n\nDelete USER from the SYSTEM\n\n-r	remove home directory"
+
+#define HELP_useradd "usage: useradd [-SDH] [-h DIR] [-s SHELL] [-G GRP] [-g NAME] [-u UID] USER [GROUP]\n\nCreate new user, or add USER to GROUP\n\n-D       Don't assign a password\n-g NAME  Real name\n-G GRP   Add user to existing group\n-h DIR   Home directory\n-H       Don't create home directory\n-s SHELL Login shell\n-S       Create a system user\n-u UID   User id"
+
+#define HELP_traceroute "usage: traceroute [-46FUIldnvr] [-f 1ST_TTL] [-m MAXTTL] [-p PORT] [-q PROBES]\n[-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-g GATEWAY] [-i IFACE] [-z PAUSE_MSEC] HOST [BYTES]\n\ntraceroute6 [-dnrv] [-m MAXTTL] [-p PORT] [-q PROBES][-s SRC_IP] [-t TOS] [-w WAIT_SEC]\n  [-i IFACE] HOST [BYTES]\n\nTrace the route to HOST\n\n-4,-6 Force IP or IPv6 name resolution\n-F    Set the don't fragment bit (supports IPV4 only)\n-U    Use UDP datagrams instead of ICMP ECHO (supports IPV4 only)\n-I    Use ICMP ECHO instead of UDP datagrams (supports IPV4 only)\n-l    Display the TTL value of the returned packet (supports IPV4 only)\n-d    Set SO_DEBUG options to socket\n-n    Print numeric addresses\n-v    verbose\n-r    Bypass routing tables, send directly to HOST\n-m    Max time-to-live (max number of hops)(RANGE 1 to 255)\n-p    Base UDP port number used in probes(default 33434)(RANGE 1 to 65535)\n-q    Number of probes per TTL (default 3)(RANGE 1 to 255)\n-s    IP address to use as the source address\n-t    Type-of-service in probe packets (default 0)(RANGE 0 to 255)\n-w    Time in seconds to wait for a response (default 3)(RANGE 0 to 86400)\n-g    Loose source route gateway (8 max) (supports IPV4 only)\n-z    Pause Time in ms (default 0)(RANGE 0 to 86400) (supports IPV4 only)\n-f    Start from the 1ST_TTL hop (instead from 1)(RANGE 1 to 255) (supports IPV4 only)\n-i    Specify a network interface to operate with"
+
+#define HELP_tr "usage: tr [-cdst] SET1 [SET2]\n\nTranslate, squeeze, or delete characters from stdin, writing to stdout\n\n-c/-C  Take complement of SET1\n-d     Delete input characters coded SET1\n-s     Squeeze multiple output characters of SET2 into one character\n-t     Truncate SET1 to length of SET2"
+
+#define HELP_tftpd "usage: tftpd [-cr] [-u USER] [DIR]\n\nTransfer file from/to tftp server.\n\n-r	read only\n-c	Allow file creation via upload\n-u	run as USER\n-l	Log to syslog (inetd mode requires this)"
+
+#define HELP_tftp "usage: tftp [OPTIONS] HOST [PORT]\n\nTransfer file from/to tftp server.\n\n-l FILE Local FILE\n-r FILE Remote FILE\n-g    Get file\n-p    Put file\n-b SIZE Transfer blocks of SIZE octets(8 <= SIZE <= 65464)"
+
+#define HELP_telnetd "Handle incoming telnet connections\n\n-l LOGIN  Exec LOGIN on connect\n-f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue\n-K Close connection as soon as login exits\n-p PORT   Port to listen on\n-b ADDR[:PORT]  Address to bind to\n-F Run in foreground\n-i Inetd mode\n-w SEC    Inetd 'wait' mode, linger time SEC\n-S Log to syslog (implied by -i or without -F and -w)"
+
+#define HELP_telnet "usage: telnet HOST [PORT]\n\nConnect to telnet server."
+
+#define HELP_tcpsvd "usage: tcpsvd [-hEv] [-c N] [-C N[:MSG]] [-b N] [-u User] [-l Name] IP Port Prog\nusage: udpsvd [-hEv] [-c N] [-u User] [-l Name] IP Port Prog\n\nCreate TCP/UDP socket, bind to IP:PORT and listen for incoming connection.\nRun PROG for each connection.\n\nIP            IP to listen on, 0 = all\nPORT          Port to listen on\nPROG ARGS     Program to run\n-l NAME       Local hostname (else looks up local hostname in DNS)\n-u USER[:GRP] Change to user/group after bind\n-c N          Handle up to N (> 0) connections simultaneously\n-b N          (TCP Only) Allow a backlog of approximately N TCP SYNs\n-C N[:MSG]    (TCP Only) Allow only up to N (> 0) connections from the same IP\n              New connections from this IP address are closed\n              immediately. MSG is written to the peer before close\n-h            Look up peer's hostname\n-E            Don't set up environment variables\n-v            Verbose"
+
+#define HELP_syslogd "usage: syslogd  [-a socket] [-O logfile] [-f config file] [-m interval]\n                [-p socket] [-s SIZE] [-b N] [-R HOST] [-l N] [-nSLKD]\n\nSystem logging utility\n\n-a      Extra unix socket for listen\n-O FILE Default log file <DEFAULT: /var/log/messages>\n-f FILE Config file <DEFAULT: /etc/syslog.conf>\n-p      Alternative unix domain socket <DEFAULT : /dev/log>\n-n      Avoid auto-backgrounding\n-S      Smaller output\n-m MARK interval <DEFAULT: 20 minutes> (RANGE: 0 to 71582787)\n-R HOST Log to IP or hostname on PORT (default PORT=514/UDP)\"\n-L      Log locally and via network (default is network only if -R)\"\n-s SIZE Max size (KB) before rotation (default:200KB, 0=off)\n-b N    rotated logs to keep (default:1, max=99, 0=purge)\n-K      Log to kernel printk buffer (use dmesg to read it)\n-l N    Log only messages more urgent than prio(default:8 max:8 min:1)\n-D      Drop duplicates"
+
+#define HELP_sulogin "usage: sulogin [-t time] [tty]\n\nSingle User Login.\n-t	Default Time for Single User Login"
+
+#define HELP_stty "usage: stty [-ag] [-F device] SETTING...\n\nGet/set terminal configuration.\n\n-F	Open device instead of stdin\n-a	Show all current settings (default differences from \"sane\")\n-g	Show all current settings usable as input to stty\n\nSpecial characters (syntax ^c or undef): intr quit erase kill eof eol eol2\nswtch start stop susp rprnt werase lnext discard\n\nControl/input/output/local settings as shown by -a, '-' prefix to disable\n\nCombo settings: cooked/raw, evenp/oddp/parity, nl, ek, sane\n\nN	set input and output speed (ispeed N or ospeed N for just one)\ncols N	set number of columns\nrows N	set number of rows\nline N	set line discipline\nmin N	set minimum chars per read\ntime N	set read timeout\nspeed	show speed only\nsize	show size only"
+
+#define HELP_strace "usage: strace [-fv] [-p PID] [-s NUM] COMMAND [ARGS...]\n\nTrace systems calls made by a process.\n\n-s	String length limit.\n-v	Dump all of large structs/arrays."
+
+#define HELP_wait "usage: wait [-n] [ID...]\n\nWait for background processes to exit, returning its exit code.\nID can be PID or job, with no IDs waits for all backgrounded processes.\n\n-n	Wait for next process to exit"
+
+#define HELP_source "usage: source FILE [ARGS...]\n\nRead FILE and execute commands. Any ARGS become positional parameters."
+
+#define HELP_shift "usage: shift [N]\n\nSkip N (default 1) positional parameters, moving $1 and friends along the list.\nDoes not affect $0."
+
+#define HELP_local "usage: local [NAME[=VALUE]...]\n\nCreate a local variable that lasts until return from this function.\nWith no arguments lists local variables in current function context.\nTODO: implement \"declare\" options."
+
+#define HELP_jobs "usage: jobs [-lnprs] [%JOB | -x COMMAND...]\n\nList running/stopped background jobs.\n\n-l Include process ID in list\n-n Show only new/changed processes\n-p Show process IDs only\n-r Show running processes\n-s Show stopped processes"
+
+#define HELP_export "usage: export [-n] [NAME[=VALUE]...]\n\nMake variables available to child processes. NAME exports existing local\nvariable(s), NAME=VALUE sets and exports.\n\n-n	Unexport. Turn listed variable(s) into local variables.\n\nWith no arguments list exported variables/attributes as \"declare\" statements."
+
+#define HELP_exec "usage: exec [-cl] [-a NAME] COMMAND...\n\n-a	set argv[0] to NAME\n-c	clear environment\n-l	prepend - to argv[0]"
+
+#define HELP_eval "usage: eval COMMAND...\n\nExecute (combined) arguments as a shell command."
+
+#define HELP_unset "usage: unset [-fvn] NAME...\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	dereference NAME and unset that"
+
+#define HELP_set "usage: set [+a] [+o OPTION] [VAR...]\n\nSet variables and shell attributes. Use + to disable and - to enable.\nNAME=VALUE arguments assign to the variable, any leftovers set $1, $2...\nWith no arguments, prints current variables.\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	don't follow name reference\n\nOPTIONs:\n  history - enable command history"
+
+#define HELP_exit "usage: exit [status]\n\nExit shell.  If no return value supplied on command line, use value\nof most recent command, or 0 if none."
+
+#define HELP_declare "usage: declare [-pAailunxr] [NAME...]\n\nSet or print variable attributes and values.\n\n-p	Print variables instead of setting\n-A	Associative array\n-a	Indexed array\n-i	Integer\n-l	Lower case\n-n	Name reference (symlink)\n-r	Readonly\n-u	Uppercase\n-x	Export"
+
+#define HELP_cd "usage: cd [-PL] [-] [path]\n\nChange current directory. With no arguments, go $HOME. Sets $OLDPWD to\nprevious directory: cd - to return to $OLDPWD.\n\n-P	Physical path: resolve symlinks in path\n-L	Local path: .. trims directories off $PWD (default)"
+
+#define HELP_sh "usage: sh [-c command] [script]\n\nCommand shell.  Runs a shell script, or reads input interactively\nand responds to it. Roughly compatible with \"bash\". Run \"help\" for\nlist of built-in commands.\n\n-c	command line to execute\n-i	interactive mode (default when STDIN is a tty)\n-s	don't run script (args set $* parameters but read commands from stdin)\n\nCommand shells parse each line of input (prompting when interactive), perform\nvariable expansion and redirection, execute commands (spawning child processes\nand background jobs), and perform flow control based on the return code.\n\nParsing:\n  syntax errors\n\nInteractive prompts:\n  line continuation\n\nVariable expansion:\n  Note: can cause syntax errors at runtime\n\nRedirection:\n  HERE documents (parsing)\n  Pipelines (flow control and job control)\n\nRunning commands:\n  process state\n  builtins\n    cd [[ ]] (( ))\n    ! : [ # TODO: help for these?\n    true false help echo kill printf pwd test\n  child processes\n\nJob control:\n  &    Background process\n  Ctrl-C kill process\n  Ctrl-Z suspend process\n  bg fg jobs kill\n\nFlow control:\n;    End statement (same as newline)\n&    Background process (returns true unless syntax error)\n&&   If this fails, next command fails without running\n||   If this succeeds, next command succeeds without running\n|    Pipelines! (Can of worms...)\nfor {name [in...]}|((;;)) do; BODY; done\nif TEST; then BODY; fi\nwhile TEST; do BODY; done\ncase a in X);; esac\n[[ TEST ]]\n((MATH))\n\nJob control:\n&    Background process\nCtrl-C kill process\nCtrl-Z suspend process\nbg fg jobs kill"
+
+#define HELP_route "usage: route [-ne] [-A [inet|inet6]] [add|del TARGET [OPTIONS]]\n\nDisplay, add or delete network routes in the \"Forwarding Information Base\",\nwhich send packets out a network interface to an address.\n\n-n	Show numerical addresses (no DNS lookups)\n-e	display netstat fields\n\nAssigning an address to an interface automatically creates an appropriate\nnetwork route (\"ifconfig eth0 10.0.2.15/8\" does \"route add 10.0.0.0/8 eth0\"\nfor you), although some devices (such as loopback) won't show it in the\ntable. For machines more than one hop away, you need to specify a gateway\n(ala \"route add default gw 10.0.2.2\").\n\nThe address \"default\" is a wildcard address (0.0.0.0/0) matching all\npackets without a more specific route.\n\nAvailable OPTIONS include:\nreject   - blocking route (force match failure)\ndev NAME - force matching packets out this interface (ala \"eth0\")\nnetmask  - old way of saying things like ADDR/24\ngw ADDR  - forward packets to gateway ADDR"
+
+#define HELP_more "usage: more [FILE...]\n\nView FILE(s) (or stdin) one screenfull at a time."
+
+#define HELP_modprobe "usage: modprobe [-alrqvsDb] [-d DIR] MODULE [symbol=value][...]\n\nmodprobe utility - inserts modules and dependencies.\n\n-a  Load multiple MODULEs\n-b  Apply blacklist to module names too\n-D  Show dependencies\n-d  Load modules from DIR, option may be used multiple times\n-l  List (MODULE is a pattern)\n-q  Quiet\n-r  Remove MODULE (stacks) or do autoclean\n-s  Log to syslog\n-v  Verbose"
+
+#define HELP_mke2fs_extended "usage: mke2fs [-E stride=###] [-O option[,option]]\n\n-E stride= Set RAID stripe size (in blocks)\n-O [opts]  Specify fewer ext2 option flags (for old kernels)\n           All of these are on by default (as appropriate)\n   none         Clear default options (all but journaling)\n   dir_index    Use htree indexes for large directories\n   filetype     Store file type info in directory entry\n   has_journal  Set by -j\n   journal_dev  Set by -J device=XXX\n   sparse_super Don't allocate huge numbers of redundant superblocks"
+
+#define HELP_mke2fs_label "usage: mke2fs [-L label] [-M path] [-o string]\n\n-L         Volume label\n-M         Path to mount point\n-o         Created by"
+
+#define HELP_mke2fs_gen "usage: gene2fs [options] device filename\n\nThe [options] are the same as mke2fs."
+
+#define HELP_mke2fs_journal "usage: mke2fs [-j] [-J size=###,device=XXX]\n\n-j         Create journal (ext3)\n-J         Journal options\n           size: Number of blocks (1024-102400)\n           device: Specify an external journal"
+
+#define HELP_mke2fs "usage: mke2fs [-Fnq] [-b ###] [-N|i ###] [-m ###] device\n\nCreate an ext2 filesystem on a block device or filesystem image.\n\n-F         Force to run on a mounted device\n-n         Don't write to device\n-q         Quiet (no output)\n-b size    Block size (1024, 2048, or 4096)\n-N inodes  Allocate this many inodes\n-i bytes   Allocate one inode for every XXX bytes of device\n-m percent Reserve this percent of filesystem space for root user"
+
+#define HELP_mdev_conf "The mdev config file (/etc/mdev.conf) contains lines that look like:\nhd[a-z][0-9]* 0:3 660\n(sd[a-z]) root:disk 660 =usb_storage\n\nEach line must contain three whitespace separated fields. The first\nfield is a regular expression matching one or more device names,\nthe second and third fields are uid:gid and file permissions for\nmatching devices. Fourth field is optional. It could be used to change\ndevice name (prefix '='), path (prefix '=' and postfix '/') or create a\nsymlink (prefix '>')."
+
+#define HELP_mdev "usage: mdev [-s]\n\nCreate devices in /dev using information from /sys.\n\n-s	Scan all entries in /sys to populate /dev"
+
+#define HELP_man "usage: man [-M PATH] [-k STRING] | [SECTION] COMMAND\n\nRead manual page for system command.\n\n-k	List pages with STRING in their short description\n-M	Override $MANPATH\n\nMan pages are divided into 8 sections:\n1 commands      2 system calls  3 library functions  4 /dev files\n5 file formats  6 games         7 miscellaneous      8 system management\n\nSections are searched in the order 1 8 3 2 5 4 6 7 unless you specify a\nsection. Each section has a page called \"intro\", and there's a global\nintroduction under \"man-pages\"."
+
+#define HELP_lsof "usage: lsof [-lt] [-p PID1,PID2,...] [FILE...]\n\nList all open files belonging to all active processes, or processes using\nlisted FILE(s).\n\n-l	list uids numerically\n-p	for given comma-separated pids only (default all pids)\n-t	terse (pid only) output"
+
+#define HELP_last "usage: last [-W] [-f FILE]\n\nShow listing of last logged in users.\n\n-W      Display the information without host-column truncation\n-f FILE Read from file FILE instead of /var/log/wtmp"
+
+#define HELP_klogd "usage: klogd [-n] [-c N]\n\n-c  N   Print to console messages more urgent than prio N (1-8)\"\n-n    Run in foreground"
+
+#define HELP_ipcs "usage: ipcs [[-smq] -i shmid] | [[-asmq] [-tcplu]]\n\n-i Show specific resource\nResource specification:\n-a All (default)\n-m Shared memory segments\n-q Message queues\n-s Semaphore arrays\nOutput format:\n-c Creator\n-l Limits\n-p Pid\n-t Time\n-u Summary"
+
+#define HELP_ipcrm "usage: ipcrm [ [-q msqid] [-m shmid] [-s semid]\n          [-Q msgkey] [-M shmkey] [-S semkey] ... ]\n\n-mM Remove memory segment after last detach\n-qQ Remove message queue\n-sS Remove semaphore"
+
+#define HELP_ip "usage: ip [ OPTIONS ] OBJECT { COMMAND }\n\nShow / manipulate routing, devices, policy routing and tunnels.\n\nwhere OBJECT := {address | link | route | rule | tunnel}\nOPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }"
+
+#define HELP_init "usage: init\n\nSystem V style init.\n\nFirst program to run (as PID 1) when the system comes up, reading\n/etc/inittab to determine actions."
+
+#define HELP_hd "usage: hd [FILE...]\n\nDisplay file(s) in cannonical hex+ASCII format."
+
+#define HELP_hexdump "usage: hexdump [-bcCdovx] [-n LEN] [-s SKIP] [FILE...]\n\nDump file(s) in hexadecimal format.\n\n-n LEN	Show LEN bytes of output\n-s SKIP	Skip bytes of input\n-v	Verbose (don't combine identical lines)\n\nDisplay type:\n-b One byte octal   -c One byte character -C Canonical (hex + ASCII)\n-d Two byte decimal -o Two byte octal     -x Two byte hexadecimal (default)"
+
+#define HELP_groupdel "usage: groupdel [USER] GROUP\n\nDelete a group or remove a user from a group"
+
+#define HELP_groupadd "usage: groupadd [-S] [-g GID] [USER] GROUP\n\nAdd a user to a group, or create a new group.\n\n-g GID	Group id\n-R	Operate within chroot\n-S	Create a system group"
+
+#define HELP_gitcheckout "usage: gitcheckout <branch>\nA minimal git checkout."
+
+#define HELP_gitfetch "usage: gitfetch\nA minimal git fetch."
+
+#define HELP_gitremote "usage: gitremote URL\nA minimal git remote add origin."
+
+#define HELP_gitinit "usage: gitinit NAME\nA minimal git init."
+
+#define HELP_gitclone "usage: gitclone URL\nA minimal git clone."
+
+#define HELP_gitcompat "Enable git compatible repos instead of minimal clone downloader."
+
+#define HELP_getty "usage: getty [OPTIONS] BAUD_RATE[,BAUD_RATE]... TTY [TERMTYPE]\n\nWait for a modem to dial into serial port, adjust baud rate, call login.\n\n-h    Enable hardware RTS/CTS flow control\n-L    Set CLOCAL (ignore Carrier Detect state)\n-m    Get baud rate from modem's CONNECT status message\n-n    Don't prompt for login name\n-w    Wait for CR or LF before sending /etc/issue\n-i    Don't display /etc/issue\n-f ISSUE_FILE  Display ISSUE_FILE instead of /etc/issue\n-l LOGIN  Invoke LOGIN instead of /bin/login\n-t SEC    Terminate after SEC if no login name is read\n-I INITSTR  Send INITSTR before anything else\n-H HOST    Log HOST into the utmp file as the hostname"
+
+#define HELP_getfattr "usage: getfattr [-d] [-h] [-n NAME] FILE...\n\nRead POSIX extended attributes.\n\n-d	Show values as well as names\n-h	Do not dereference symbolic links\n-n	Show only attributes with the given name\n--only-values	Don't show names"
+
+#define HELP_fsck "usage: fsck [-ANPRTV] [-C FD] [-t FSTYPE] [FS_OPTS] [BLOCKDEV]...\n\nCheck and repair filesystems\n\n-A      Walk /etc/fstab and check all filesystems\n-N      Don't execute, just show what would be done\n-P      With -A, check filesystems in parallel\n-R      With -A, skip the root filesystem\n-T      Don't show title on startup\n-V      Verbose\n-C n    Write status information to specified file descriptor\n-t TYPE List of filesystem types to check"
+
+#define HELP_fdisk "usage: fdisk [-lu] [-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SECTSZ] DISK\n\nChange partition table\n\n-u            Start and End are in sectors (instead of cylinders)\n-l            Show partition table for each DISK, then exit\n-b size       sector size (512, 1024, 2048 or 4096)\n-C CYLINDERS  Set number of cylinders/heads/sectors\n-H HEADS\n-S SECTORS"
+
+#define HELP_expr "usage: expr ARG1 OPERATOR ARG2...\n\nEvaluate expression and print result. For example, \"expr 1 + 2\" prints \"3\".\n\nThe supported operators are (grouped from highest to lowest priority):\n\n  ( )    :    * / %    + -    != <= < >= > =    &    |\n\nEach constant and operator must be a separate command line argument.\nAll operators are infix, requiring a value on each side of the operator.\nOperators of the same priority are evaluated left to right. Parentheses\nelevate the priority of expression they contain. The & and | operators\nare logical (not bitwise).\n\nAll operators yield integers, and most operators expect integer arguments.\nComparisons may alphabetically compare strings, logical operators treat a\nblank string as false and nonblank as true, and the regex operator\n(str : pattern) yields the initial number of matching bytes. (So\n\"abc : ab\" is 2, but \"abc : bc\" is 0.)\n\nCalling expr from a command shell requires a lot of \\( or '*' escaping\nto avoid interpreting shell control characters, vs the shell's \"$((1+6/3))\"."
+
+#define HELP_dumpleases "usage: dumpleases [-r|-a] [-f LEASEFILE]\n\nDisplay DHCP leases granted by udhcpd\n-f FILE,  Lease file\n-r        Show remaining time\n-a        Show expiration time"
+
+#define HELP_diff "usage: diff [-abBdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] [-F REGEX ] FILE1 FILE2\n\n-a	Treat all files as text\n-b	Ignore changes in the amount of whitespace\n-B	Ignore changes whose lines are all blank\n-d	Try hard to find a smaller set of changes\n-F 	Show the most recent line matching the regex\n-i	Ignore case differences\n-L	Use LABEL instead of the filename in the unified header\n-N	Treat absent files as empty\n-q	Output only whether files differ\n-r	Recurse\n-S	Start with FILE when comparing directories\n-s	Report when two files are the same\n-T	Make tabs line up by prefixing a tab when necessary\n-t	Expand tabs to spaces in output\n-u	Unified diff\n-U	Output LINES lines of context\n-w	Ignore all whitespace\n\n--color     Color output   --strip-trailing-cr   Strip '\\r' from input lines\n--TYPE-line-format=FORMAT  Display TYPE (unchanged/old/new) lines using FORMAT\n  FORMAT uses printf integer escapes (ala %-2.4x) followed by LETTER: FELMNn\nSupported format specifiers are:\n* %l, the contents of the line, without the trailing newline\n* %L, the contents of the line, including the trailing newline\n* %%, the character '%'"
+
+#define HELP_dhcpd "usage: dhcpd [-46fS] [-i IFACE] [-P N] [CONFFILE]\n\n -f    Run in foreground\n -i Interface to use\n -S    Log to syslog too\n -P N  Use port N (default ipv4 67, ipv6 547)\n -4, -6    Run as a DHCPv4 or DHCPv6 server"
+
+#define HELP_dhcp6 "usage: dhcp6 [-fbnqvR] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n\n      Configure network dynamically using DHCP.\n\n    -i Interface to use (default eth0)\n    -p Create pidfile\n    -s Run PROG at DHCP events\n    -t Send up to N Solicit packets\n    -T Pause between packets (default 3 seconds)\n    -A Wait N seconds after failure (default 20)\n    -f Run in foreground\n    -b Background if lease is not obtained\n    -n Exit if lease is not obtained\n    -q Exit after obtaining lease\n    -R Release IP on exit\n    -S Log to syslog too\n    -r Request this IP address\n    -v Verbose\n\n    Signals:\n    USR1  Renew current lease\n    USR2  Release current lease"
+
+#define HELP_dhcp "usage: dhcp [-fbnqvoCRB] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n            [-H HOSTNAME] [-V VENDOR] [-x OPT:VAL] [-O OPT]\n\n     Configure network dynamically using DHCP.\n\n   -i Interface to use (default eth0)\n   -p Create pidfile\n   -s Run PROG at DHCP events (default /usr/share/dhcp/default.script)\n   -B Request broadcast replies\n   -t Send up to N discover packets\n   -T Pause between packets (default 3 seconds)\n   -A Wait N seconds after failure (default 20)\n   -f Run in foreground\n   -b Background if lease is not obtained\n   -n Exit if lease is not obtained\n   -q Exit after obtaining lease\n   -R Release IP on exit\n   -S Log to syslog too\n   -a Use arping to validate offered address\n   -O Request option OPT from server (cumulative)\n   -o Don't request any options (unless -O is given)\n   -r Request this IP address\n   -x OPT:VAL  Include option OPT in sent packets (cumulative)\n   -F Ask server to update DNS mapping for NAME\n   -H Send NAME as client hostname (default none)\n   -V VENDOR Vendor identifier (default 'toybox VERSION')\n   -C Don't send MAC as client identifier\n   -v Verbose\n\n   Signals:\n   USR1  Renew current lease\n   USR2  Release current lease"
+
+#define HELP_csplit "usage: csplit [-ks] [-f PREFIX] [-n INTEGER] file arg...\n\nSplit files into multiple files based on list of rules\n\n-k	Does not delete Files on error\n-s	No file output size messages\n-f [PREFIX] Use [PREFIX] as filename prefix instead of \"xx\"\n-n [INTEGER] Make all filename numbers [INTEGER] characters long\n\nValid Rules:\n/regexp/[INTEGER] Break file before line that regexp matches,\n%regexp%[INTEGER] Exclude untill line matches regexp\nIf a offset is specified for these rules, the break will happen [INTEGER]\nlines after the regexp match\nif a offset is specified, it will break at [INTEGER] lines after the offset\n[INTEGER] Break file at line before [INTEGER]\n{INTEGER} Repeat Previous Pattern INTEGER Number of times if INTEGER is *\nThe pattern repeats forever"
+
+#define HELP_crontab "usage: crontab [-u user] FILE\n               [-u user] [-e | -l | -r]\n               [-c dir]\n\nFiles used to schedule the execution of programs.\n\n-c crontab dir\n-e edit user's crontab\n-l list user's crontab\n-r delete user's crontab\n-u user\nFILE Replace crontab by FILE ('-': stdin)"
+
+#define HELP_crond "usage: crond [-fbS] [-l N] [-d N] [-L LOGFILE] [-c DIR]\n\nA daemon to execute scheduled commands.\n\n-b Background (default)\n-c crontab dir\n-d Set log level, log to stderr\n-f Foreground\n-l Set log level. 0 is the most verbose, default 8\n-S Log to syslog (default)\n-L Log to file"
+
+#define HELP_chsh "usage: chsh [-s SHELL] [-R CHROOT_DIR] [USER]\n\nChange user's login shell.\n\n-s	Use SHELL instead of prompting\n-R	Act on CHROOT_DIR instead of host\n\nNon-root users can only change their own shell to one listed in /etc/shells."
+
+#define HELP_brctl "usage: brctl COMMAND [BRIDGE [INTERFACE]]\n\nManage ethernet bridges\n\nCommands:\nshow                  Show a list of bridges\naddbr BRIDGE          Create BRIDGE\ndelbr BRIDGE          Delete BRIDGE\naddif BRIDGE IFACE    Add IFACE to BRIDGE\ndelif BRIDGE IFACE    Delete IFACE from BRIDGE\nsetageing BRIDGE TIME Set ageing time\nsetfd BRIDGE TIME     Set bridge forward delay\nsethello BRIDGE TIME  Set hello time\nsetmaxage BRIDGE TIME Set max message age\nsetpathcost BRIDGE PORT COST   Set path cost\nsetportprio BRIDGE PORT PRIO   Set port priority\nsetbridgeprio BRIDGE PRIO      Set bridge priority\nstp BRIDGE [1/yes/on|0/no/off] STP on/off"
+
+#define HELP_bootchartd "usage: bootchartd {start [PROG ARGS]}|stop|init\n\nRecord boot chart data into /var/log/bootlog.tgz\n\nstart: start background logging; with PROG, run PROG,\n       then kill logging with SIGUSR1\nstop:  send SIGUSR1 to all bootchartd processes\ninit:  start background logging; stop when getty/xdm is seen\n      (for init scripts)\n\nUnder PID 1: as init, then exec $bootchart_init, /init, /sbin/init"
+
+#define HELP_bc "usage: bc [-ilqsw] [file ...]\n\nbc is a command-line calculator with a Turing-complete language.\n\noptions:\n\n  -i  --interactive  force interactive mode\n  -l  --mathlib      use predefined math routines:\n\n                     s(expr)  =  sine of expr in radians\n                     c(expr)  =  cosine of expr in radians\n                     a(expr)  =  arctangent of expr, returning radians\n                     l(expr)  =  natural log of expr\n                     e(expr)  =  raises e to the power of expr\n                     j(n, x)  =  Bessel function of integer order n of x\n\n  -q  --quiet        don't print version and copyright\n  -s  --standard     error if any non-POSIX extensions are used\n  -w  --warn         warn if any non-POSIX extensions are used"
+
+#define HELP_arping "usage: arping [-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP\n\nSend ARP requests/replies\n\n-f         Quit on first ARP reply\n-q         Quiet\n-b         Keep broadcasting, don't go unicast\n-D         Duplicated address detection mode\n-U         Unsolicited ARP mode, update your neighbors\n-A         ARP answer mode, update your neighbors\n-c N       Stop after sending N ARP requests\n-w TIMEOUT Time to wait for ARP reply, seconds\n-I IFACE   Interface to use (default eth0)\n-s SRC_IP  Sender IP address\nDST_IP     Target IP address"
+
+#define HELP_arp "usage: arp\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]\n[-v]              [-i IF] -d HOSTNAME [pub]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub\n[-v]  [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub\n\nManipulate ARP cache.\n\n-a	Display (all) hosts\n-s	Set new ARP entry\n-d	Delete a specified entry\n-v	Verbose\n-n	Don't resolve names\n-i IFACE	Network interface\n-D	Read <hwaddr> from given device\n-A,-p AF	Protocol family\n-H HWTYPE	Hardware address type"
+
+#define HELP_xargs "usage: xargs [-0Pprt] [-snE STR] COMMAND...\n\nRun command line one or more times, appending arguments from stdin.\n\nIf COMMAND exits with 255, don't launch another even if arguments remain.\n\n-0	Each argument is NULL terminated, no whitespace or quote processing\n-E	Stop at line matching string\n-n	Max number of arguments per command\n-o	Open tty for COMMAND's stdin (default /dev/null)\n-P	Parallel processes (default 1)\n-p	Prompt for y/n from tty before running each command\n-r	Don't run with empty input (otherwise always run command once)\n-s	Size in bytes per command line\n-t	Trace, print command line to stderr"
+
+#define HELP_who "usage: who\n\nPrint information about logged in users."
+
+#define HELP_wc "usage: wc [-Llwcm] [FILE...]\n\nCount lines, words, and characters in input.\n\n-L	Show max line length\n-l	Show lines\n-w	Show words\n-c	Show bytes\n-m	Show characters\n\nBy default outputs lines, words, bytes, and filename for each\nargument (or from stdin if none). Displays only either bytes\nor characters."
+
+#define HELP_uuencode "usage: uuencode [-m] [INFILE] ENCODE_FILENAME\n\nUuencode stdin (or INFILE) to stdout, with ENCODE_FILENAME in the output.\n\n-m	Base64"
+
+#define HELP_uudecode "usage: uudecode [-o OUTFILE] [INFILE]\n\nDecode file from stdin (or INFILE).\n\n-o	Write to OUTFILE instead of filename in header"
+
+#define HELP_unlink "usage: unlink FILE\n\nDelete one file."
+
+#define HELP_uniq "usage: uniq [-cduiz] [-w MAXCHARS] [-f FIELDS] [-s CHAR] [INFILE [OUTFILE]]\n\nReport or filter out repeated lines in a file\n\n-c	Show counts before each line\n-d	Show only lines that are repeated\n-u	Show only lines that are unique\n-i	Ignore case when comparing lines\n-z	Lines end with \\0 not \\n\n-w	Compare maximum X chars per line\n-f	Ignore first X fields\n-s	Ignore first X chars"
+
+#define HELP_uname "usage: uname [-asnrvmo]\n\nPrint system information.\n\n-s	System name\n-n	Network (domain) name\n-r	Kernel Release number\n-v	Kernel Version\n-m	Machine (hardware) name\n-a	All of the above (in order)\n\n-o	Userspace type"
+
+#define HELP_arch "usage: arch\n\nPrint machine (hardware) name, same as uname -m."
+
+#define HELP_ulimit "usage: ulimit [-P PID] [-SHRacdefilmnpqrstuv] [LIMIT]\n\nPrint or set resource limits for process number PID. If no LIMIT specified\n(or read-only -ap selected) display current value (sizes in bytes).\nDefault is ulimit -P $PPID -Sf\" (show soft filesize of your shell).\n\n-P  PID to affect (default $PPID)  -a  Show all limits\n-S  Set/show soft limit            -H  Set/show hard (maximum) limit\n\n-c  Core file size (blocks)        -d  Process data segment (KiB)\n-e  Max scheduling priority        -f  File size (KiB)\n-i  Pending signal count           -l  Locked memory (KiB)\n-m  Resident Set Size (KiB)        -n  Number of open files\n-p  Pipe buffer (512 bytes)        -q  POSIX message queues\n-r  Max realtime priority          -R  Realtime latency (us)\n-s  Stack size (KiB)               -t  Total CPU time (s)\n-u  Maximum processes (this UID)   -v  Virtual memory size (KiB)"
+
+#define HELP_tty "usage: tty [-s]\n\nShow filename of terminal connected to stdin. If none print \"not a tty\"\nand exit with nonzero status.\n\n-s	Silent, exit code only"
+
+#define HELP_tsort "usage: tsort [FILE]\n\nTopological sort dependency resolver.\n\nRead pairs of input strings indicating before/after dependency relationships\nand find an ordering that respects all dependencies. On success output each\nstring once to stdout, on failure print error and output cycle pairs."
+
+#define HELP_true "usage: true\n\nReturn zero."
+
+#define HELP_touch "usage: touch [-amch] [-d DATE] [-t TIME] [-r FILE] FILE...\n\nUpdate the access and modification times of each FILE to the current time.\n\n-a	Change access time\n-m	Change modification time\n-c	Don't create file\n-h	Change symlink\n-d	Set time to DATE (in YYYY-MM-DDThh:mm:SS[.frac][tz] format)\n-t	Set time to TIME (in [[CC]YY]MMDDhhmm[.ss][frac] format)\n-r	Set time same as reference FILE"
+
+#define HELP_time "usage: time [-pv] COMMAND...\n\nRun command line and report real, user, and system time elapsed in seconds.\n(real = clock on the wall, user = cpu used by command's code,\nsystem = cpu used by OS on behalf of command.)\n\n-p	POSIX format output\n-v	Verbose"
+
+#define HELP_test "usage: test [-bcdefghkLprSsuwx PATH] [-nz STRING] [-t FD] [X ?? Y]\n\nReturn true or false by performing tests. No arguments is false, one argument\nis true if not empty string.\n\n--- Tests with a single argument (after the option):\nPATH is/has:\n  -b  block device   -f  regular file   -p  fifo           -u  setuid bit\n  -c  char device    -g  setgid         -r  readable       -w  writable\n  -d  directory      -h  symlink        -S  socket         -x  executable\n  -e  exists         -L  symlink        -s  nonzero size   -k  sticky bit\nSTRING is:\n  -n  nonzero size   -z  zero size\nFD (integer file descriptor) is:\n  -t  a TTY\n\n--- Tests with one argument on each side of an operator:\nTwo strings:\n  =  are identical   !=  differ         =~  string matches regex\nAlphabetical sort:\n  <  first is lower  >   first higher\nTwo integers:\n  -eq  equal         -gt  first > second    -lt  first < second\n  -ne  not equal     -ge  first >= second   -le  first <= second\n\n--- Modify or combine tests:\n  ! EXPR     not (swap true/false)   EXPR -a EXPR    and (are both true)\n  ( EXPR )   evaluate this first     EXPR -o EXPR    or (is either true)"
+
+#define HELP_tee "usage: tee [-ai] [FILE...]\n\nCopy stdin to each listed file, and also to stdout.\nFilename \"-\" is a synonym for stdout.\n\n-a	Append to files\n-i	Ignore SIGINT"
+
+#define HELP_tar "usage: tar [-cxt] [-fvohmjkOS] [-XTCf NAME] [--selinux] [FILE...]\n\nCreate, extract, or list files in a .tar (or compressed t?z) file.\n\nOptions:\nc  Create                x  Extract               t  Test (list)\nf  tar FILE (default -)  C  Change to DIR first   v  Verbose display\nJ  xz compression        j  bzip2 compression     z  gzip compression\no  Ignore owner          h  Follow symlinks       m  Ignore mtime\nO  Extract to stdout     X  exclude names in FILE T  include names in FILE\ns  Sort dirs (--sort)\n\n--exclude        FILENAME to exclude  --full-time         Show seconds with -tv\n--mode MODE      Adjust permissions   --owner NAME[:UID]  Set file ownership\n--mtime TIME     Override timestamps  --group NAME[:GID]  Set file group\n--sparse         Record sparse files  --selinux           Save/restore labels\n--restrict       All under one dir    --no-recursion      Skip dir contents\n--numeric-owner  Use numeric uid/gid, not user/group names\n--null           Filenames in -T FILE are null-separated, not newline\n--strip-components NUM  Ignore first NUM directory components when extracting\n--xform=SED      Modify filenames via SED expression (ala s/find/replace/g)\n-I PROG          Filter through PROG to compress or PROG -d to decompress\n\nFilename filter types. Create command line args aren't filtered, extract\ndefaults to --anchored, --exclude defaults to --wildcards-match-slash,\nuse no- prefix to disable:\n\n--anchored  Match name not path       --ignore-case       Case insensitive\n--wildcards Expand *?[] like shell    --wildcards-match-slash"
+
+#define HELP_tail "usage: tail [-n|c NUMBER] [-f|F] [-s SECONDS] [FILE...]\n\nCopy last lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Output the last NUMBER lines (default 10), +X counts from start\n-c	Output the last NUMBER bytes, +NUMBER counts from start\n-f	Follow FILE(s) by descriptor, waiting for more data to be appended\n-F	Follow FILE(s) by filename, waiting for more data, and retrying\n-s	Used with -F, sleep SECONDS between retries (default 1)"
+
+#define HELP_strings "usage: strings [-fo] [-t oxd] [-n LEN] [FILE...]\n\nDisplay printable strings in a binary file\n\n-f	Show filename\n-n	At least LEN characters form a string (default 4)\n-o	Show offset (ala -t d)\n-t	Show offset type (o=octal, d=decimal, x=hexadecimal)"
+
+#define HELP_split "usage: split [-a SUFFIX_LEN] [-b BYTES] [-l LINES] [-n PARTS] [INPUT [OUTPUT]]\n\nCopy INPUT (or stdin) data to a series of OUTPUT (or \"x\") files with\nalphabetically increasing suffix (aa, ab, ac... az, ba, bb...).\n\n-a	Suffix length (default 2)\n-b	BYTES/file (10, 10k, 10m, 10g...)\n-l	LINES/file (default 1000)\n-n	PARTS many equal length files"
+
+#define HELP_sort "usage: sort [-CMVbcdfginrsuxz] [FILE...] [-k#[,#[x]] [-t X]] [-o FILE]\n\nSort all lines of text from input files (or stdin) to stdout.\n-g	General numeric sort (double precision with nan and inf)\n-n	Numeric order (instead of alphabetical)\n-r	Reverse\n-u	Unique lines only\n\n-b	Ignore leading blanks (or trailing blanks in second part of key)\n-C	Check whether input is sorted\n-c	Warn if input is unsorted\n-d	Dictionary order (use alphanumeric and whitespace chars only)\n-f	Force uppercase (case insensitive sort)\n-i	Ignore nonprinting characters\n-k	Sort by \"key\" (see below)\n-M	Month sort (jan, feb, etc)\n-o	Output to FILE instead of stdout\n-s	Skip fallback sort (only sort with keys)\n-t	Use a key separator other than whitespace\n-x	Hexadecimal numerical sort\n-V	Version numbers (name-1.234-rc6.5b.tgz)\n-z	Zero (null) terminated lines\n\nSorting by key looks at a subset of the words on each line. -k2 uses the\nsecond word to the end of the line, -k2,2 looks at only the second word,\n-k2,4 looks from the start of the second to the end of the fourth word.\n-k2.4,5 starts from the fourth character of the second word, to the end\nof the fifth word. Negative values count from the end. Specifying multiple\nkeys uses the later keys as tie breakers, in order. A type specifier\nappended to a sort key (such as -2,2n) applies only to sorting that key."
+
+#define HELP_sleep "usage: sleep DURATION...\n\nWait before exiting.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default)."
+
+#define HELP_sed "usage: sed [-inrszE] [-e SCRIPT]...|SCRIPT [-f SCRIPT_FILE]... [FILE...]\n\nStream editor. Apply editing SCRIPTs to lines of input.\n\n-e	Add SCRIPT to list\n-f	Add contents of SCRIPT_FILE to list\n-i	Edit each file in place (-iEXT keeps backup file with extension EXT)\n-n	No default output (use the p command to output matched lines)\n-r	Use extended regular expression syntax\n-E	POSIX alias for -r\n-s	Treat input files separately (implied by -i)\n-z	Use \\0 rather than \\n as input line separator\n\nA SCRIPT is one or more COMMANDs separated by newlines or semicolons.\nAll -e SCRIPTs and -f SCRIPT_FILE contents are combined in order as if\nseparated by newlines. If no -e or -f then first argument is the SCRIPT.\n\nCOMMANDs apply to every line unless prefixed with an ADDRESS of the form:\n\n  [ADDRESS[,ADDRESS]][!]COMMAND\n\nADDRESS is a line number (starting at 1), a /REGULAR EXPRESSION/, or $ for\nlast line (-s or -i makes it last line of each file). One address matches one\nline, ADDRESS,ADDRESS matches from first to second inclusive. Two regexes can\nmatch multiple ranges. ADDRESS,+N ends N lines later. ! inverts the match.\n\nREGULAR EXPRESSIONS start and end with the same character (anything but\nbackslash or newline). To use the delimiter in the regex escape it with a\nbackslash, and printf escapes (\\abcefnrtv and octal, hex, and unicode) work.\nAn empty regex repeats the previous one. ADDRESS regexes require any\nfirst delimiter except / to be \\escaped to distinguish it from COMMANDs.\n\nSed reads each line of input, processes it, and writes it out or discards it\nbefore reading the next. Sed can remember one additional line in a separate\nbuffer (the h, H, g, G, and x commands), and can read the next line of input\nearly (the n and N commands), but otherwise operates on individual lines.\n\nEach COMMAND starts with a single character. Commands with no arguments are:\n\n  !  Run this command when the ADDRESS _didn't_ match.\n  {  Start new command block, continuing until a corresponding \"}\".\n     Command blocks nest and can have ADDRESSes applying to the whole block.\n  }  End command block (this COMMAND cannot have an address)\n  d  Delete this line and move on to the next one\n     (ignores remaining COMMANDs)\n  D  Delete one line of input and restart command SCRIPT (same as \"d\"\n     unless you've glued lines together with \"N\" or similar)\n  g  Get remembered line (overwriting current line)\n  G  Get remembered line (appending to current line)\n  h  Remember this line (overwriting remembered line)\n  H  Remember this line (appending to remembered line, if any)\n  l  Print line escaping \\abfrtvn, octal escape other nonprintng chars,\n     wrap lines to terminal width with \\, append $ to end of line.\n  n  Print default output and read next line over current line (quit at EOF)\n  N  Append \\n and next line of input to this line. Quit at EOF without\n     default output. Advances line counter for ADDRESS and \"=\".\n  p  Print this line\n  P  Print this line up to first newline (from \"N\")\n  q  Quit (print default output, no more commands processed or lines read)\n  x  Exchange this line with remembered line (overwrite in both directions)\n  =  Print the current line number (plus newline)\n  #  Comment, ignores rest of this line of SCRIPT (until newline)\n\nCommands that take an argument:\n\n  : LABEL    Target for jump commands\n  a TEXT     Append text to output before reading next line\n  b LABEL    Branch, jumps to :LABEL (with no LABEL to end of SCRIPT)\n  c TEXT     Delete matching ADDRESS range and output TEXT instead\n  i TEXT     Insert text (output immediately)\n  r FILE     Append contents of FILE to output before reading next line.\n  s/S/R/F    Search for regex S replace match with R using flags F. Delimiter\n             is anything but \\n or \\, escape with \\ to use in S or R. Printf\n             escapes work. Unescaped & in R becomes full matched text, \\1\n             through \\9 = parenthetical subexpression from S. \\ at end of\n             line appends next line of SCRIPT. The flags in F are:\n             [0-9]    A number N, substitute only Nth match\n             g        Global, substitute all matches\n             i/I      Ignore case when matching\n             p        Print resulting line when match found and replaced\n             w [file] Write (append) line to file when match replaced\n  t LABEL    Test, jump if s/// command matched this line since last test\n  T LABEL    Test false, jump to :LABEL only if no s/// found a match\n  w FILE     Write (append) line to file\n  y/old/new/ Change each character in 'old' to corresponding character\n             in 'new' (with standard backslash escapes, delimiter can be\n             any repeated character except \\ or \\n)\n\nThe TEXT arguments (to a c i) may end with an unescaped \"\\\" to append\nthe next line (leading whitespace is not skipped), and treat \";\" as a\nliteral character (use \"\\;\" instead)."
+
+#define HELP_rmdir "usage: rmdir [-p] [DIR...]\n\nRemove one or more directories.\n\n-p	Remove path\n--ignore-fail-on-non-empty	Ignore failures caused by non-empty directories"
+
+#define HELP_rm "usage: rm [-fiRrv] FILE...\n\nRemove each argument from the filesystem.\n\n-f	Force: remove without confirmation, no error if it doesn't exist\n-i	Interactive: prompt for confirmation\n-rR	Recursive: remove directory contents\n-v	Verbose"
+
+#define HELP_renice "usage: renice [-gpu] -n INCREMENT ID...\n\n-g	Group ids\n-p	Process ids (default)\n-u	User ids"
+
+#define HELP_pwd "usage: pwd [-L|-P]\n\nPrint working (current) directory.\n\n-L	Use shell's path from $PWD (when applicable)\n-P	Print canonical absolute path"
+
+#define HELP_pkill "usage: pkill [-fnovx] [-SIGNAL|-l SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\n-l	Send SIGNAL (default SIGTERM)\n-V	Verbose\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_pgrep "usage: pgrep [-clfnovx] [-d DELIM] [-L SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\nSearch for process(es). PATTERN is an extended regular expression checked\nagainst command names.\n\n-c	Show only count of matches\n-d	Use DELIM instead of newline\n-L	Send SIGNAL instead of printing name\n-l	Show command name\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_iotop "usage: iotop [-AaKObq] [-n NUMBER] [-d SECONDS] [-p PID,] [-u USER,]\n\nRank processes by I/O.\n\n-A	All I/O, not just disk\n-a	Accumulated I/O (not percentage)\n-H	Show threads\n-K	Kilobytes\n-k	Fallback sort FIELDS (default -[D]IO,-ETIME,-PID)\n-m	Maximum number of tasks to show\n-O	Only show processes doing I/O\n-o	Show FIELDS (default PID,PR,USER,[D]READ,[D]WRITE,SWAP,[D]IO,COMM)\n-s	Sort by field number (0-X, default 6)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor LEFT/RIGHT to change sort, UP/DOWN move list, space to force\nupdate, R to reverse sort, Q to exit."
+
+#define HELP_top "usage: top [-Hhbq] [-k FIELD,] [-o FIELD,] [-s SORT] [-n NUMBER] [-m LINES] [-d SECONDS] [-p PID,] [-u USER,]\n\nShow process activity in real time.\n\n-H	Show threads\n-h	Usage graphs instead of text\n-k	Fallback sort FIELDS (default -S,-%CPU,-ETIME,-PID)\n-o	Show FIELDS (def PID,USER,PR,NI,VIRT,RES,SHR,S,%CPU,%MEM,TIME+,CMDLINE)\n-O	Add FIELDS (replacing PR,NI,VIRT,RES,SHR,S from default)\n-s	Sort by field number (1-X, default 9)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-m	Maximum number of tasks to show\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor UP/DOWN or LEFT/RIGHT to move list, SHIFT LEFT/RIGHT to change sort,\nspace to force update, R to reverse sort, Q to exit."
+
+#define HELP_ps "usage: ps [-AadefLlnwZ] [-gG GROUP,] [-k FIELD,] [-o FIELD,] [-p PID,] [-t TTY,] [-uU USER,]\n\nList processes.\n\nWhich processes to show (-gGuUpPt selections may be comma separated lists):\n\n-A  All					-a  Has terminal not session leader\n-d  All but session leaders		-e  Synonym for -A\n-g  In GROUPs				-G  In real GROUPs (before sgid)\n-p  PIDs (--pid)			-P  Parent PIDs (--ppid)\n-s  In session IDs			-t  Attached to selected TTYs\n-T  Show threads also			-u  Owned by selected USERs\n-U  Real USERs (before suid)\n\nOutput modifiers:\n\n-k  Sort FIELDs (-FIELD to reverse)	-M  Measure/pad future field widths\n-n  Show numeric USER and GROUP		-w  Wide output (don't truncate fields)\n\nWhich FIELDs to show. (-o HELP for list, default = -o PID,TTY,TIME,CMD)\n\n-f  Full listing (-o USER:12=UID,PID,PPID,C,STIME,TTY,TIME,ARGS=CMD)\n-l  Long listing (-o F,S,UID,PID,PPID,C,PRI,NI,ADDR,SZ,WCHAN,TTY,TIME,CMD)\n-o  Output FIELDs instead of defaults, each with optional :size and =title\n-O  Add FIELDS to defaults\n-Z  Include LABEL"
+
+#define HELP_printf "usage: printf FORMAT [ARGUMENT...]\n\nFormat and print ARGUMENT(s) according to FORMAT, using C printf syntax\n(% escapes for cdeEfgGiosuxX, \\ escapes for abefnrtv0 or \\OCTAL or \\xHEX)."
+
+#define HELP_patch "usage: patch [-Rlsuv] [-d DIR] [-i FILE] [-p DEPTH] [-F FUZZ] [--dry-run] [FILE [PATCH]]\n\nApply a unified diff to one or more files.\n\n-d	Modify files in DIR\n-F	Fuzz factor (number of non-matching context lines allowed per hunk)\n-i	Input patch from FILE (default=stdin)\n-l	Loose match (ignore whitespace)\n-p	Number of '/' to strip from start of file paths (default=all)\n-R	Reverse patch\n-s	Silent except for errors\n-v	Verbose (-vv to see decisions)\n--dry-run Don't change files, just confirm patch applies\n\nOnly handles \"unified\" diff format (-u is assumed and ignored). Only\nmodifies files when all hunks to that file apply. Prints failed hunks\nto stderr, and exits with nonzero status if any hunks fail.\n\nFiles compared against /dev/null (or with a date <= the unix epoch) are\ncreated/deleted as appropriate. Default -F value is the number of\nleading/trailing context lines minus one (usually 2)."
+
+#define HELP_paste "usage: paste [-s] [-d DELIMITERS] [FILE...]\n\nMerge corresponding lines from each input file.\n\n-d	List of delimiter characters to separate fields with (default is \\t)\n-s	Sequential mode: turn each input file into one line of output"
+
+#define HELP_od "usage: od [-bcdosxv] [-j #] [-N #] [-w #] [-A doxn] [-t acdfoux[#]]\n\nDump data in octal/hex.\n\n-A	Address base (decimal, octal, hexadecimal, none)\n-j	Skip this many bytes of input\n-N	Stop dumping after this many bytes\n-t	Output type a(scii) c(har) d(ecimal) f(loat) o(ctal) u(nsigned) (he)x\n	plus optional size in bytes\n	aliases: -b=-t o1, -c=-t c, -d=-t u2, -o=-t o2, -s=-t d2, -x=-t x2\n-v	Don't collapse repeated lines together\n-w	Total line width in bytes (default 16)"
+
+#define HELP_nohup "usage: nohup COMMAND...\n\nRun a command that survives the end of its terminal.\n\nRedirect tty on stdin to /dev/null, tty on stdout to \"nohup.out\"."
+
+#define HELP_nl "usage: nl [-E] [-l #] [-b MODE] [-n STYLE] [-s SEPARATOR] [-v #] [-w WIDTH] [FILE...]\n\nNumber lines of input.\n\n-E	Use extended regex syntax (when doing -b pREGEX)\n-b	Which lines to number: a (all) t (non-empty, default) pREGEX (pattern)\n-l	Only count last of this many consecutive blank lines\n-n	Number STYLE: ln (left justified) rn (right justified) rz (zero pad)\n-s	Separator to use between number and line (instead of TAB)\n-v	Starting line number for each section (default 1)\n-w	Width of line numbers (default 6)"
+
+#define HELP_nice "usage: nice [-n PRIORITY] COMMAND...\n\nRun a command line at an increased or decreased scheduling priority.\n\nHigher numbers make a program yield more CPU time, from -20 (highest\npriority) to 19 (lowest).  By default processes inherit their parent's\nniceness (usually 0).  By default this command adds 10 to the parent's\npriority.  Only root can set a negative niceness level.\n\n-n	Add given adjustment to priority (default 10)"
+
+#define HELP_mkfifo_z "usage: mkfifo [-Z CONTEXT]\n\n-Z	Security context"
+
+#define HELP_mkfifo "usage: mkfifo [NAME...]\n\nCreate FIFOs (named pipes)."
+
+#define HELP_mkdir_z "usage: [-Z context]\n\n-Z	Set security context"
+
+#define HELP_mkdir "usage: mkdir [-vp] [-m MODE] [DIR...]\n\nCreate one or more directories.\n\n-m	Set permissions of directory to mode\n-p	Make parent directories as needed\n-v	Verbose"
+
+#define HELP_ls "usage: ls [-1ACFHLNRSUXZabcdfghilmnopqrstuwx] [--color[=auto]] [FILE...]\n\nList files\n\nwhat to show:\n-A  all files except . and ..      -a  all files including .hidden\n-b  escape nongraphic chars        -d  directory, not contents\n-F  append /dir *exe @sym |FIFO    -f  files (no sort/filter/format)\n-H  follow command line symlinks   -i  inode number\n-L  follow symlinks                -N  no escaping, even on tty\n-p  put '/' after dir names        -q  unprintable chars as '?'\n-R  recursively list in subdirs    -s  storage used (in --block-size)\n-Z  security context\n\noutput formats:\n-1  list one file per line         -C  columns (sorted vertically)\n-g  like -l but no owner           -h  human readable sizes\n-k  reset --block-size to default  -l  long (show full details)\n-m  comma separated                -ll long with nanoseconds (--full-time)\n-n  long with numeric uid/gid      -o  long without group column\n-r  reverse order                  -w  set column width\n-x  columns (horizontal sort)\n\nsort by:  (also --sort=longname,longname... ends with alphabetical)\n-c  ctime      -r  reverse    -S  size     -t  time    -u  atime    -U  none\n-X  extension  -!  dirfirst   -~  nocase\n\n--block-size N	block size (default 1024, -k resets to 1024)\n--color  =always (default)  =auto (when stdout is tty) =never\n    exe=green  suid=red  suidfile=redback  stickydir=greenback\n    device=yellow  symlink=turquoise/red  dir=blue  socket=purple\n\nLong output uses -cu for display, use -ltc/-ltu to also sort by ctime/atime."
+
+#define HELP_logger "usage: logger [-s] [-t TAG] [-p [FACILITY.]PRIORITY] [MESSAGE...]\n\nLog message (or stdin) to syslog.\n\n-s	Also write message to stderr\n-t	Use TAG instead of username to identify message source\n-p	Specify PRIORITY with optional FACILITY. Default is \"user.notice\""
+
+#define HELP_ln "usage: ln [-fnrsTv] [-t DIR] [FROM...] TO\n\nCreate a link between FROM and TO.\nOne/two/many arguments work like \"mv\" or \"cp\".\n\n-f	Force the creation of the link, even if TO already exists\n-n	Symlink at TO treated as file\n-r	Create relative symlink from -> to\n-s	Create a symbolic link\n-t	Create links in DIR\n-T	TO always treated as file, max 2 arguments\n-v	Verbose"
+
+#define HELP_link "usage: link FILE NEWLINK\n\nCreate hardlink to a file."
+
+#define HELP_killall5 "usage: killall5 [-l [SIGNAL]] [-SIGNAL|-s SIGNAL] [-o PID]...\n\nSend a signal to all processes outside current session.\n\n-l	List signal name(s) and number(s)\n-o PID	Omit PID\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_kill "usage: kill [-l [SIGNAL] | -s SIGNAL | -SIGNAL] PID...\n\nSend signal to process(es).\n\n-l	List signal name(s) and number(s)\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_whoami "usage: whoami\n\nPrint the current user name."
+
+#define HELP_logname "usage: logname\n\nPrint the current user name."
+
+#define HELP_groups "usage: groups [user]\n\nPrint the groups a user is in."
+
+#define HELP_id_z "usage: id [-Z]\n\n-Z	Show only security context"
+
+#define HELP_id "usage: id [-Ggnru] [USER...]\n\nPrint user and group ID.\n\n-G	Show all group IDs\n-g	Show only the effective group ID\n-n	Print names instead of numeric IDs (to be used with -Ggu)\n-r	Show real ID instead of effective ID\n-u	Show only the effective user ID"
+
+#define HELP_iconv "usage: iconv [-f FROM] [-t TO] [FILE...]\n\nConvert character encoding of files.\n\n-c	Omit invalid chars\n-f	Convert from (default UTF-8)\n-t	Convert to   (default UTF-8)"
+
+#define HELP_head "usage: head [-cn NUM] [-qv] [FILE...]\n\nCopy first lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Number of lines to copy\n-c	Number of bytes to copy\n-q	Never print headers\n-v	Always print headers"
+
+#define HELP_grep "usage: grep [-abcEFHhIiLlnoqrsvwxZz] [-ABC NUM] [-m MAX] [-e REGEX]... [-MS PATTERN]... [-f REGFILE]... [FILE]...\n\nShow lines matching regular expressions. If no -e, first argument is\nregular expression to match. With no files (or \"-\" filename) read stdin.\nReturns 0 if matched, 1 if no match found, 2 for command errors.\n\n-e  Regex(es) to match.       -f  File(s) of regexes to match (1 per line).\n\nfile search:\n-r  Recurse into subdirs     -R  Recurse following symlinks\n-M  Match files (--include)  -S  Skip files (--exclude)\n-I  Ignore binary files      --exclude-dir=PATTERN  Skip directories\n\nmatch type:\n-A  Show NUM lines after     -B  Show NUM lines before match\n-C  NUM lines context (A+B)  -E  extended regex syntax\n-F  fixed (literal match)    -a  always text (not binary)\n-i  case insensitive         -m  match MAX many lines\n-v  invert match             -w  whole word (implies -E)\n-x  whole line               -z  input NUL terminated\n\ndisplay modes: (default: matched line)\n-L  filenames with no match  -Z  output is NUL terminated\n-c  count of matching lines  -l  filenames with a match\n-o  only matching part       -q  quiet (errors only)\n-s  silent (no error msg)\n\noutput prefix (default: filename if checking more than 1 file)\n-H  force filename           -b  byte offset of match\n-h  hide filename            -n  line number of match"
+
+#define HELP_getconf "usage: getconf -a [PATH] | -l | NAME [PATH]\n\nGet system configuration values. Values from pathconf(3) require a path.\n\n-a	Show all (defaults to \"/\" if no path given)\n-l	List available value names (grouped by source)"
+
+#define HELP_fold "usage: fold [-bs] [-w WIDTH] [FILE...]\n\nBreak long lines by inserting newlines.\n\n-b	Count bytes instead of utf-8 unicode columns\n-s	Wrap at whitespace when possible\n-w	Break at WIDTH columns (default 80)"
+
+#define HELP_find "usage: find [-HL] [DIR...] [<options>]\n\nSearch directories for matching files.\nDefault: search \".\", match all, -print matches.\n\n-H  Follow command line symlinks         -L  Follow all symlinks\n\nMatch filters:\n-name  PATTERN   filename with wildcards   -iname      ignore case -name\n-path  PATTERN   path name with wildcards  -ipath      ignore case -path\n-user  UNAME     belongs to user UNAME     -nouser     user ID not known\n-group GROUP     belongs to group GROUP    -nogroup    group ID not known\n-perm  [-/]MODE  permissions (-=min /=any) -prune      ignore dir contents\n-size  N[c]      512 byte blocks (c=bytes) -xdev       only this filesystem\n-links N         hardlink count            -empty      empty files and dirs\n-atime N[u]      accessed N units ago      -true       always true\n-ctime N[u]      created N units ago       -false      always false\n-mtime N[u]      modified N units ago      -executable access(X_OK) perm+ACL\n-inum  N         inode number N            -readable   access(R_OK) perm+ACL\n-context PATTERN security context          -depth      contents before dir\n-samefile FILE   hardlink to FILE          -maxdepth N at most N dirs down\n-newer    FILE   newer mtime than FILE     -mindepth N at least N dirs down\n-newerXY  FILE   X=acm time > FILE's Y=acm time (Y=t: FILE is literal time)\n-type [bcdflps]  type is (block, char, dir, file, symlink, pipe, socket)\n\nNumbers N may be prefixed by - (less than) or + (greater than). Units for\n-[acm]time are d (days, default), h (hours), m (minutes), or s (seconds).\n\nCombine matches with:\n!, -a, -o, ( )    not, and, or, group expressions\n\nActions:\n-print  Print match with newline  -print0        Print match with null\n-exec   Run command with path     -execdir       Run command in file's dir\n-ok     Ask before exec           -okdir         Ask before execdir\n-delete Remove matching file/dir  -printf FORMAT Print using format string\n-quit   Exit immediately\n\nCommands substitute \"{}\" with matched file. End with \";\" to run each file,\nor \"+\" (next argument after \"{}\") to collect and run with multiple files.\n\n-printf FORMAT characters are \\ escapes and:\n%b  512 byte blocks used\n%f  basename            %g  textual gid          %G  numeric gid\n%i  decimal inode       %l  target of symlink    %m  octal mode\n%M  ls format type/mode %p  path to file         %P  path to file minus DIR\n%s  size in bytes       %T@ mod time as unixtime\n%u  username            %U  numeric uid          %Z  security context"
+
+#define HELP_file "usage: file [-bhLs] [FILE...]\n\nExamine the given files and describe their content types.\n\n-b	Brief (no filename)\n-h	Don't follow symlinks (default)\n-L	Follow symlinks\n-s	Show block/char device contents"
+
+#define HELP_false "usage: false\n\nReturn nonzero."
+
+#define HELP_expand "usage: expand [-t TABLIST] [FILE...]\n\nExpand tabs to spaces according to tabstops.\n\n-t	TABLIST\n\nSpecify tab stops, either a single number instead of the default 8,\nor a comma separated list of increasing numbers representing tabstop\npositions (absolute, not increments) with each additional tab beyond\nthat becoming one space."
+
+#define HELP_env "usage: env [-0i] [-e FILE] [-u NAME] [NAME=VALUE...] [COMMAND...]\n\nSet the environment for command invocation, or list environment variables.\n\n-e	Execute FILE instead of argv[0] in COMMAND list\n-i	Clear existing environment\n-u NAME	Remove NAME from the environment\n-0	Use null instead of newline in output"
+
+#define HELP_echo "usage: echo [-Een] [ARG...]\n\nWrite each argument to stdout, one space between each, followed by a newline.\n\n-E	Print escape sequences literally (default)\n-e	Process the following escape sequences:\n	\\\\  Backslash		\\0NNN Octal (1-3 digit)	\\xHH Hex (1-2 digit)\n	\\a  Alert (beep/flash)	\\b  Backspace		\\c  Stop here (no \\n)\n	\\f  Form feed		\\n  Newline		\\r  Carriage return\n	\\t  Horizontal tab	\\v  Vertical tab\n-n	No trailing newline"
+
+#define HELP_du "usage: du [-d N] [-abcHKkLlmsx] [FILE...]\n\nShow disk usage, space consumed by files and directories.\n\nSize in:\n-b	Apparent bytes (directory listing size, not space used)\n-h	Human readable (e.g., 1K 243M 2G)\n-k	1024 byte blocks (default)\n-K	512 byte blocks (posix)\n-m	Megabytes\n\nWhat to show:\n-a	All files, not just directories\n-c	Cumulative total\n-d N	Only depth < N\n-H	Follow symlinks on cmdline\n-L	Follow all symlinks\n-l	Disable hardlink filter\n-s	Only total size of each argument\n-x	Don't leave this filesystem"
+
+#define HELP_dirname "usage: dirname PATH...\n\nShow directory portion of path."
+
+#define HELP_df "usage: df [-aHhikP] [-t TYPE] [FILE...]\n\nThe \"disk free\" command shows total/used/available disk space for\neach filesystem listed on the command line, or all currently mounted\nfilesystems.\n\n-a	Show all (including /proc and friends)\n-H	Human readable (k=1000)\n-h	Human readable (K=1024)\n-i	Show inodes instead of blocks\n-k	Sets units back to 1024 bytes (the default without -P)\n-P	The SUSv3 \"Pedantic\" option (512 byte blocks)\n-t TYPE	Display only filesystems of this type\n\nPedantic provides a slightly less useful output format dictated by POSIX,\nand sets the units to 512 bytes instead of the default 1024 bytes."
+
+#define HELP_dd "usage: dd [if|of=FILE] [ibs|obs|bs|count|seek|skip=N] [conv|status|iflag|oflag=FLAG[,FLAG...]]\n\nCopy/convert blocks of data from input to output, with the following\nkeyword=value modifiers (and their default values):\n\nif=FILE  Read FILE (stdin)          of=FILE  Write to FILE (stdout)\n   bs=N  Block size in bytes (512)  count=N  Stop after copying N blocks (all)\n  ibs=N  Input block size (bs=)       obs=N  Output block size (bs=)\n skip=N  Skip N input blocks (0)     seek=N  Skip N output blocks (0)\n\nEach =N value accepts the normal unit suffixes (see toybox --help).\n\nThese modifiers take a comma separated list of potential options:\n\niflag=count_bytes,skip_bytes   count=N or skip=N is in bytes not blocks\noflag=seek_bytes,append        seek=N is in bytes, append output to file\nstatus=noxfer,none             don't show transfer rate, no summary info\nconv=\n  notrunc  Don't truncate output    noerror  Continue after read errors\n  sync     Zero pad short reads     fsync    Flush output to disk at end\n  sparse   Seek past zeroed output  excl     Fail if output file exists\n  nocreat  Fail if of=FILE missing"
+
+#define HELP_date "usage: date [-u] [-I RES] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]\n\nSet/get the current date/time. With no SET shows the current date.\n\n-d	Show DATE instead of current time (convert date format)\n-D	+FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])\n-I RES	ISO 8601 with RESolution d=date/h=hours/m=minutes/s=seconds/n=ns\n-r	Use modification time of FILE instead of current date\n-s DATE	Set the system clock to DATE.\n-u	Use UTC instead of current timezone\n\nSupported input formats:\n\nMMDDhhmm[[CC]YY][.ss]     POSIX\n@UNIXTIME[.FRACTION]      seconds since midnight 1970-01-01\nYYYY-MM-DD [hh:mm[:ss]]   ISO 8601\nhh:mm[:ss]                24-hour time today\n\nAll input formats can be followed by fractional seconds, and/or a UTC\noffset such as -0800.\n\nAll input formats can be preceded by TZ=\"id\" to set the input time zone\nseparately from the output time zone. Otherwise $TZ sets both.\n\n+FORMAT specifies display format string using strftime(3) syntax:\n\n%% literal %             %n newline              %t tab\n%S seconds (00-60)       %M minute (00-59)       %m month (01-12)\n%H hour (0-23)           %I hour (01-12)         %p AM/PM\n%y short year (00-99)    %Y year                 %C century\n%a short weekday name    %A weekday name         %u day of week (1-7, 1=mon)\n%b short month name      %B month name           %Z timezone name\n%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)\n%N nanosec (output only)\n\n%U Week of year (0-53 start Sunday)   %W Week of year (0-53 start Monday)\n%V Week of year (1-53 start Monday, week < 4 days not part of this year)\n\n%F \"%Y-%m-%d\"   %R \"%H:%M\"        %T \"%H:%M:%S\"        %z  timezone (-0800)\n%D \"%m/%d/%y\"   %r \"%I:%M:%S %p\"  %h \"%b\"              %:z timezone (-08:00)\n%x locale date  %X locale time    %c locale date/time  %s  unix epoch time"
+
+#define HELP_cut "usage: cut [-Ds] [-bcCfF LIST] [-dO DELIM] [FILE...]\n\nPrint selected parts of lines from each FILE to standard output.\n\nEach selection LIST is comma separated, either numbers (counting from 1)\nor dash separated ranges (inclusive, with X- meaning to end of line and -X\nfrom start). By default selection ranges are sorted and collated, use -D\nto prevent that.\n\n-b	Select bytes (with -n round start/end down to start of utf8 char)\n-c	Select UTF-8 characters\n-C	Select unicode columns\n-d	Input delimiter (default is TAB for -f, run of whitespace for -F)\n-D	Don't sort/collate selections or match -fF lines without delimiter\n-f	Select fields (words) separated by single DELIM character\n-F	Select fields separated by DELIM regex\n-O	Output separator (default one space for -F, input delim for -f)\n-s	Skip lines without delimiters"
+
+#define HELP_cpio "usage: cpio -{o|t|i|p DEST} [-dLtuv] [--verbose] [-F FILE] [-R [USER][:GROUP] [--no-preserve-owner]\n\nCopy files into and out of a \"newc\" format cpio archive.\n\n-d	Create directories if needed\n-F FILE	Use archive FILE instead of stdin/stdout\n-i	Extract from archive into file system (stdin=archive)\n-L	Follow symlinks\n-o	Create archive (stdin=list of files, stdout=archive)\n-p DEST	Copy-pass mode, copy stdin file list to directory DEST\n-R USER	Replace owner with USER[:GROUP]\n-t	Test files (list only, stdin=archive, stdout=list of files)\n-u	Unlink existing files when extracting\n-v	Verbose\n--no-preserve-owner     Don't set ownership during extract"
+
+#define HELP_install "usage: install [-dDpsv] [-o USER] [-g GROUP] [-m MODE] [-t TARGET] [SOURCE...] [DEST]\n\nCopy files and set attributes.\n\n-d	Act like mkdir -p\n-D	Create leading directories for DEST\n-g	Make copy belong to GROUP\n-m	Set permissions to MODE\n-o	Make copy belong to USER\n-p	Preserve timestamps\n-s	Call \"strip -p\"\n-t	Copy files to TARGET dir (no DEST)\n-v	Verbose"
+
+#define HELP_mv "usage: mv [-FfinTvx] [-t TARGET] SOURCE... [DEST]\n\n-F	Delete any existing DEST first (--remove-destination)\n-f	Force copy by deleting destination file\n-i	Interactive, prompt before overwriting existing DEST\n-n	No clobber (don't overwrite DEST)\n-t	Move to TARGET dir (no DEST)\n-T	DEST always treated as file, max 2 arguments\n-v	Verbose\n-x	Atomically exchange source/dest (--swap)"
+
+#define HELP_cp "usage: cp [-aDdFfHiLlnPpRrsTuv] [--preserve=motcxa] [-t TARGET] SOURCE... [DEST]\n\nCopy files from SOURCE to DEST.  If more than one SOURCE, DEST must\nbe a directory.\n\n-a	Same as -dpr\n-D	Create leading dirs under DEST (--parents)\n-d	Don't dereference symlinks\n-F	Delete any existing DEST first (--remove-destination)\n-f	Delete destination files we can't write to\n-H	Follow symlinks listed on command line\n-i	Interactive, prompt before overwriting existing DEST\n-L	Follow all symlinks\n-l	Hard link instead of copy\n-n	No clobber (don't overwrite DEST)\n-P	Do not follow symlinks\n-p	Preserve timestamps, ownership, and mode\n-R	Recurse into subdirectories (DEST must be a directory)\n-r	Synonym for -R\n-s	Symlink instead of copy\n-T	DEST always treated as file, max 2 arguments\n-t	Copy to TARGET dir (no DEST)\n-u	Update (keep newest mtime)\n-v	Verbose\n\nArguments to --preserve are the first letter(s) of:\n\n        mode - permissions (ignore umask for rwx, copy suid and sticky bit)\n   ownership - user and group\n  timestamps - file creation, modification, and access times.\n     context - security context\n       xattr - extended attributes\n         all - all of the above"
+
+#define HELP_comm "usage: comm [-123] FILE1 FILE2\n\nRead FILE1 and FILE2, which should be ordered, and produce three text\ncolumns as output: lines only in FILE1; lines only in FILE2; and lines\nin both files. Filename \"-\" is a synonym for stdin.\n\n-1	Suppress the output column of lines unique to FILE1\n-2	Suppress the output column of lines unique to FILE2\n-3	Suppress the output column of lines duplicated in FILE1 and FILE2"
+
+#define HELP_cmp "usage: cmp [-ls] [-n LEN] FILE1 [FILE2 [SKIP1 [SKIP2]]]\n\nCompare the contents of files (vs stdin if only one given), optionally\nskipping bytes at start.\n\n-l	Show all differing bytes\n-n LEN	Compare at most LEN bytes\n-s	Silent"
+
+#define HELP_crc32 "usage: crc32 [file...]\n\nOutput crc32 checksum for each file."
+
+#define HELP_cksum "usage: cksum [-HIPLN] [FILE...]\n\nFor each file, output crc32 checksum value, length and name of file.\nIf no files listed, copy from stdin.  Filename \"-\" is a synonym for stdin.\n\n-H	Hexadecimal checksum (defaults to decimal)\n-I	Skip post-inversion\n-P	Pre-inversion\n-L	Little endian (defaults to big endian)\n-N	Do not include length in CRC calculation (or output)"
+
+#define HELP_chmod "usage: chmod [-R] MODE FILE...\n\nChange mode of listed file[s] (recursively with -R).\n\nMODE can be (comma-separated) stanzas: [ugoa][+-=][rwxstXugo]\n\nStanzas are applied in order: For each category (u = user,\ng = group, o = other, a = all three, if none specified default is a),\nset (+), clear (-), or copy (=), r = read, w = write, x = execute.\ns = u+s = suid, g+s = sgid, +t = sticky. (o+s ignored so a+s doesn't set +t)\nsuid/sgid: execute as the user/group who owns the file.\nsticky: can't delete files you don't own out of this directory\nX = x for directories or if any category already has x set.\n\nOr MODE can be an octal value up to 7777	ug uuugggooo	top +\nbit 1 = o+x, bit 1<<8 = u+w, 1<<11 = g+1	sstrwxrwxrwx	bottom\n\nExamples:\nchmod u+w file - allow owner of \"file\" to write to it.\nchmod 744 file - user can read/write/execute, everyone else read only"
+
+#define HELP_chown "see: chgrp"
+
+#define HELP_chgrp "usage: chgrp/chown [-RHLP] [-fvh] GROUP FILE...\n\nChange group of one or more files.\n\n-f	Suppress most error messages\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories (implies -h)\n-H	With -R change target of symlink, follow command line symlinks\n-L	With -R change target of symlink, follow all symlinks\n-P	With -R change symlink, do not follow symlinks (default)\n-v	Verbose"
+
+#define HELP_cat "usage: cat [-etuv] [FILE...]\n\nCopy (concatenate) files to stdout.  If no files listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-e	Mark each newline with $\n-t	Show tabs as ^I\n-u	Copy one byte at a time (slow)\n-v	Display nonprinting characters as escape sequences with M-x for\n	high ascii characters (>127), and ^x for other nonprinting chars"
+
+#define HELP_cal "usage: cal [-h] [[[DAY] MONTH] YEAR]\n\nPrint a calendar.\n\nWith one argument, prints all months of the specified year.\nWith two arguments, prints calendar for month and year.\nWith three arguments, highlights day within month and year.\n\n-h	Don't highlight today"
+
+#define HELP_basename "usage: basename [-a] [-s SUFFIX] NAME... | NAME [SUFFIX]\n\nReturn non-directory portion of a pathname removing suffix.\n\n-a		All arguments are names\n-s SUFFIX	Remove suffix (implies -a)"
+
diff --git a/android/linux/generated/newtoys.h b/android/linux/generated/newtoys.h
new file mode 100644
index 0000000..9281485
--- /dev/null
+++ b/android/linux/generated/newtoys.h
@@ -0,0 +1,347 @@
+USE_TOYBOX(NEWTOY(toybox, 0, TOYFLAG_STAYROOT|TOYFLAG_NOHELP))
+USE_SH(OLDTOY(-bash, sh, 0))
+USE_SH(OLDTOY(-sh, sh, 0))
+USE_SH(OLDTOY(-toysh, sh, 0))
+USE_SH(OLDTOY(., source, TOYFLAG_NOFORK))
+USE_TRUE(OLDTOY(:, true, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_TEST_GLUE(OLDTOY([, test, TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_NOHELP))
+USE_SH(OLDTOY([[, test, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_ACPI(NEWTOY(acpi, "abctV", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GROUPADD(OLDTOY(addgroup, groupadd, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERADD(OLDTOY(adduser, useradd, TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_ARCH(NEWTOY(arch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARP(NEWTOY(arp, "vi:nDsdap:A:H:[+Ap][!sd]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARPING(NEWTOY(arping, "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ASCII(NEWTOY(ascii, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE32(NEWTOY(base32, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE64(NEWTOY(base64, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASENAME(NEWTOY(basename, "^<1as:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(OLDTOY(bash, sh, TOYFLAG_BIN))
+USE_BC(NEWTOY(bc, "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BLKDISCARD(NEWTOY(blkdiscard, "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]", TOYFLAG_BIN))
+USE_BLKID(NEWTOY(blkid, "ULo:s*[!LU]", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BLOCKDEV(NEWTOY(blockdev, "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)",TOYFLAG_SBIN))
+USE_BOOTCHARTD(NEWTOY(bootchartd, 0, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_BRCTL(NEWTOY(brctl, "<1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_BUNZIP2(NEWTOY(bunzip2, "cftkv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BZCAT(NEWTOY(bzcat, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAL(NEWTOY(cal, ">3h", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAT(NEWTOY(cat, "uvte", TOYFLAG_BIN))
+USE_SH(NEWTOY(cd, ">1LP[-LP]", TOYFLAG_NOFORK))
+USE_CHATTR(NEWTOY(chattr, "?p#v#R", TOYFLAG_BIN))
+USE_CHCON(NEWTOY(chcon, "<2hvR", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHGRP(NEWTOY(chgrp, "<2h(no-dereference)PLHRfv[-HLP]", TOYFLAG_BIN))
+USE_CHMOD(NEWTOY(chmod, "<2?vfR[-vf]", TOYFLAG_BIN))
+USE_CHOWN(OLDTOY(chown, chgrp, TOYFLAG_BIN))
+USE_CHROOT(NEWTOY(chroot, "^<1", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_ARGFAIL(125)))
+USE_CHRT(NEWTOY(chrt, "^mp#<0iRbrfo[!ibrfo]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHSH(NEWTOY(chsh, ">1R:s:a", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CHVT(NEWTOY(chvt, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CKSUM(NEWTOY(cksum, "HIPLN", TOYFLAG_BIN))
+USE_CLEAR(NEWTOY(clear, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CMP(NEWTOY(cmp, "<1>4ls(silent)(quiet)n#<1[!ls]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_COMM(NEWTOY(comm, "<2>2321", TOYFLAG_USR|TOYFLAG_BIN))
+USE_COUNT(NEWTOY(count, "<0>0l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CP(NEWTOY(cp, "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]", TOYFLAG_BIN))
+USE_CPIO(NEWTOY(cpio, "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]", TOYFLAG_BIN))
+USE_CRC32(NEWTOY(crc32, 0, TOYFLAG_BIN))
+USE_CROND(NEWTOY(crond, "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_CRONTAB(NEWTOY(crontab, "c:u:elr[!elr]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CSPLIT(NEWTOY(csplit, "<2skf:n#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CUT(NEWTOY(cut, "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DATE(NEWTOY(date, ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]", TOYFLAG_BIN))
+USE_DD(NEWTOY(dd, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEALLOCVT(NEWTOY(deallocvt, ">1", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_SH(NEWTOY(declare, "pAailunxr", TOYFLAG_NOFORK))
+USE_GROUPDEL(OLDTOY(delgroup, groupdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERDEL(OLDTOY(deluser, userdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_DEMO_MANY_OPTIONS(NEWTOY(demo_many_options, "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba", TOYFLAG_BIN))
+USE_DEMO_NUMBER(NEWTOY(demo_number, "D#=3<3M#<0hcdbs", TOYFLAG_BIN))
+USE_DEMO_SCANKEY(NEWTOY(demo_scankey, 0, TOYFLAG_BIN))
+USE_DEMO_UTF8TOWC(NEWTOY(demo_utf8towc, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEVMEM(NEWTOY(devmem, "<1>3", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_DF(NEWTOY(df, "HPkhit*a[-HPh]", TOYFLAG_BIN))
+USE_DHCP(NEWTOY(dhcp, "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCP6(NEWTOY(dhcp6, "r:A#<0T#<0t#<0s:p:i:SRvqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCPD(NEWTOY(dhcpd, ">1P#<0>65535fi:S46[!46]", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DIFF(NEWTOY(diff, "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_DIRNAME(NEWTOY(dirname, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DMESG(NEWTOY(dmesg, "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]", TOYFLAG_BIN))
+USE_DNSDOMAINNAME(NEWTOY(dnsdomainname, ">0", TOYFLAG_BIN))
+USE_DOS2UNIX(NEWTOY(dos2unix, 0, TOYFLAG_BIN))
+USE_DU(NEWTOY(du, "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DUMPLEASES(NEWTOY(dumpleases, ">0arf:[!ar]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ECHO(NEWTOY(echo, "^?Een[-eE]", TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_LINEBUF))
+USE_EGREP(OLDTOY(egrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_EJECT(NEWTOY(eject, ">1stT[!tT]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ENV(NEWTOY(env, "^e:i0u*", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_SH(NEWTOY(eval, 0, TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exec, "^cla:", TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exit, 0, TOYFLAG_NOFORK))
+USE_EXPAND(NEWTOY(expand, "t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(export, "np", TOYFLAG_NOFORK))
+USE_EXPR(NEWTOY(expr, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_FACTOR(NEWTOY(factor, "?hx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALLOCATE(NEWTOY(fallocate, ">1l#|o#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALSE(NEWTOY(false, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_FDISK(NEWTOY(fdisk, "C#<0H#<0S#<0b#<512ul", TOYFLAG_SBIN))
+USE_FGREP(OLDTOY(fgrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_FILE(NEWTOY(file, "<1b(brief)hLs[!hL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FIND(NEWTOY(find, "?^HL[-HL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FLOCK(NEWTOY(flock, "<1>1nsux[-sux]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FMT(NEWTOY(fmt, "w#<0=75", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FOLD(NEWTOY(fold, "bsw#<1=80", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREE(NEWTOY(free, "hgmkb[!hgmkb]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREERAMDISK(NEWTOY(freeramdisk, "<1>1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_FSCK(NEWTOY(fsck, "?t:ANPRTVsC#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FSFREEZE(NEWTOY(fsfreeze, "<1>1f|u|[!fu]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_FSTYPE(NEWTOY(fstype, "<1", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_FSYNC(NEWTOY(fsync, "<1d", TOYFLAG_BIN))
+USE_FTPGET(NEWTOY(ftpget, "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FTPPUT(OLDTOY(ftpput, ftpget, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETCONF(NEWTOY(getconf, ">2al", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETENFORCE(NEWTOY(getenforce, ">0", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_GETFATTR(NEWTOY(getfattr, "(only-values)dhn:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETOPT(NEWTOY(getopt, "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETTY(NEWTOY(getty, "<2t#<0H:I:l:f:iwnmLh", TOYFLAG_SBIN))
+USE_GITCHECKOUT(NEWTOY(gitcheckout, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITCLONE(NEWTOY(gitclone, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITFETCH(NEWTOY(gitfetch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITINIT(NEWTOY(gitinit, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITREMOTE(NEWTOY(gitremote, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIODETECT(NEWTOY(gpiodetect, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOFIND(NEWTOY(gpiofind, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOGET(NEWTOY(gpioget, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOINFO(NEWTOY(gpioinfo, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOSET(NEWTOY(gpioset, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GREP(NEWTOY(grep, "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]", TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_GROUPADD(NEWTOY(groupadd, "<1>2R:g#<0>2147483647S", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPDEL(NEWTOY(groupdel, "<1>2?", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPS(NEWTOY(groups, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GUNZIP(NEWTOY(gunzip, "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GZIP(NEWTOY(gzip,    "n(no-name)cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(halt, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_HD(OLDTOY(hd, hexdump, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEAD(NEWTOY(head, "?n(lines)#<0=10c(bytes)#<0qv[-nc]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HELLO(NEWTOY(hello, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HELP(NEWTOY(help, "ahu", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_HEXDUMP(NEWTOY(hexdump, "bcCdn#<0os#<0vx[!bcCdox]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEXEDIT(NEWTOY(hexedit, "<1>1r", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOST(NEWTOY(host, "<1>2avt:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTID(NEWTOY(hostid, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTNAME(NEWTOY(hostname, ">1bdsfF:[!bdsf]", TOYFLAG_BIN))
+USE_HTTPD(NEWTOY(httpd, ">1v", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HWCLOCK(NEWTOY(hwclock, ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]", TOYFLAG_SBIN))
+USE_I2CDETECT(NEWTOY(i2cdetect, ">3aF#<0>63lqry[!qr][!Fl]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CDUMP(NEWTOY(i2cdump, "<2>2fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CGET(NEWTOY(i2cget, "<2>3fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CSET(NEWTOY(i2cset, "<4fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CTRANSFER(NEWTOY(i2ctransfer, "<2vfy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ICONV(NEWTOY(iconv, "cst:f:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ID(NEWTOY(id, ">1"USE_ID_Z("Z")"nGgru[!"USE_ID_Z("Z")"Ggu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IFCONFIG(NEWTOY(ifconfig, "^?aS", TOYFLAG_SBIN))
+USE_INIT(NEWTOY(init, "", TOYFLAG_SBIN))
+USE_INOTIFYD(NEWTOY(inotifyd, "<2", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_INSMOD(NEWTOY(insmod, "<1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_INSTALL(NEWTOY(install, "<1cdDp(preserve-timestamps)svt:m:o:g:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IONICE(NEWTOY(ionice, "^tc#<0>3=2n#<0>7=5p#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IORENICE(NEWTOY(iorenice, "<1>3", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IOTOP(NEWTOY(iotop, ">0AaKO" "Hk*o*p*u*s#<1=7d%<100=3000m#n#<1bq", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_IP(NEWTOY(ip, NULL, TOYFLAG_SBIN))
+USE_IP(OLDTOY(ipaddr, ip, TOYFLAG_SBIN))
+USE_IPCRM(NEWTOY(ipcrm, "m*M*s*S*q*Q*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IPCS(NEWTOY(ipcs, "acptulsqmi#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IP(OLDTOY(iplink, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iproute, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iprule, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iptunnel, ip, TOYFLAG_SBIN))
+USE_SH(NEWTOY(jobs, "lnprs", TOYFLAG_NOFORK))
+USE_KILL(NEWTOY(kill, "?ls: ", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_KILLALL(NEWTOY(killall, "?s:ilqvw", TOYFLAG_USR|TOYFLAG_BIN))
+USE_KILLALL5(NEWTOY(killall5, "?o*ls: [!lo][!ls]", TOYFLAG_SBIN))
+USE_KLOGD(NEWTOY(klogd, "c#<1>8n", TOYFLAG_SBIN))
+USE_LAST(NEWTOY(last, "f:W", TOYFLAG_BIN))
+USE_LINK(NEWTOY(link, "<2>2", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LINUX32(NEWTOY(linux32, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_LN(NEWTOY(ln, "<1rt:Tvnfs", TOYFLAG_BIN))
+USE_LOAD_POLICY(NEWTOY(load_policy, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SH(NEWTOY(local, 0, TOYFLAG_NOFORK))
+USE_LOG(NEWTOY(log, "p:t:", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_LOGGER(NEWTOY(logger, "t:p:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGIN(NEWTOY(login, ">1f:ph:", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_LOGNAME(NEWTOY(logname, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGPATH(NEWTOY(logpath, 0, TOYFLAG_NOHELP|TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOSETUP(NEWTOY(losetup, ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]", TOYFLAG_SBIN))
+USE_LS(NEWTOY(ls, "(sort):(color):;(full-time)(show-control-chars)\377(block-size)#=1024<1\241(group-directories-first)\376ZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-k\377]", TOYFLAG_BIN))
+USE_LSATTR(NEWTOY(lsattr, "ldapvR", TOYFLAG_BIN))
+USE_LSMOD(NEWTOY(lsmod, NULL, TOYFLAG_SBIN))
+USE_LSOF(NEWTOY(lsof, "lp*t", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSPCI(NEWTOY(lspci, "emkn@x@i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSUSB(NEWTOY(lsusb, "i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAKEDEVS(NEWTOY(makedevs, "<1>1d:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAN(NEWTOY(man, "k:M:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MCOOKIE(NEWTOY(mcookie, "v(verbose)V(version)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MD5SUM(NEWTOY(md5sum, "bc(check)s(status)[!bc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MDEV(NEWTOY(mdev, "s", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MEMEATER(NEWTOY(memeater, "<1>1M", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MICROCOM(NEWTOY(microcom, "<1>1s#=115200X", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MIX(NEWTOY(mix, "c:d:l#r#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKDIR(NEWTOY(mkdir, "<1"USE_MKDIR_Z("Z:")"vp(parent)(parents)m:", TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKE2FS(NEWTOY(mke2fs, "<1>2g:Fnqm#N#i#b#", TOYFLAG_SBIN))
+USE_MKFIFO(NEWTOY(mkfifo, "<1"USE_MKFIFO_Z("Z:")"m:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKNOD(NEWTOY(mknod, "<2>4m(mode):"USE_MKNOD_Z("Z:"), TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKPASSWD(NEWTOY(mkpasswd, ">2S:m:P#=0<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKSWAP(NEWTOY(mkswap, "<1>1L:", TOYFLAG_SBIN))
+USE_MKTEMP(NEWTOY(mktemp, ">1(tmpdir);:uqd(directory)p:t", TOYFLAG_BIN))
+USE_MODINFO(NEWTOY(modinfo, "<1b:k:F:0", TOYFLAG_SBIN))
+USE_MODPROBE(NEWTOY(modprobe, "alrqvsDbd*", TOYFLAG_SBIN))
+USE_MORE(NEWTOY(more, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_MOUNT(NEWTOY(mount, "?RO:afnrvwt:o*[-rw]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_MOUNTPOINT(NEWTOY(mountpoint, "<1qdx[-dx]", TOYFLAG_BIN))
+USE_MV(NEWTOY(mv, "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]", TOYFLAG_BIN))
+USE_NBD_CLIENT(OLDTOY(nbd-client, nbd_client, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_SERVER(OLDTOY(nbd-server, nbd_server, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_CLIENT(NEWTOY(nbd_client, "<3>3b#<1>4294967295=4096ns", 0))
+USE_NBD_SERVER(NEWTOY(nbd_server, "<1>1r", 0))
+USE_NETCAT(OLDTOY(nc, netcat, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NETCAT(NEWTOY(netcat, "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]", TOYFLAG_BIN))
+USE_NETSTAT(NEWTOY(netstat, "pWrxwutneal", TOYFLAG_BIN))
+USE_NICE(NEWTOY(nice, "^<1n#", TOYFLAG_BIN))
+USE_NL(NEWTOY(nl, "v#=1l#w#<0=6b:n:s:E", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NOHUP(NEWTOY(nohup, "<1^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_NPROC(NEWTOY(nproc, "(all)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NSENTER(NEWTOY(nsenter, "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_OD(NEWTOY(od, "j#vw#<1=16N#xsodcbA:t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ONEIT(NEWTOY(oneit, "^<1nc:p3[!pn]", TOYFLAG_SBIN))
+USE_OPENVT(NEWTOY(openvt, "^<1c#<1>63sw", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_PARTPROBE(NEWTOY(partprobe, "<1", TOYFLAG_SBIN))
+USE_PASSWD(NEWTOY(passwd, ">1a:dlu", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_PASTE(NEWTOY(paste, "d:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PATCH(NEWTOY(patch, ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PGREP(NEWTOY(pgrep, "?cld:u*U*t*s*P*g*G*fnovxL:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PIDOF(NEWTOY(pidof, "so:x", TOYFLAG_BIN))
+USE_PING(NEWTOY(ping, "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PING(OLDTOY(ping6, ping, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PIVOT_ROOT(NEWTOY(pivot_root, "<2>2", TOYFLAG_SBIN))
+USE_PKILL(NEWTOY(pkill,    "?Vu*U*t*s*P*g*G*fnovxl:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PMAP(NEWTOY(pmap, "<1pqx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(poweroff, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_PRINTENV(NEWTOY(printenv, "(null)0", TOYFLAG_BIN))
+USE_PRINTF(NEWTOY(printf, "<1?^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_ULIMIT(OLDTOY(prlimit, ulimit, TOYFLAG_USR|TOYFLAG_BIN))
+USE_PS(NEWTOY(ps, "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]", TOYFLAG_BIN))
+USE_PWD(NEWTOY(pwd, ">0LP[-LP]", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_PWDX(NEWTOY(pwdx, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PWGEN(NEWTOY(pwgen, ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READAHEAD(NEWTOY(readahead, NULL, TOYFLAG_BIN))
+USE_READELF(NEWTOY(readelf, "<1(dyn-syms)Aadehlnp:SsWx:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READLINK(NEWTOY(readlink, "<1vnf(canonicalize)emqz[-mef][-qv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REALPATH(NEWTOY(realpath, "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(NEWTOY(reboot, "d:fn", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_RENICE(NEWTOY(renice, "<1gpun#|", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESET(NEWTOY(reset, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESTORECON(NEWTOY(restorecon, "<1DFnRrv", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_REV(NEWTOY(rev, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RFKILL(NEWTOY(rfkill, "<1>2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_RM(NEWTOY(rm, "f(force)iRrv[-fi]", TOYFLAG_BIN))
+USE_RMDIR(NEWTOY(rmdir, "<1(ignore-fail-on-non-empty)p(parents)", TOYFLAG_BIN))
+USE_RMMOD(NEWTOY(rmmod, "<1wf", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_ROUTE(NEWTOY(route, "?neA:", TOYFLAG_SBIN))
+USE_RTCWAKE(NEWTOY(rtcwake, "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RUNCON(NEWTOY(runcon, "^<2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SED(NEWTOY(sed, "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]", TOYFLAG_BIN|TOYFLAG_NOHELP))
+USE_SENDEVENT(NEWTOY(sendevent, "<4>4", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SEQ(NEWTOY(seq, "<1>3?f:s:w[!fw]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(set, 0, TOYFLAG_NOFORK))
+USE_SETENFORCE(NEWTOY(setenforce, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SETFATTR(NEWTOY(setfattr, "hn:|v:x:|[!xv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SETSID(NEWTOY(setsid, "^<1wc@d[!dc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(sh, "0^(noediting)(noprofile)(norc)sc:i", TOYFLAG_BIN))
+USE_SHA1SUM(OLDTOY(sha1sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA224SUM(OLDTOY(sha224sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA256SUM(OLDTOY(sha256sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA384SUM(OLDTOY(sha384sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA3SUM(NEWTOY(sha3sum, "bSa#<128>512=224", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA512SUM(OLDTOY(sha512sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(shift, ">1", TOYFLAG_NOFORK))
+USE_SHRED(NEWTOY(shred, "<1zxus#<1n#<1o#<0f", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHUF(NEWTOY(shuf, "zen#<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON(NEWTOY(skeleton, "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON_ALIAS(NEWTOY(skeleton_alias, "b#dq", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SLEEP(NEWTOY(sleep, "<1", TOYFLAG_BIN))
+USE_SNTP(NEWTOY(sntp, ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SORT(NEWTOY(sort, USE_SORT_FLOAT("g")"S:T:m" "o:k*t:" "xVbMCcszdfirun", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_SH(NEWTOY(source, "<1", TOYFLAG_NOFORK))
+USE_SPLIT(NEWTOY(split, ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STAT(NEWTOY(stat, "<1c:(format)fLt", TOYFLAG_BIN))
+USE_STRACE(NEWTOY(strace, "^p#s#v", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_STRINGS(NEWTOY(strings, "t:an#=4<1fo", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STTY(NEWTOY(stty, "?aF:g[!ag]", TOYFLAG_BIN))
+USE_SU(NEWTOY(su, "^lmpu:g:c:s:[!lmp]", TOYFLAG_BIN|TOYFLAG_ROOTONLY))
+USE_SULOGIN(NEWTOY(sulogin, "t#<0=0", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPOFF(NEWTOY(swapoff, "<1>1av", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPON(NEWTOY(swapon, "<1>1p#<0>32767d", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWITCH_ROOT(NEWTOY(switch_root, "<2c:h", TOYFLAG_SBIN))
+USE_SYNC(NEWTOY(sync, NULL, TOYFLAG_BIN))
+USE_SYSCTL(NEWTOY(sysctl, "^neNqwpaA[!ap][!aq][!aw][+aA]", TOYFLAG_SBIN))
+USE_SYSLOGD(NEWTOY(syslogd,">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD", TOYFLAG_SBIN|TOYFLAG_STAYROOT))
+USE_TAC(NEWTOY(tac, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_TAIL(NEWTOY(tail, "?fFs:c(bytes)-n(lines)-[-cn][-fF]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TAR(NEWTOY(tar, "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TASKSET(NEWTOY(taskset, "<1^pa", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TCPSVD(NEWTOY(tcpsvd, "^<3c#=30<1b#=20<0C:u:l:hEv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEE(NEWTOY(tee, "ia", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TELNET(NEWTOY(telnet, "<1>2", TOYFLAG_BIN))
+USE_TELNETD(NEWTOY(telnetd, "w#<0b:p#<0>65535=23f:l:FSKi[!wi]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEST(NEWTOY(test, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TFTP(NEWTOY(tftp, "<1b#<8>65464r:l:g|p|[!gp]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TFTPD(NEWTOY(tftpd, "rcu:l", TOYFLAG_BIN))
+USE_TIME(NEWTOY(time, "<1^pv[-pv]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_TIMEOUT(NEWTOY(timeout, "<2^(foreground)(preserve-status)vk:s(signal):i", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_TOP(NEWTOY(top, ">0O*h" "Hk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TOUCH(NEWTOY(touch, "<1acd:fmr:t:h[!dtr]", TOYFLAG_BIN))
+USE_SH(OLDTOY(toysh, sh, TOYFLAG_BIN))
+USE_TR(NEWTOY(tr, "^<1>2Ccstd[+cC]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(NEWTOY(traceroute, "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(OLDTOY(traceroute6,traceroute, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRUE(NEWTOY(true, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TRUNCATE(NEWTOY(truncate, "<1s:|c", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TS(NEWTOY(ts, "ims", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TSORT(NEWTOY(tsort, ">1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TTY(NEWTOY(tty, "s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TUNCTL(NEWTOY(tunctl, "<1>1t|d|u:T[!td]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UCLAMPSET(NEWTOY(uclampset, "p#am#<-1>1024M#<-1>1024R", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_TCPSVD(OLDTOY(udpsvd, tcpsvd, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ULIMIT(NEWTOY(ulimit, ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UMOUNT(NEWTOY(umount, "cndDflrat*v[!na]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UNAME(NEWTOY(uname, "paomvrns", TOYFLAG_BIN))
+USE_UNICODE(NEWTOY(unicode, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIQ(NEWTOY(uniq, "f#s#w#zicdu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIX2DOS(NEWTOY(unix2dos, 0, TOYFLAG_BIN))
+USE_UNLINK(NEWTOY(unlink, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(unset, "fvn[!fv]", TOYFLAG_NOFORK))
+USE_UNSHARE(NEWTOY(unshare, "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UPTIME(NEWTOY(uptime, ">0ps", TOYFLAG_USR|TOYFLAG_BIN))
+USE_USERADD(NEWTOY(useradd, "<1>2u#<0G:s:g:h:SDH", TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_USERDEL(NEWTOY(userdel, "<1>1r", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USLEEP(NEWTOY(usleep, "<1>1", TOYFLAG_BIN))
+USE_UUDECODE(NEWTOY(uudecode, ">1o:", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_UUENCODE(NEWTOY(uuencode, "<1>2m", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UUIDGEN(NEWTOY(uuidgen, ">0r(random)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VCONFIG(NEWTOY(vconfig, "<2>4", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_VI(NEWTOY(vi, ">1s:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VMSTAT(NEWTOY(vmstat, ">2n", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_W(NEWTOY(w, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(wait, "n", TOYFLAG_NOFORK))
+USE_WATCH(NEWTOY(watch, "^<1n%<100=2000tebx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WATCHDOG(NEWTOY(watchdog, "<1>1Ft#=4<1T#=60<1", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_WC(NEWTOY(wc, "Lcmwl", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WGET(NEWTOY(wget, "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHICH(NEWTOY(which, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHO(NEWTOY(who, "a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHOAMI(OLDTOY(whoami, logname, TOYFLAG_USR|TOYFLAG_BIN))
+USE_XARGS(NEWTOY(xargs, "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XXD(NEWTOY(xxd, ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XZCAT(NEWTOY(xzcat, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_YES(NEWTOY(yes, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ZCAT(NEWTOY(zcat,     "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
diff --git a/android/linux/generated/tags.h b/android/linux/generated/tags.h
new file mode 100644
index 0000000..463e8d2
--- /dev/null
+++ b/android/linux/generated/tags.h
@@ -0,0 +1,140 @@
+#define CP_mode                                     0
+#define _CP_mode                                    (1<<0)
+#define CP_ownership                                1
+#define _CP_ownership                               (1<<1)
+#define CP_timestamps                               2
+#define _CP_timestamps                              (1<<2)
+#define CP_context                                  3
+#define _CP_context                                 (1<<3)
+#define CP_xattr                                    4
+#define _CP_xattr                                   (1<<4)
+#define DD_conv_fsync                                    0
+#define _DD_conv_fsync                                   (1<<0)
+#define DD_conv_noerror                                  1
+#define _DD_conv_noerror                                 (1<<1)
+#define DD_conv_notrunc                                  2
+#define _DD_conv_notrunc                                 (1<<2)
+#define DD_conv_sync                                     3
+#define _DD_conv_sync                                    (1<<3)
+#define DD_iflag_count_bytes                              0
+#define _DD_iflag_count_bytes                             (1<<0)
+#define DD_iflag_skip_bytes                               1
+#define _DD_iflag_skip_bytes                              (1<<1)
+#define DD_oflag_seek_bytes                               0
+#define _DD_oflag_seek_bytes                              (1<<0)
+#define PS_PID                                      0
+#define _PS_PID                                     (1<<0)
+#define PS_PPID                                     1
+#define _PS_PPID                                    (1<<1)
+#define PS_PRI                                      2
+#define _PS_PRI                                     (1<<2)
+#define PS_NI                                       3
+#define _PS_NI                                      (1<<3)
+#define PS_ADDR                                     4
+#define _PS_ADDR                                    (1<<4)
+#define PS_SZ                                       5
+#define _PS_SZ                                      (1<<5)
+#define PS_RSS                                      6
+#define _PS_RSS                                     (1<<6)
+#define PS_PGID                                     7
+#define _PS_PGID                                    (1<<7)
+#define PS_VSZ                                      8
+#define _PS_VSZ                                     (1<<8)
+#define PS_MAJFL                                    9
+#define _PS_MAJFL                                   (1<<9)
+#define PS_MINFL                                    10
+#define _PS_MINFL                                   (1<<10)
+#define PS_PR                                       11
+#define _PS_PR                                      (1<<11)
+#define PS_PSR                                      12
+#define _PS_PSR                                     (1<<12)
+#define PS_RTPRIO                                   13
+#define _PS_RTPRIO                                  (1<<13)
+#define PS_SCH                                      14
+#define _PS_SCH                                     (1<<14)
+#define PS_CPU                                      15
+#define _PS_CPU                                     (1<<15)
+#define PS_TID                                      16
+#define _PS_TID                                     (1<<16)
+#define PS_TCNT                                     17
+#define _PS_TCNT                                    (1<<17)
+#define PS_BIT                                      18
+#define _PS_BIT                                     (1<<18)
+#define PS_TTY                                      19
+#define _PS_TTY                                     (1<<19)
+#define PS_WCHAN                                    20
+#define _PS_WCHAN                                   (1<<20)
+#define PS_LABEL                                    21
+#define _PS_LABEL                                   (1<<21)
+#define PS_COMM                                     22
+#define _PS_COMM                                    (1<<22)
+#define PS_NAME                                     23
+#define _PS_NAME                                    (1<<23)
+#define PS_COMMAND                                  24
+#define _PS_COMMAND                                 (1<<24)
+#define PS_CMDLINE                                  25
+#define _PS_CMDLINE                                 (1<<25)
+#define PS_ARGS                                     26
+#define _PS_ARGS                                    (1<<26)
+#define PS_CMD                                      27
+#define _PS_CMD                                     (1<<27)
+#define PS_UID                                      28
+#define _PS_UID                                     (1<<28)
+#define PS_USER                                     29
+#define _PS_USER                                    (1<<29)
+#define PS_RUID                                     30
+#define _PS_RUID                                    (1<<30)
+#define PS_RUSER                                    31
+#define _PS_RUSER                                   (1<<31)
+#define PS_GID                                      32
+#define _PS_GID                                     (1LL<<32)
+#define PS_GROUP                                    33
+#define _PS_GROUP                                   (1LL<<33)
+#define PS_RGID                                     34
+#define _PS_RGID                                    (1LL<<34)
+#define PS_RGROUP                                   35
+#define _PS_RGROUP                                  (1LL<<35)
+#define PS_TIME                                     36
+#define _PS_TIME                                    (1LL<<36)
+#define PS_ELAPSED                                  37
+#define _PS_ELAPSED                                 (1LL<<37)
+#define PS_TIME_                                    38
+#define _PS_TIME_                                   (1LL<<38)
+#define PS_C                                        39
+#define _PS_C                                       (1LL<<39)
+#define PS__VSZ                                     40
+#define _PS__VSZ                                    (1LL<<40)
+#define PS__MEM                                     41
+#define _PS__MEM                                    (1LL<<41)
+#define PS__CPU                                     42
+#define _PS__CPU                                    (1LL<<42)
+#define PS_VIRT                                     43
+#define _PS_VIRT                                    (1LL<<43)
+#define PS_RES                                      44
+#define _PS_RES                                     (1LL<<44)
+#define PS_SHR                                      45
+#define _PS_SHR                                     (1LL<<45)
+#define PS_READ                                     46
+#define _PS_READ                                    (1LL<<46)
+#define PS_WRITE                                    47
+#define _PS_WRITE                                   (1LL<<47)
+#define PS_IO                                       48
+#define _PS_IO                                      (1LL<<48)
+#define PS_DREAD                                    49
+#define _PS_DREAD                                   (1LL<<49)
+#define PS_DWRITE                                   50
+#define _PS_DWRITE                                  (1LL<<50)
+#define PS_SWAP                                     51
+#define _PS_SWAP                                    (1LL<<51)
+#define PS_DIO                                      52
+#define _PS_DIO                                     (1LL<<52)
+#define PS_STIME                                    53
+#define _PS_STIME                                   (1LL<<53)
+#define PS_F                                        54
+#define _PS_F                                       (1LL<<54)
+#define PS_S                                        55
+#define _PS_S                                       (1LL<<55)
+#define PS_STAT                                     56
+#define _PS_STAT                                    (1LL<<56)
+#define PS_PCY                                      57
+#define _PS_PCY                                     (1LL<<57)
diff --git a/android/mac/generated/config.h b/android/mac/generated/config.h
new file mode 100644
index 0000000..c395991
--- /dev/null
+++ b/android/mac/generated/config.h
@@ -0,0 +1,680 @@
+#define CFG_TOYBOX 1
+#define USE_TOYBOX(...) __VA_ARGS__
+#define CFG_TOYBOX_DEBUG 0
+#define USE_TOYBOX_DEBUG(...)
+#define CFG_TOYBOX_FLOAT 1
+#define USE_TOYBOX_FLOAT(...) __VA_ARGS__
+#define CFG_TOYBOX_FORK 1
+#define USE_TOYBOX_FORK(...) __VA_ARGS__
+#define CFG_TOYBOX_FREE 0
+#define USE_TOYBOX_FREE(...)
+#define CFG_TOYBOX_HELP_DASHDASH 1
+#define USE_TOYBOX_HELP_DASHDASH(...) __VA_ARGS__
+#define CFG_TOYBOX_HELP 1
+#define USE_TOYBOX_HELP(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBCRYPTO 1
+#define USE_TOYBOX_LIBCRYPTO(...) __VA_ARGS__
+#define CFG_TOYBOX_LIBZ 1
+#define USE_TOYBOX_LIBZ(...) __VA_ARGS__
+#define CFG_TOYBOX_LSM_NONE 1
+#define USE_TOYBOX_LSM_NONE(...) __VA_ARGS__
+#define CFG_TOYBOX_NORECURSE 1
+#define USE_TOYBOX_NORECURSE(...) __VA_ARGS__
+#define CFG_TOYBOX_ON_ANDROID 0
+#define USE_TOYBOX_ON_ANDROID(...)
+#define CFG_TOYBOX_SELINUX 0
+#define USE_TOYBOX_SELINUX(...)
+#define CFG_TOYBOX_SMACK 0
+#define USE_TOYBOX_SMACK(...)
+#define CFG_TOYBOX_SUID 0
+#define USE_TOYBOX_SUID(...)
+#define CFG_TOYBOX_UID_SYS 100
+#define CFG_TOYBOX_UID_USR 500
+#define CFG_TOYBOX_ZHELP 0
+#define USE_TOYBOX_ZHELP(...)
+#define CFG_ACPI 0
+#define USE_ACPI(...)
+#define CFG_ARCH 0
+#define USE_ARCH(...)
+#define CFG_ARPING 0
+#define USE_ARPING(...)
+#define CFG_ARP 0
+#define USE_ARP(...)
+#define CFG_ASCII 0
+#define USE_ASCII(...)
+#define CFG_BASE32 0
+#define USE_BASE32(...)
+#define CFG_BASE64 0
+#define USE_BASE64(...)
+#define CFG_BASENAME 1
+#define USE_BASENAME(...) __VA_ARGS__
+#define CFG_BC 0
+#define USE_BC(...)
+#define CFG_BLKDISCARD 0
+#define USE_BLKDISCARD(...)
+#define CFG_BLKID 0
+#define USE_BLKID(...)
+#define CFG_BLOCKDEV 0
+#define USE_BLOCKDEV(...)
+#define CFG_BOOTCHARTD 0
+#define USE_BOOTCHARTD(...)
+#define CFG_BRCTL 0
+#define USE_BRCTL(...)
+#define CFG_BUNZIP2 0
+#define USE_BUNZIP2(...)
+#define CFG_BZCAT 0
+#define USE_BZCAT(...)
+#define CFG_CAL 0
+#define USE_CAL(...)
+#define CFG_CAT 1
+#define USE_CAT(...) __VA_ARGS__
+#define CFG_CD 0
+#define USE_CD(...)
+#define CFG_CHATTR 0
+#define USE_CHATTR(...)
+#define CFG_CHCON 0
+#define USE_CHCON(...)
+#define CFG_CHGRP 0
+#define USE_CHGRP(...)
+#define CFG_CHMOD 1
+#define USE_CHMOD(...) __VA_ARGS__
+#define CFG_CHOWN 0
+#define USE_CHOWN(...)
+#define CFG_CHROOT 0
+#define USE_CHROOT(...)
+#define CFG_CHRT 0
+#define USE_CHRT(...)
+#define CFG_CHSH 0
+#define USE_CHSH(...)
+#define CFG_CHVT 0
+#define USE_CHVT(...)
+#define CFG_CKSUM 0
+#define USE_CKSUM(...)
+#define CFG_CLEAR 0
+#define USE_CLEAR(...)
+#define CFG_CMP 1
+#define USE_CMP(...) __VA_ARGS__
+#define CFG_COMM 1
+#define USE_COMM(...) __VA_ARGS__
+#define CFG_COUNT 0
+#define USE_COUNT(...)
+#define CFG_CPIO 1
+#define USE_CPIO(...) __VA_ARGS__
+#define CFG_CP 1
+#define USE_CP(...) __VA_ARGS__
+#define CFG_CRC32 0
+#define USE_CRC32(...)
+#define CFG_CROND 0
+#define USE_CROND(...)
+#define CFG_CRONTAB 0
+#define USE_CRONTAB(...)
+#define CFG_CSPLIT 0
+#define USE_CSPLIT(...)
+#define CFG_CUT 1
+#define USE_CUT(...) __VA_ARGS__
+#define CFG_DATE 1
+#define USE_DATE(...) __VA_ARGS__
+#define CFG_DD 1
+#define USE_DD(...) __VA_ARGS__
+#define CFG_DEALLOCVT 0
+#define USE_DEALLOCVT(...)
+#define CFG_DEBUG_DHCP 0
+#define USE_DEBUG_DHCP(...)
+#define CFG_DEMO_MANY_OPTIONS 0
+#define USE_DEMO_MANY_OPTIONS(...)
+#define CFG_DEMO_NUMBER 0
+#define USE_DEMO_NUMBER(...)
+#define CFG_DEMO_SCANKEY 0
+#define USE_DEMO_SCANKEY(...)
+#define CFG_DEMO_UTF8TOWC 0
+#define USE_DEMO_UTF8TOWC(...)
+#define CFG_DEVMEM 0
+#define USE_DEVMEM(...)
+#define CFG_DF 0
+#define USE_DF(...)
+#define CFG_DHCP6 0
+#define USE_DHCP6(...)
+#define CFG_DHCPD 0
+#define USE_DHCPD(...)
+#define CFG_DHCP 0
+#define USE_DHCP(...)
+#define CFG_DIFF 1
+#define USE_DIFF(...) __VA_ARGS__
+#define CFG_DIRNAME 1
+#define USE_DIRNAME(...) __VA_ARGS__
+#define CFG_DMESG 0
+#define USE_DMESG(...)
+#define CFG_DNSDOMAINNAME 0
+#define USE_DNSDOMAINNAME(...)
+#define CFG_DOS2UNIX 1
+#define USE_DOS2UNIX(...) __VA_ARGS__
+#define CFG_DUMPLEASES 0
+#define USE_DUMPLEASES(...)
+#define CFG_DU 1
+#define USE_DU(...) __VA_ARGS__
+#define CFG_ECHO 1
+#define USE_ECHO(...) __VA_ARGS__
+#define CFG_EGREP 1
+#define USE_EGREP(...) __VA_ARGS__
+#define CFG_EJECT 0
+#define USE_EJECT(...)
+#define CFG_ENV 1
+#define USE_ENV(...) __VA_ARGS__
+#define CFG_EXIT 0
+#define USE_EXIT(...)
+#define CFG_EXPAND 0
+#define USE_EXPAND(...)
+#define CFG_EXPR 1
+#define USE_EXPR(...) __VA_ARGS__
+#define CFG_FACTOR 0
+#define USE_FACTOR(...)
+#define CFG_FALLOCATE 0
+#define USE_FALLOCATE(...)
+#define CFG_FALSE 0
+#define USE_FALSE(...)
+#define CFG_FDISK 0
+#define USE_FDISK(...)
+#define CFG_FGREP 1
+#define USE_FGREP(...) __VA_ARGS__
+#define CFG_FILE 1
+#define USE_FILE(...) __VA_ARGS__
+#define CFG_FIND 1
+#define USE_FIND(...) __VA_ARGS__
+#define CFG_FLOCK 0
+#define USE_FLOCK(...)
+#define CFG_FMT 0
+#define USE_FMT(...)
+#define CFG_FOLD 0
+#define USE_FOLD(...)
+#define CFG_FREE 0
+#define USE_FREE(...)
+#define CFG_FREERAMDISK 0
+#define USE_FREERAMDISK(...)
+#define CFG_FSCK 0
+#define USE_FSCK(...)
+#define CFG_FSFREEZE 0
+#define USE_FSFREEZE(...)
+#define CFG_FSTYPE 0
+#define USE_FSTYPE(...)
+#define CFG_FSYNC 0
+#define USE_FSYNC(...)
+#define CFG_FTPGET 0
+#define USE_FTPGET(...)
+#define CFG_FTPPUT 0
+#define USE_FTPPUT(...)
+#define CFG_GETCONF 1
+#define USE_GETCONF(...) __VA_ARGS__
+#define CFG_GETENFORCE 0
+#define USE_GETENFORCE(...)
+#define CFG_GETFATTR 0
+#define USE_GETFATTR(...)
+#define CFG_GETOPT 1
+#define USE_GETOPT(...) __VA_ARGS__
+#define CFG_GETTY 0
+#define USE_GETTY(...)
+#define CFG_GITCHECKOUT 0
+#define USE_GITCHECKOUT(...)
+#define CFG_GITCLONE 0
+#define USE_GITCLONE(...)
+#define CFG_GITCOMPAT 0
+#define USE_GITCOMPAT(...)
+#define CFG_GITFETCH 0
+#define USE_GITFETCH(...)
+#define CFG_GITINIT 0
+#define USE_GITINIT(...)
+#define CFG_GITREMOTE 0
+#define USE_GITREMOTE(...)
+#define CFG_GPIODETECT 0
+#define USE_GPIODETECT(...)
+#define CFG_GPIOFIND 0
+#define USE_GPIOFIND(...)
+#define CFG_GPIOGET 0
+#define USE_GPIOGET(...)
+#define CFG_GPIOINFO 0
+#define USE_GPIOINFO(...)
+#define CFG_GPIOSET 0
+#define USE_GPIOSET(...)
+#define CFG_GREP 1
+#define USE_GREP(...) __VA_ARGS__
+#define CFG_GROUPADD 0
+#define USE_GROUPADD(...)
+#define CFG_GROUPDEL 0
+#define USE_GROUPDEL(...)
+#define CFG_GROUPS 0
+#define USE_GROUPS(...)
+#define CFG_GUNZIP 0
+#define USE_GUNZIP(...)
+#define CFG_GZIP 1
+#define USE_GZIP(...) __VA_ARGS__
+#define CFG_HEAD 1
+#define USE_HEAD(...) __VA_ARGS__
+#define CFG_HELLO 0
+#define USE_HELLO(...)
+#define CFG_HELP 0
+#define USE_HELP(...)
+#define CFG_HEXDUMP 0
+#define USE_HEXDUMP(...)
+#define CFG_HEXEDIT 0
+#define USE_HEXEDIT(...)
+#define CFG_HD 0
+#define USE_HD(...)
+#define CFG_HOSTID 0
+#define USE_HOSTID(...)
+#define CFG_HOST 0
+#define USE_HOST(...)
+#define CFG_HOSTNAME 1
+#define USE_HOSTNAME(...) __VA_ARGS__
+#define CFG_HTTPD 0
+#define USE_HTTPD(...)
+#define CFG_HWCLOCK 0
+#define USE_HWCLOCK(...)
+#define CFG_I2CDETECT 0
+#define USE_I2CDETECT(...)
+#define CFG_I2CDUMP 0
+#define USE_I2CDUMP(...)
+#define CFG_I2CGET 0
+#define USE_I2CGET(...)
+#define CFG_I2CSET 0
+#define USE_I2CSET(...)
+#define CFG_I2CTRANSFER 0
+#define USE_I2CTRANSFER(...)
+#define CFG_ICONV 0
+#define USE_ICONV(...)
+#define CFG_ID 1
+#define USE_ID(...) __VA_ARGS__
+#define CFG_ID_Z 0
+#define USE_ID_Z(...)
+#define CFG_IFCONFIG 0
+#define USE_IFCONFIG(...)
+#define CFG_INIT 0
+#define USE_INIT(...)
+#define CFG_INOTIFYD 0
+#define USE_INOTIFYD(...)
+#define CFG_INSMOD 0
+#define USE_INSMOD(...)
+#define CFG_INSTALL 1
+#define USE_INSTALL(...) __VA_ARGS__
+#define CFG_IONICE 0
+#define USE_IONICE(...)
+#define CFG_IORENICE 0
+#define USE_IORENICE(...)
+#define CFG_IOTOP 0
+#define USE_IOTOP(...)
+#define CFG_IPCRM 0
+#define USE_IPCRM(...)
+#define CFG_IPCS 0
+#define USE_IPCS(...)
+#define CFG_IP 0
+#define USE_IP(...)
+#define CFG_KILLALL5 0
+#define USE_KILLALL5(...)
+#define CFG_KILLALL 0
+#define USE_KILLALL(...)
+#define CFG_KILL 0
+#define USE_KILL(...)
+#define CFG_KLOGD 0
+#define USE_KLOGD(...)
+#define CFG_KLOGD_SOURCE_RING_BUFFER 0
+#define USE_KLOGD_SOURCE_RING_BUFFER(...)
+#define CFG_LAST 0
+#define USE_LAST(...)
+#define CFG_LINK 0
+#define USE_LINK(...)
+#define CFG_LINUX32 0
+#define USE_LINUX32(...)
+#define CFG_LN 1
+#define USE_LN(...) __VA_ARGS__
+#define CFG_LOAD_POLICY 0
+#define USE_LOAD_POLICY(...)
+#define CFG_LOGGER 0
+#define USE_LOGGER(...)
+#define CFG_LOGIN 0
+#define USE_LOGIN(...)
+#define CFG_LOG 0
+#define USE_LOG(...)
+#define CFG_LOGNAME 0
+#define USE_LOGNAME(...)
+#define CFG_LOGPATH 0
+#define USE_LOGPATH(...)
+#define CFG_LOSETUP 0
+#define USE_LOSETUP(...)
+#define CFG_LSATTR 0
+#define USE_LSATTR(...)
+#define CFG_LSMOD 0
+#define USE_LSMOD(...)
+#define CFG_LSOF 0
+#define USE_LSOF(...)
+#define CFG_LSPCI 0
+#define USE_LSPCI(...)
+#define CFG_LSUSB 0
+#define USE_LSUSB(...)
+#define CFG_LS 1
+#define USE_LS(...) __VA_ARGS__
+#define CFG_MAKEDEVS 0
+#define USE_MAKEDEVS(...)
+#define CFG_MAN 0
+#define USE_MAN(...)
+#define CFG_MCOOKIE 0
+#define USE_MCOOKIE(...)
+#define CFG_MD5SUM 1
+#define USE_MD5SUM(...) __VA_ARGS__
+#define CFG_MDEV_CONF 0
+#define USE_MDEV_CONF(...)
+#define CFG_MDEV 0
+#define USE_MDEV(...)
+#define CFG_MEMEATER 0
+#define USE_MEMEATER(...)
+#define CFG_MICROCOM 1
+#define USE_MICROCOM(...) __VA_ARGS__
+#define CFG_MIX 0
+#define USE_MIX(...)
+#define CFG_MKDIR 1
+#define USE_MKDIR(...) __VA_ARGS__
+#define CFG_MKDIR_Z 0
+#define USE_MKDIR_Z(...)
+#define CFG_MKE2FS_EXTENDED 0
+#define USE_MKE2FS_EXTENDED(...)
+#define CFG_MKE2FS_GEN 0
+#define USE_MKE2FS_GEN(...)
+#define CFG_MKE2FS 0
+#define USE_MKE2FS(...)
+#define CFG_MKE2FS_JOURNAL 0
+#define USE_MKE2FS_JOURNAL(...)
+#define CFG_MKE2FS_LABEL 0
+#define USE_MKE2FS_LABEL(...)
+#define CFG_MKFIFO 0
+#define USE_MKFIFO(...)
+#define CFG_MKFIFO_Z 0
+#define USE_MKFIFO_Z(...)
+#define CFG_MKNOD 0
+#define USE_MKNOD(...)
+#define CFG_MKNOD_Z 0
+#define USE_MKNOD_Z(...)
+#define CFG_MKPASSWD 0
+#define USE_MKPASSWD(...)
+#define CFG_MKSWAP 0
+#define USE_MKSWAP(...)
+#define CFG_MKTEMP 1
+#define USE_MKTEMP(...) __VA_ARGS__
+#define CFG_MODINFO 0
+#define USE_MODINFO(...)
+#define CFG_MODPROBE 0
+#define USE_MODPROBE(...)
+#define CFG_MORE 0
+#define USE_MORE(...)
+#define CFG_MOUNT 0
+#define USE_MOUNT(...)
+#define CFG_MOUNTPOINT 0
+#define USE_MOUNTPOINT(...)
+#define CFG_MV 1
+#define USE_MV(...) __VA_ARGS__
+#define CFG_NBD_CLIENT 0
+#define USE_NBD_CLIENT(...)
+#define CFG_NBD_SERVER 0
+#define USE_NBD_SERVER(...)
+#define CFG_NETCAT 0
+#define USE_NETCAT(...)
+#define CFG_NETSTAT 0
+#define USE_NETSTAT(...)
+#define CFG_NICE 0
+#define USE_NICE(...)
+#define CFG_NL 1
+#define USE_NL(...) __VA_ARGS__
+#define CFG_NOHUP 0
+#define USE_NOHUP(...)
+#define CFG_NPROC 0
+#define USE_NPROC(...)
+#define CFG_NSENTER 0
+#define USE_NSENTER(...)
+#define CFG_OD 1
+#define USE_OD(...) __VA_ARGS__
+#define CFG_ONEIT 0
+#define USE_ONEIT(...)
+#define CFG_OPENVT 0
+#define USE_OPENVT(...)
+#define CFG_PARTPROBE 0
+#define USE_PARTPROBE(...)
+#define CFG_PASSWD 0
+#define USE_PASSWD(...)
+#define CFG_PASSWD_SAD 0
+#define USE_PASSWD_SAD(...)
+#define CFG_PASTE 1
+#define USE_PASTE(...) __VA_ARGS__
+#define CFG_PATCH 1
+#define USE_PATCH(...) __VA_ARGS__
+#define CFG_PGREP 0
+#define USE_PGREP(...)
+#define CFG_PIDOF 0
+#define USE_PIDOF(...)
+#define CFG_PING 0
+#define USE_PING(...)
+#define CFG_PIVOT_ROOT 0
+#define USE_PIVOT_ROOT(...)
+#define CFG_PKILL 0
+#define USE_PKILL(...)
+#define CFG_PMAP 0
+#define USE_PMAP(...)
+#define CFG_PRINTENV 0
+#define USE_PRINTENV(...)
+#define CFG_PRINTF 1
+#define USE_PRINTF(...) __VA_ARGS__
+#define CFG_PS 0
+#define USE_PS(...)
+#define CFG_PWDX 0
+#define USE_PWDX(...)
+#define CFG_PWD 1
+#define USE_PWD(...) __VA_ARGS__
+#define CFG_PWGEN 0
+#define USE_PWGEN(...)
+#define CFG_READAHEAD 0
+#define USE_READAHEAD(...)
+#define CFG_READELF 0
+#define USE_READELF(...)
+#define CFG_READLINK 1
+#define USE_READLINK(...) __VA_ARGS__
+#define CFG_REALPATH 1
+#define USE_REALPATH(...) __VA_ARGS__
+#define CFG_REBOOT 0
+#define USE_REBOOT(...)
+#define CFG_RENICE 0
+#define USE_RENICE(...)
+#define CFG_RESET 0
+#define USE_RESET(...)
+#define CFG_RESTORECON 0
+#define USE_RESTORECON(...)
+#define CFG_REV 0
+#define USE_REV(...)
+#define CFG_RFKILL 0
+#define USE_RFKILL(...)
+#define CFG_RMDIR 1
+#define USE_RMDIR(...) __VA_ARGS__
+#define CFG_RMMOD 0
+#define USE_RMMOD(...)
+#define CFG_RM 1
+#define USE_RM(...) __VA_ARGS__
+#define CFG_ROUTE 0
+#define USE_ROUTE(...)
+#define CFG_RTCWAKE 0
+#define USE_RTCWAKE(...)
+#define CFG_RUNCON 0
+#define USE_RUNCON(...)
+#define CFG_SED 1
+#define USE_SED(...) __VA_ARGS__
+#define CFG_SENDEVENT 0
+#define USE_SENDEVENT(...)
+#define CFG_SEQ 1
+#define USE_SEQ(...) __VA_ARGS__
+#define CFG_SETENFORCE 0
+#define USE_SETENFORCE(...)
+#define CFG_SETFATTR 0
+#define USE_SETFATTR(...)
+#define CFG_SETSID 1
+#define USE_SETSID(...) __VA_ARGS__
+#define CFG_SHA1SUM 1
+#define USE_SHA1SUM(...) __VA_ARGS__
+#define CFG_SHA224SUM 0
+#define USE_SHA224SUM(...)
+#define CFG_SHA256SUM 1
+#define USE_SHA256SUM(...) __VA_ARGS__
+#define CFG_SHA3SUM 0
+#define USE_SHA3SUM(...)
+#define CFG_SHA384SUM 0
+#define USE_SHA384SUM(...)
+#define CFG_SHA512SUM 1
+#define USE_SHA512SUM(...) __VA_ARGS__
+#define CFG_SH 0
+#define USE_SH(...)
+#define CFG_SHRED 0
+#define USE_SHRED(...)
+#define CFG_SHUF 0
+#define USE_SHUF(...)
+#define CFG_SKELETON_ALIAS 0
+#define USE_SKELETON_ALIAS(...)
+#define CFG_SKELETON 0
+#define USE_SKELETON(...)
+#define CFG_SLEEP 1
+#define USE_SLEEP(...) __VA_ARGS__
+#define CFG_SNTP 0
+#define USE_SNTP(...)
+#define CFG_SORT_FLOAT 1
+#define USE_SORT_FLOAT(...) __VA_ARGS__
+#define CFG_SORT 1
+#define USE_SORT(...) __VA_ARGS__
+#define CFG_SPLIT 0
+#define USE_SPLIT(...)
+#define CFG_STAT 1
+#define USE_STAT(...) __VA_ARGS__
+#define CFG_STRACE 0
+#define USE_STRACE(...)
+#define CFG_STRINGS 0
+#define USE_STRINGS(...)
+#define CFG_STTY 0
+#define USE_STTY(...)
+#define CFG_SU 0
+#define USE_SU(...)
+#define CFG_SULOGIN 0
+#define USE_SULOGIN(...)
+#define CFG_SWAPOFF 0
+#define USE_SWAPOFF(...)
+#define CFG_SWAPON 0
+#define USE_SWAPON(...)
+#define CFG_SWITCH_ROOT 0
+#define USE_SWITCH_ROOT(...)
+#define CFG_SYNC 0
+#define USE_SYNC(...)
+#define CFG_SYSCTL 0
+#define USE_SYSCTL(...)
+#define CFG_SYSLOGD 0
+#define USE_SYSLOGD(...)
+#define CFG_TAC 0
+#define USE_TAC(...)
+#define CFG_TAIL 1
+#define USE_TAIL(...) __VA_ARGS__
+#define CFG_TAR 1
+#define USE_TAR(...) __VA_ARGS__
+#define CFG_TASKSET 0
+#define USE_TASKSET(...)
+#define CFG_TCPSVD 0
+#define USE_TCPSVD(...)
+#define CFG_TEE 1
+#define USE_TEE(...) __VA_ARGS__
+#define CFG_TELNETD 0
+#define USE_TELNETD(...)
+#define CFG_TELNET 0
+#define USE_TELNET(...)
+#define CFG_TEST 1
+#define USE_TEST(...) __VA_ARGS__
+#define CFG_TEST_GLUE 1
+#define USE_TEST_GLUE(...) __VA_ARGS__
+#define CFG_TFTPD 0
+#define USE_TFTPD(...)
+#define CFG_TFTP 0
+#define USE_TFTP(...)
+#define CFG_TIME 0
+#define USE_TIME(...)
+#define CFG_TIMEOUT 1
+#define USE_TIMEOUT(...) __VA_ARGS__
+#define CFG_TOP 0
+#define USE_TOP(...)
+#define CFG_TOUCH 1
+#define USE_TOUCH(...) __VA_ARGS__
+#define CFG_TRACEROUTE 0
+#define USE_TRACEROUTE(...)
+#define CFG_TRUE 1
+#define USE_TRUE(...) __VA_ARGS__
+#define CFG_TRUNCATE 1
+#define USE_TRUNCATE(...) __VA_ARGS__
+#define CFG_TR 1
+#define USE_TR(...) __VA_ARGS__
+#define CFG_TS 0
+#define USE_TS(...)
+#define CFG_TSORT 0
+#define USE_TSORT(...)
+#define CFG_TTY 0
+#define USE_TTY(...)
+#define CFG_TUNCTL 0
+#define USE_TUNCTL(...)
+#define CFG_UCLAMPSET 0
+#define USE_UCLAMPSET(...)
+#define CFG_ULIMIT 0
+#define USE_ULIMIT(...)
+#define CFG_UMOUNT 0
+#define USE_UMOUNT(...)
+#define CFG_UNAME 1
+#define USE_UNAME(...) __VA_ARGS__
+#define CFG_UNICODE 0
+#define USE_UNICODE(...)
+#define CFG_UNIQ 1
+#define USE_UNIQ(...) __VA_ARGS__
+#define CFG_UNIX2DOS 1
+#define USE_UNIX2DOS(...) __VA_ARGS__
+#define CFG_UNLINK 0
+#define USE_UNLINK(...)
+#define CFG_UNSHARE 0
+#define USE_UNSHARE(...)
+#define CFG_UPTIME 0
+#define USE_UPTIME(...)
+#define CFG_USERADD 0
+#define USE_USERADD(...)
+#define CFG_USERDEL 0
+#define USE_USERDEL(...)
+#define CFG_USLEEP 0
+#define USE_USLEEP(...)
+#define CFG_UUDECODE 0
+#define USE_UUDECODE(...)
+#define CFG_UUENCODE 0
+#define USE_UUENCODE(...)
+#define CFG_UUIDGEN 0
+#define USE_UUIDGEN(...)
+#define CFG_VCONFIG 0
+#define USE_VCONFIG(...)
+#define CFG_VI 0
+#define USE_VI(...)
+#define CFG_VMSTAT 0
+#define USE_VMSTAT(...)
+#define CFG_WATCH 0
+#define USE_WATCH(...)
+#define CFG_WATCHDOG 0
+#define USE_WATCHDOG(...)
+#define CFG_WC 1
+#define USE_WC(...) __VA_ARGS__
+#define CFG_WGET 0
+#define USE_WGET(...)
+#define CFG_WHICH 1
+#define USE_WHICH(...) __VA_ARGS__
+#define CFG_WHOAMI 1
+#define USE_WHOAMI(...) __VA_ARGS__
+#define CFG_WHO 0
+#define USE_WHO(...)
+#define CFG_W 0
+#define USE_W(...)
+#define CFG_XARGS 1
+#define USE_XARGS(...) __VA_ARGS__
+#define CFG_XXD 1
+#define USE_XXD(...) __VA_ARGS__
+#define CFG_XZCAT 0
+#define USE_XZCAT(...)
+#define CFG_YES 0
+#define USE_YES(...)
+#define CFG_ZCAT 1
+#define USE_ZCAT(...) __VA_ARGS__
diff --git a/android/mac/generated/flags.h b/android/mac/generated/flags.h
new file mode 100644
index 0000000..11ac529
--- /dev/null
+++ b/android/mac/generated/flags.h
@@ -0,0 +1,7538 @@
+#undef FORCED_FLAG
+#ifdef FORCE_FLAGS
+#define FORCED_FLAG 1LL
+#else
+#define FORCED_FLAG 0LL
+#endif
+
+// acpi   abctV
+#undef OPTSTR_acpi
+#define OPTSTR_acpi "abctV"
+#ifdef CLEANUP_acpi
+#undef CLEANUP_acpi
+#undef FOR_acpi
+#undef FLAG_V
+#undef FLAG_t
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// arch    
+#undef OPTSTR_arch
+#define OPTSTR_arch 0
+#ifdef CLEANUP_arch
+#undef CLEANUP_arch
+#undef FOR_arch
+#endif
+
+// arp   vi:nDsdap:A:H:[+Ap][!sd]
+#undef OPTSTR_arp
+#define OPTSTR_arp "vi:nDsdap:A:H:[+Ap][!sd]"
+#ifdef CLEANUP_arp
+#undef CLEANUP_arp
+#undef FOR_arp
+#undef FLAG_H
+#undef FLAG_A
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_D
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_v
+#endif
+
+// arping   <1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]
+#undef OPTSTR_arping
+#define OPTSTR_arping "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]"
+#ifdef CLEANUP_arping
+#undef CLEANUP_arping
+#undef FOR_arping
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_U
+#undef FLAG_A
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_I
+#undef FLAG_s
+#endif
+
+// ascii    
+#undef OPTSTR_ascii
+#define OPTSTR_ascii 0
+#ifdef CLEANUP_ascii
+#undef CLEANUP_ascii
+#undef FOR_ascii
+#endif
+
+// base32   diw#<0=76[!dw]
+#undef OPTSTR_base32
+#define OPTSTR_base32 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base32
+#undef CLEANUP_base32
+#undef FOR_base32
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// base64   diw#<0=76[!dw]
+#undef OPTSTR_base64
+#define OPTSTR_base64 "diw#<0=76[!dw]"
+#ifdef CLEANUP_base64
+#undef CLEANUP_base64
+#undef FOR_base64
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_d
+#endif
+
+// basename ^<1as: ^<1as:
+#undef OPTSTR_basename
+#define OPTSTR_basename "^<1as:"
+#ifdef CLEANUP_basename
+#undef CLEANUP_basename
+#undef FOR_basename
+#undef FLAG_s
+#undef FLAG_a
+#endif
+
+// bc   i(interactive)l(mathlib)q(quiet)s(standard)w(warn)
+#undef OPTSTR_bc
+#define OPTSTR_bc "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)"
+#ifdef CLEANUP_bc
+#undef CLEANUP_bc
+#undef FOR_bc
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#endif
+
+// blkdiscard   <1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]
+#undef OPTSTR_blkdiscard
+#define OPTSTR_blkdiscard "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]"
+#ifdef CLEANUP_blkdiscard
+#undef CLEANUP_blkdiscard
+#undef FOR_blkdiscard
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_f
+#endif
+
+// blkid   ULo:s*[!LU]
+#undef OPTSTR_blkid
+#define OPTSTR_blkid "ULo:s*[!LU]"
+#ifdef CLEANUP_blkid
+#undef CLEANUP_blkid
+#undef FOR_blkid
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_L
+#undef FLAG_U
+#endif
+
+// blockdev   <1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)
+#undef OPTSTR_blockdev
+#define OPTSTR_blockdev "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)"
+#ifdef CLEANUP_blockdev
+#undef CLEANUP_blockdev
+#undef FOR_blockdev
+#undef FLAG_rereadpt
+#undef FLAG_flushbufs
+#undef FLAG_setra
+#undef FLAG_getra
+#undef FLAG_getsize64
+#undef FLAG_getsize
+#undef FLAG_getsz
+#undef FLAG_setbsz
+#undef FLAG_getbsz
+#undef FLAG_getss
+#undef FLAG_getro
+#undef FLAG_setrw
+#undef FLAG_setro
+#endif
+
+// bootchartd    
+#undef OPTSTR_bootchartd
+#define OPTSTR_bootchartd 0
+#ifdef CLEANUP_bootchartd
+#undef CLEANUP_bootchartd
+#undef FOR_bootchartd
+#endif
+
+// brctl   <1
+#undef OPTSTR_brctl
+#define OPTSTR_brctl "<1"
+#ifdef CLEANUP_brctl
+#undef CLEANUP_brctl
+#undef FOR_brctl
+#endif
+
+// bunzip2   cftkv
+#undef OPTSTR_bunzip2
+#define OPTSTR_bunzip2 "cftkv"
+#ifdef CLEANUP_bunzip2
+#undef CLEANUP_bunzip2
+#undef FOR_bunzip2
+#undef FLAG_v
+#undef FLAG_k
+#undef FLAG_t
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// bzcat    
+#undef OPTSTR_bzcat
+#define OPTSTR_bzcat 0
+#ifdef CLEANUP_bzcat
+#undef CLEANUP_bzcat
+#undef FOR_bzcat
+#endif
+
+// cal   >3h
+#undef OPTSTR_cal
+#define OPTSTR_cal ">3h"
+#ifdef CLEANUP_cal
+#undef CLEANUP_cal
+#undef FOR_cal
+#undef FLAG_h
+#endif
+
+// cat uvte uvte
+#undef OPTSTR_cat
+#define OPTSTR_cat "uvte"
+#ifdef CLEANUP_cat
+#undef CLEANUP_cat
+#undef FOR_cat
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_u
+#endif
+
+// cd   >1LP[-LP]
+#undef OPTSTR_cd
+#define OPTSTR_cd ">1LP[-LP]"
+#ifdef CLEANUP_cd
+#undef CLEANUP_cd
+#undef FOR_cd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// chattr   ?p#v#R
+#undef OPTSTR_chattr
+#define OPTSTR_chattr "?p#v#R"
+#ifdef CLEANUP_chattr
+#undef CLEANUP_chattr
+#undef FOR_chattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// chcon   <2hvR
+#undef OPTSTR_chcon
+#define OPTSTR_chcon "<2hvR"
+#ifdef CLEANUP_chcon
+#undef CLEANUP_chcon
+#undef FOR_chcon
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_h
+#endif
+
+// chgrp   <2h(no-dereference)PLHRfv[-HLP]
+#undef OPTSTR_chgrp
+#define OPTSTR_chgrp "<2h(no-dereference)PLHRfv[-HLP]"
+#ifdef CLEANUP_chgrp
+#undef CLEANUP_chgrp
+#undef FOR_chgrp
+#undef FLAG_v
+#undef FLAG_f
+#undef FLAG_R
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_h
+#endif
+
+// chmod <2?vfR[-vf] <2?vfR[-vf]
+#undef OPTSTR_chmod
+#define OPTSTR_chmod "<2?vfR[-vf]"
+#ifdef CLEANUP_chmod
+#undef CLEANUP_chmod
+#undef FOR_chmod
+#undef FLAG_R
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// chroot   ^<1
+#undef OPTSTR_chroot
+#define OPTSTR_chroot "^<1"
+#ifdef CLEANUP_chroot
+#undef CLEANUP_chroot
+#undef FOR_chroot
+#endif
+
+// chrt   ^mp#<0iRbrfo[!ibrfo]
+#undef OPTSTR_chrt
+#define OPTSTR_chrt "^mp#<0iRbrfo[!ibrfo]"
+#ifdef CLEANUP_chrt
+#undef CLEANUP_chrt
+#undef FOR_chrt
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_m
+#endif
+
+// chsh   >1R:s:a
+#undef OPTSTR_chsh
+#define OPTSTR_chsh ">1R:s:a"
+#ifdef CLEANUP_chsh
+#undef CLEANUP_chsh
+#undef FOR_chsh
+#undef FLAG_a
+#undef FLAG_s
+#undef FLAG_R
+#endif
+
+// chvt   <1>1
+#undef OPTSTR_chvt
+#define OPTSTR_chvt "<1>1"
+#ifdef CLEANUP_chvt
+#undef CLEANUP_chvt
+#undef FOR_chvt
+#endif
+
+// cksum   HIPLN
+#undef OPTSTR_cksum
+#define OPTSTR_cksum "HIPLN"
+#ifdef CLEANUP_cksum
+#undef CLEANUP_cksum
+#undef FOR_cksum
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_P
+#undef FLAG_I
+#undef FLAG_H
+#endif
+
+// clear    
+#undef OPTSTR_clear
+#define OPTSTR_clear 0
+#ifdef CLEANUP_clear
+#undef CLEANUP_clear
+#undef FOR_clear
+#endif
+
+// cmp <1>4ls(silent)(quiet)n#<1[!ls] <1>4ls(silent)(quiet)n#<1[!ls]
+#undef OPTSTR_cmp
+#define OPTSTR_cmp "<1>4ls(silent)(quiet)n#<1[!ls]"
+#ifdef CLEANUP_cmp
+#undef CLEANUP_cmp
+#undef FOR_cmp
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// comm <2>2321 <2>2321
+#undef OPTSTR_comm
+#define OPTSTR_comm "<2>2321"
+#ifdef CLEANUP_comm
+#undef CLEANUP_comm
+#undef FOR_comm
+#undef FLAG_1
+#undef FLAG_2
+#undef FLAG_3
+#endif
+
+// count   <0>0l
+#undef OPTSTR_count
+#define OPTSTR_count "<0>0l"
+#ifdef CLEANUP_count
+#undef CLEANUP_count
+#undef FOR_count
+#undef FLAG_l
+#endif
+
+// cp <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr] <1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]
+#undef OPTSTR_cp
+#define OPTSTR_cp "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]"
+#ifdef CLEANUP_cp
+#undef CLEANUP_cp
+#undef FOR_cp
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_R
+#undef FLAG_D
+#undef FLAG_preserve
+#endif
+
+// cpio (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF] (ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]
+#undef OPTSTR_cpio
+#define OPTSTR_cpio "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]"
+#ifdef CLEANUP_cpio
+#undef CLEANUP_cpio
+#undef FOR_cpio
+#undef FLAG_o
+#undef FLAG_v
+#undef FLAG_F
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_H
+#undef FLAG_L
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_m
+#undef FLAG_R
+#undef FLAG_no_preserve_owner
+#undef FLAG_quiet
+#undef FLAG_renumber_inodes
+#undef FLAG_ignore_devno
+#endif
+
+// crc32    
+#undef OPTSTR_crc32
+#define OPTSTR_crc32 0
+#ifdef CLEANUP_crc32
+#undef CLEANUP_crc32
+#undef FOR_crc32
+#endif
+
+// crond   fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]
+#undef OPTSTR_crond
+#define OPTSTR_crond "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]"
+#ifdef CLEANUP_crond
+#undef CLEANUP_crond
+#undef FOR_crond
+#undef FLAG_c
+#undef FLAG_L
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_S
+#undef FLAG_b
+#undef FLAG_f
+#endif
+
+// crontab   c:u:elr[!elr]
+#undef OPTSTR_crontab
+#define OPTSTR_crontab "c:u:elr[!elr]"
+#ifdef CLEANUP_crontab
+#undef CLEANUP_crontab
+#undef FOR_crontab
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_e
+#undef FLAG_u
+#undef FLAG_c
+#endif
+
+// csplit   <2skf:n#
+#undef OPTSTR_csplit
+#define OPTSTR_csplit "<2skf:n#"
+#ifdef CLEANUP_csplit
+#undef CLEANUP_csplit
+#undef FOR_csplit
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_k
+#undef FLAG_s
+#endif
+
+// cut b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF] b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]
+#undef OPTSTR_cut
+#define OPTSTR_cut "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]"
+#ifdef CLEANUP_cut
+#undef CLEANUP_cut
+#undef FOR_cut
+#undef FLAG_n
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_O
+#undef FLAG_C
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// date >1d:D:I(iso-8601):;r:s:u(utc)[!dr] >1d:D:I(iso-8601):;r:s:u(utc)[!dr]
+#undef OPTSTR_date
+#define OPTSTR_date ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]"
+#ifdef CLEANUP_date
+#undef CLEANUP_date
+#undef FOR_date
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_I
+#undef FLAG_D
+#undef FLAG_d
+#endif
+
+// dd    
+#undef OPTSTR_dd
+#define OPTSTR_dd 0
+#ifdef CLEANUP_dd
+#undef CLEANUP_dd
+#undef FOR_dd
+#endif
+
+// deallocvt   >1
+#undef OPTSTR_deallocvt
+#define OPTSTR_deallocvt ">1"
+#ifdef CLEANUP_deallocvt
+#undef CLEANUP_deallocvt
+#undef FOR_deallocvt
+#endif
+
+// declare   pAailunxr
+#undef OPTSTR_declare
+#define OPTSTR_declare "pAailunxr"
+#ifdef CLEANUP_declare
+#undef CLEANUP_declare
+#undef FOR_declare
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_p
+#endif
+
+// demo_many_options   ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba
+#undef OPTSTR_demo_many_options
+#define OPTSTR_demo_many_options "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba"
+#ifdef CLEANUP_demo_many_options
+#undef CLEANUP_demo_many_options
+#undef FOR_demo_many_options
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_i
+#undef FLAG_j
+#undef FLAG_k
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_o
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_y
+#undef FLAG_z
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_D
+#undef FLAG_E
+#undef FLAG_F
+#undef FLAG_G
+#undef FLAG_H
+#undef FLAG_I
+#undef FLAG_J
+#undef FLAG_K
+#undef FLAG_L
+#undef FLAG_M
+#undef FLAG_N
+#undef FLAG_O
+#undef FLAG_P
+#undef FLAG_Q
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_T
+#undef FLAG_U
+#undef FLAG_V
+#undef FLAG_W
+#undef FLAG_X
+#undef FLAG_Y
+#undef FLAG_Z
+#endif
+
+// demo_number   D#=3<3M#<0hcdbs
+#undef OPTSTR_demo_number
+#define OPTSTR_demo_number "D#=3<3M#<0hcdbs"
+#ifdef CLEANUP_demo_number
+#undef CLEANUP_demo_number
+#undef FOR_demo_number
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_h
+#undef FLAG_M
+#undef FLAG_D
+#endif
+
+// demo_scankey    
+#undef OPTSTR_demo_scankey
+#define OPTSTR_demo_scankey 0
+#ifdef CLEANUP_demo_scankey
+#undef CLEANUP_demo_scankey
+#undef FOR_demo_scankey
+#endif
+
+// demo_utf8towc    
+#undef OPTSTR_demo_utf8towc
+#define OPTSTR_demo_utf8towc 0
+#ifdef CLEANUP_demo_utf8towc
+#undef CLEANUP_demo_utf8towc
+#undef FOR_demo_utf8towc
+#endif
+
+// devmem   <1>3
+#undef OPTSTR_devmem
+#define OPTSTR_devmem "<1>3"
+#ifdef CLEANUP_devmem
+#undef CLEANUP_devmem
+#undef FOR_devmem
+#endif
+
+// df   HPkhit*a[-HPh]
+#undef OPTSTR_df
+#define OPTSTR_df "HPkhit*a[-HPh]"
+#ifdef CLEANUP_df
+#undef CLEANUP_df
+#undef FOR_df
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_k
+#undef FLAG_P
+#undef FLAG_H
+#endif
+
+// dhcp   V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf
+#undef OPTSTR_dhcp
+#define OPTSTR_dhcp "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf"
+#ifdef CLEANUP_dhcp
+#undef CLEANUP_dhcp
+#undef FOR_dhcp
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_C
+#undef FLAG_R
+#undef FLAG_B
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_O
+#undef FLAG_r
+#undef FLAG_x
+#undef FLAG_F
+#undef FLAG_H
+#undef FLAG_V
+#endif
+
+// dhcp6   r:A#<0T#<0t#<0s:p:i:SRvqnbf
+#undef OPTSTR_dhcp6
+#define OPTSTR_dhcp6 "r:A#<0T#<0t#<0s:p:i:SRvqnbf"
+#ifdef CLEANUP_dhcp6
+#undef CLEANUP_dhcp6
+#undef FOR_dhcp6
+#undef FLAG_f
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_q
+#undef FLAG_v
+#undef FLAG_R
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_p
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_A
+#undef FLAG_r
+#endif
+
+// dhcpd   >1P#<0>65535fi:S46[!46]
+#undef OPTSTR_dhcpd
+#define OPTSTR_dhcpd ">1P#<0>65535fi:S46[!46]"
+#ifdef CLEANUP_dhcpd
+#undef CLEANUP_dhcpd
+#undef FOR_dhcpd
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_S
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_P
+#endif
+
+// diff <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3 <2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3
+#undef OPTSTR_diff
+#define OPTSTR_diff "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3"
+#ifdef CLEANUP_diff
+#undef CLEANUP_diff
+#undef FOR_diff
+#undef FLAG_U
+#undef FLAG_r
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_F
+#undef FLAG_S
+#undef FLAG_a
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_T
+#undef FLAG_i
+#undef FLAG_w
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_d
+#undef FLAG_B
+#undef FLAG_strip_trailing_cr
+#undef FLAG_color
+#undef FLAG_new_line_format
+#undef FLAG_old_line_format
+#undef FLAG_unchanged_line_format
+#endif
+
+// dirname <1 <1
+#undef OPTSTR_dirname
+#define OPTSTR_dirname "<1"
+#ifdef CLEANUP_dirname
+#undef CLEANUP_dirname
+#undef FOR_dirname
+#endif
+
+// dmesg   w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]
+#undef OPTSTR_dmesg
+#define OPTSTR_dmesg "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]"
+#ifdef CLEANUP_dmesg
+#undef CLEANUP_dmesg
+#undef FOR_dmesg
+#undef FLAG_c
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_C
+#undef FLAG_w
+#endif
+
+// dnsdomainname   >0
+#undef OPTSTR_dnsdomainname
+#define OPTSTR_dnsdomainname ">0"
+#ifdef CLEANUP_dnsdomainname
+#undef CLEANUP_dnsdomainname
+#undef FOR_dnsdomainname
+#endif
+
+// dos2unix    
+#undef OPTSTR_dos2unix
+#define OPTSTR_dos2unix 0
+#ifdef CLEANUP_dos2unix
+#undef CLEANUP_dos2unix
+#undef FOR_dos2unix
+#endif
+
+// du d#<0=-1hmlcaHkKLsxb[-HL][-kKmh] d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]
+#undef OPTSTR_du
+#define OPTSTR_du "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]"
+#ifdef CLEANUP_du
+#undef CLEANUP_du
+#undef FOR_du
+#undef FLAG_b
+#undef FLAG_x
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_h
+#undef FLAG_d
+#endif
+
+// dumpleases   >0arf:[!ar]
+#undef OPTSTR_dumpleases
+#define OPTSTR_dumpleases ">0arf:[!ar]"
+#ifdef CLEANUP_dumpleases
+#undef CLEANUP_dumpleases
+#undef FOR_dumpleases
+#undef FLAG_f
+#undef FLAG_r
+#undef FLAG_a
+#endif
+
+// echo ^?Een[-eE] ^?Een[-eE]
+#undef OPTSTR_echo
+#define OPTSTR_echo "^?Een[-eE]"
+#ifdef CLEANUP_echo
+#undef CLEANUP_echo
+#undef FOR_echo
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_E
+#endif
+
+// eject   >1stT[!tT]
+#undef OPTSTR_eject
+#define OPTSTR_eject ">1stT[!tT]"
+#ifdef CLEANUP_eject
+#undef CLEANUP_eject
+#undef FOR_eject
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#endif
+
+// env ^e:i0u* ^e:i0u*
+#undef OPTSTR_env
+#define OPTSTR_env "^e:i0u*"
+#ifdef CLEANUP_env
+#undef CLEANUP_env
+#undef FOR_env
+#undef FLAG_u
+#undef FLAG_0
+#undef FLAG_i
+#undef FLAG_e
+#endif
+
+// eval    
+#undef OPTSTR_eval
+#define OPTSTR_eval 0
+#ifdef CLEANUP_eval
+#undef CLEANUP_eval
+#undef FOR_eval
+#endif
+
+// exec   ^cla:
+#undef OPTSTR_exec
+#define OPTSTR_exec "^cla:"
+#ifdef CLEANUP_exec
+#undef CLEANUP_exec
+#undef FOR_exec
+#undef FLAG_a
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// exit    
+#undef OPTSTR_exit
+#define OPTSTR_exit 0
+#ifdef CLEANUP_exit
+#undef CLEANUP_exit
+#undef FOR_exit
+#endif
+
+// expand   t*
+#undef OPTSTR_expand
+#define OPTSTR_expand "t*"
+#ifdef CLEANUP_expand
+#undef CLEANUP_expand
+#undef FOR_expand
+#undef FLAG_t
+#endif
+
+// export   np
+#undef OPTSTR_export
+#define OPTSTR_export "np"
+#ifdef CLEANUP_export
+#undef CLEANUP_export
+#undef FOR_export
+#undef FLAG_p
+#undef FLAG_n
+#endif
+
+// expr    
+#undef OPTSTR_expr
+#define OPTSTR_expr 0
+#ifdef CLEANUP_expr
+#undef CLEANUP_expr
+#undef FOR_expr
+#endif
+
+// factor   ?hx
+#undef OPTSTR_factor
+#define OPTSTR_factor "?hx"
+#ifdef CLEANUP_factor
+#undef CLEANUP_factor
+#undef FOR_factor
+#undef FLAG_x
+#undef FLAG_h
+#endif
+
+// fallocate   >1l#|o#
+#undef OPTSTR_fallocate
+#define OPTSTR_fallocate ">1l#|o#"
+#ifdef CLEANUP_fallocate
+#undef CLEANUP_fallocate
+#undef FOR_fallocate
+#undef FLAG_o
+#undef FLAG_l
+#endif
+
+// false    
+#undef OPTSTR_false
+#define OPTSTR_false 0
+#ifdef CLEANUP_false
+#undef CLEANUP_false
+#undef FOR_false
+#endif
+
+// fdisk   C#<0H#<0S#<0b#<512ul
+#undef OPTSTR_fdisk
+#define OPTSTR_fdisk "C#<0H#<0S#<0b#<512ul"
+#ifdef CLEANUP_fdisk
+#undef CLEANUP_fdisk
+#undef FOR_fdisk
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_b
+#undef FLAG_S
+#undef FLAG_H
+#undef FLAG_C
+#endif
+
+// file <1b(brief)hLs[!hL] <1b(brief)hLs[!hL]
+#undef OPTSTR_file
+#define OPTSTR_file "<1b(brief)hLs[!hL]"
+#ifdef CLEANUP_file
+#undef CLEANUP_file
+#undef FOR_file
+#undef FLAG_s
+#undef FLAG_L
+#undef FLAG_h
+#undef FLAG_b
+#endif
+
+// find ?^HL[-HL] ?^HL[-HL]
+#undef OPTSTR_find
+#define OPTSTR_find "?^HL[-HL]"
+#ifdef CLEANUP_find
+#undef CLEANUP_find
+#undef FOR_find
+#undef FLAG_L
+#undef FLAG_H
+#endif
+
+// flock   <1>1nsux[-sux]
+#undef OPTSTR_flock
+#define OPTSTR_flock "<1>1nsux[-sux]"
+#ifdef CLEANUP_flock
+#undef CLEANUP_flock
+#undef FOR_flock
+#undef FLAG_x
+#undef FLAG_u
+#undef FLAG_s
+#undef FLAG_n
+#endif
+
+// fmt   w#<0=75
+#undef OPTSTR_fmt
+#define OPTSTR_fmt "w#<0=75"
+#ifdef CLEANUP_fmt
+#undef CLEANUP_fmt
+#undef FOR_fmt
+#undef FLAG_w
+#endif
+
+// fold   bsw#<1=80
+#undef OPTSTR_fold
+#define OPTSTR_fold "bsw#<1=80"
+#ifdef CLEANUP_fold
+#undef CLEANUP_fold
+#undef FOR_fold
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_b
+#endif
+
+// free   hgmkb[!hgmkb]
+#undef OPTSTR_free
+#define OPTSTR_free "hgmkb[!hgmkb]"
+#ifdef CLEANUP_free
+#undef CLEANUP_free
+#undef FOR_free
+#undef FLAG_b
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_g
+#undef FLAG_h
+#endif
+
+// freeramdisk   <1>1
+#undef OPTSTR_freeramdisk
+#define OPTSTR_freeramdisk "<1>1"
+#ifdef CLEANUP_freeramdisk
+#undef CLEANUP_freeramdisk
+#undef FOR_freeramdisk
+#endif
+
+// fsck   ?t:ANPRTVsC#
+#undef OPTSTR_fsck
+#define OPTSTR_fsck "?t:ANPRTVsC#"
+#ifdef CLEANUP_fsck
+#undef CLEANUP_fsck
+#undef FOR_fsck
+#undef FLAG_C
+#undef FLAG_s
+#undef FLAG_V
+#undef FLAG_T
+#undef FLAG_R
+#undef FLAG_P
+#undef FLAG_N
+#undef FLAG_A
+#undef FLAG_t
+#endif
+
+// fsfreeze   <1>1f|u|[!fu]
+#undef OPTSTR_fsfreeze
+#define OPTSTR_fsfreeze "<1>1f|u|[!fu]"
+#ifdef CLEANUP_fsfreeze
+#undef CLEANUP_fsfreeze
+#undef FOR_fsfreeze
+#undef FLAG_u
+#undef FLAG_f
+#endif
+
+// fstype   <1
+#undef OPTSTR_fstype
+#define OPTSTR_fstype "<1"
+#ifdef CLEANUP_fstype
+#undef CLEANUP_fstype
+#undef FOR_fstype
+#endif
+
+// fsync   <1d
+#undef OPTSTR_fsync
+#define OPTSTR_fsync "<1d"
+#ifdef CLEANUP_fsync
+#undef CLEANUP_fsync
+#undef FOR_fsync
+#undef FLAG_d
+#endif
+
+// ftpget   <2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]
+#undef OPTSTR_ftpget
+#define OPTSTR_ftpget "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]"
+#ifdef CLEANUP_ftpget
+#undef CLEANUP_ftpget
+#undef FOR_ftpget
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_s
+#undef FLAG_g
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_P
+#endif
+
+// getconf >2al >2al
+#undef OPTSTR_getconf
+#define OPTSTR_getconf ">2al"
+#ifdef CLEANUP_getconf
+#undef CLEANUP_getconf
+#undef FOR_getconf
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// getenforce   >0
+#undef OPTSTR_getenforce
+#define OPTSTR_getenforce ">0"
+#ifdef CLEANUP_getenforce
+#undef CLEANUP_getenforce
+#undef FOR_getenforce
+#endif
+
+// getfattr   (only-values)dhn:
+#undef OPTSTR_getfattr
+#define OPTSTR_getfattr "(only-values)dhn:"
+#ifdef CLEANUP_getfattr
+#undef CLEANUP_getfattr
+#undef FOR_getfattr
+#undef FLAG_n
+#undef FLAG_h
+#undef FLAG_d
+#undef FLAG_only_values
+#endif
+
+// getopt ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu ^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu
+#undef OPTSTR_getopt
+#define OPTSTR_getopt "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu"
+#ifdef CLEANUP_getopt
+#undef CLEANUP_getopt
+#undef FOR_getopt
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_l
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_a
+#endif
+
+// getty   <2t#<0H:I:l:f:iwnmLh
+#undef OPTSTR_getty
+#define OPTSTR_getty "<2t#<0H:I:l:f:iwnmLh"
+#ifdef CLEANUP_getty
+#undef CLEANUP_getty
+#undef FOR_getty
+#undef FLAG_h
+#undef FLAG_L
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_w
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_l
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_t
+#endif
+
+// gitcheckout   <1
+#undef OPTSTR_gitcheckout
+#define OPTSTR_gitcheckout "<1"
+#ifdef CLEANUP_gitcheckout
+#undef CLEANUP_gitcheckout
+#undef FOR_gitcheckout
+#endif
+
+// gitclone   <1
+#undef OPTSTR_gitclone
+#define OPTSTR_gitclone "<1"
+#ifdef CLEANUP_gitclone
+#undef CLEANUP_gitclone
+#undef FOR_gitclone
+#endif
+
+// gitfetch    
+#undef OPTSTR_gitfetch
+#define OPTSTR_gitfetch 0
+#ifdef CLEANUP_gitfetch
+#undef CLEANUP_gitfetch
+#undef FOR_gitfetch
+#endif
+
+// gitinit   <1
+#undef OPTSTR_gitinit
+#define OPTSTR_gitinit "<1"
+#ifdef CLEANUP_gitinit
+#undef CLEANUP_gitinit
+#undef FOR_gitinit
+#endif
+
+// gitremote   <1
+#undef OPTSTR_gitremote
+#define OPTSTR_gitremote "<1"
+#ifdef CLEANUP_gitremote
+#undef CLEANUP_gitremote
+#undef FOR_gitremote
+#endif
+
+// gpiodetect   >0
+#undef OPTSTR_gpiodetect
+#define OPTSTR_gpiodetect ">0"
+#ifdef CLEANUP_gpiodetect
+#undef CLEANUP_gpiodetect
+#undef FOR_gpiodetect
+#endif
+
+// gpiofind   <1>1
+#undef OPTSTR_gpiofind
+#define OPTSTR_gpiofind "<1>1"
+#ifdef CLEANUP_gpiofind
+#undef CLEANUP_gpiofind
+#undef FOR_gpiofind
+#endif
+
+// gpioget   <2l
+#undef OPTSTR_gpioget
+#define OPTSTR_gpioget "<2l"
+#ifdef CLEANUP_gpioget
+#undef CLEANUP_gpioget
+#undef FOR_gpioget
+#undef FLAG_l
+#endif
+
+// gpioinfo    
+#undef OPTSTR_gpioinfo
+#define OPTSTR_gpioinfo 0
+#ifdef CLEANUP_gpioinfo
+#undef CLEANUP_gpioinfo
+#undef FOR_gpioinfo
+#endif
+
+// gpioset   <2l
+#undef OPTSTR_gpioset
+#define OPTSTR_gpioset "<2l"
+#ifdef CLEANUP_gpioset
+#undef CLEANUP_gpioset
+#undef FOR_gpioset
+#undef FLAG_l
+#endif
+
+// grep (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF] (line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]
+#undef OPTSTR_grep
+#define OPTSTR_grep "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]"
+#ifdef CLEANUP_grep
+#undef CLEANUP_grep
+#undef FOR_grep
+#undef FLAG_x
+#undef FLAG_m
+#undef FLAG_A
+#undef FLAG_B
+#undef FLAG_C
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_L
+#undef FLAG_c
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_I
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_E
+#undef FLAG_z
+#undef FLAG_Z
+#undef FLAG_M
+#undef FLAG_S
+#undef FLAG_exclude_dir
+#undef FLAG_color
+#undef FLAG_line_buffered
+#endif
+
+// groupadd   <1>2R:g#<0>2147483647S
+#undef OPTSTR_groupadd
+#define OPTSTR_groupadd "<1>2R:g#<0>2147483647S"
+#ifdef CLEANUP_groupadd
+#undef CLEANUP_groupadd
+#undef FOR_groupadd
+#undef FLAG_S
+#undef FLAG_g
+#undef FLAG_R
+#endif
+
+// groupdel   <1>2?
+#undef OPTSTR_groupdel
+#define OPTSTR_groupdel "<1>2?"
+#ifdef CLEANUP_groupdel
+#undef CLEANUP_groupdel
+#undef FOR_groupdel
+#endif
+
+// groups    
+#undef OPTSTR_groups
+#define OPTSTR_groups 0
+#ifdef CLEANUP_groups
+#undef CLEANUP_groups
+#undef FOR_groups
+#endif
+
+// gunzip   cdfkt123456789[-123456789]
+#undef OPTSTR_gunzip
+#define OPTSTR_gunzip "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gunzip
+#undef CLEANUP_gunzip
+#undef FOR_gunzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// gzip n(no-name)cdfkt123456789[-123456789] n(no-name)cdfkt123456789[-123456789]
+#undef OPTSTR_gzip
+#define OPTSTR_gzip "n(no-name)cdfkt123456789[-123456789]"
+#ifdef CLEANUP_gzip
+#undef CLEANUP_gzip
+#undef FOR_gzip
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// head ?n(lines)#<0=10c(bytes)#<0qv[-nc] ?n(lines)#<0=10c(bytes)#<0qv[-nc]
+#undef OPTSTR_head
+#define OPTSTR_head "?n(lines)#<0=10c(bytes)#<0qv[-nc]"
+#ifdef CLEANUP_head
+#undef CLEANUP_head
+#undef FOR_head
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// hello    
+#undef OPTSTR_hello
+#define OPTSTR_hello 0
+#ifdef CLEANUP_hello
+#undef CLEANUP_hello
+#undef FOR_hello
+#endif
+
+// help   ahu
+#undef OPTSTR_help
+#define OPTSTR_help "ahu"
+#ifdef CLEANUP_help
+#undef CLEANUP_help
+#undef FOR_help
+#undef FLAG_u
+#undef FLAG_h
+#undef FLAG_a
+#endif
+
+// hexdump   bcCdn#<0os#<0vx[!bcCdox]
+#undef OPTSTR_hexdump
+#define OPTSTR_hexdump "bcCdn#<0os#<0vx[!bcCdox]"
+#ifdef CLEANUP_hexdump
+#undef CLEANUP_hexdump
+#undef FOR_hexdump
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_d
+#undef FLAG_C
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// hexedit   <1>1r
+#undef OPTSTR_hexedit
+#define OPTSTR_hexedit "<1>1r"
+#ifdef CLEANUP_hexedit
+#undef CLEANUP_hexedit
+#undef FOR_hexedit
+#undef FLAG_r
+#endif
+
+// host   <1>2avt:
+#undef OPTSTR_host
+#define OPTSTR_host "<1>2avt:"
+#ifdef CLEANUP_host
+#undef CLEANUP_host
+#undef FOR_host
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// hostid   >0
+#undef OPTSTR_hostid
+#define OPTSTR_hostid ">0"
+#ifdef CLEANUP_hostid
+#undef CLEANUP_hostid
+#undef FOR_hostid
+#endif
+
+// hostname >1bdsfF:[!bdsf] >1bdsfF:[!bdsf]
+#undef OPTSTR_hostname
+#define OPTSTR_hostname ">1bdsfF:[!bdsf]"
+#ifdef CLEANUP_hostname
+#undef CLEANUP_hostname
+#undef FOR_hostname
+#undef FLAG_F
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// httpd   >1v
+#undef OPTSTR_httpd
+#define OPTSTR_httpd ">1v"
+#ifdef CLEANUP_httpd
+#undef CLEANUP_httpd
+#undef FOR_httpd
+#undef FLAG_v
+#endif
+
+// hwclock   >0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]
+#undef OPTSTR_hwclock
+#define OPTSTR_hwclock ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]"
+#ifdef CLEANUP_hwclock
+#undef CLEANUP_hwclock
+#undef FOR_hwclock
+#undef FLAG_w
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_fast
+#endif
+
+// i2cdetect   >3aF#<0>63lqry[!qr][!Fl]
+#undef OPTSTR_i2cdetect
+#define OPTSTR_i2cdetect ">3aF#<0>63lqry[!qr][!Fl]"
+#ifdef CLEANUP_i2cdetect
+#undef CLEANUP_i2cdetect
+#undef FOR_i2cdetect
+#undef FLAG_y
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// i2cdump   <2>2fy
+#undef OPTSTR_i2cdump
+#define OPTSTR_i2cdump "<2>2fy"
+#ifdef CLEANUP_i2cdump
+#undef CLEANUP_i2cdump
+#undef FOR_i2cdump
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cget   <2>3fy
+#undef OPTSTR_i2cget
+#define OPTSTR_i2cget "<2>3fy"
+#ifdef CLEANUP_i2cget
+#undef CLEANUP_i2cget
+#undef FOR_i2cget
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2cset   <4fy
+#undef OPTSTR_i2cset
+#define OPTSTR_i2cset "<4fy"
+#ifdef CLEANUP_i2cset
+#undef CLEANUP_i2cset
+#undef FOR_i2cset
+#undef FLAG_y
+#undef FLAG_f
+#endif
+
+// i2ctransfer   <2vfy
+#undef OPTSTR_i2ctransfer
+#define OPTSTR_i2ctransfer "<2vfy"
+#ifdef CLEANUP_i2ctransfer
+#undef CLEANUP_i2ctransfer
+#undef FOR_i2ctransfer
+#undef FLAG_y
+#undef FLAG_f
+#undef FLAG_v
+#endif
+
+// iconv   cst:f:
+#undef OPTSTR_iconv
+#define OPTSTR_iconv "cst:f:"
+#ifdef CLEANUP_iconv
+#undef CLEANUP_iconv
+#undef FOR_iconv
+#undef FLAG_f
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// id >1nGgru[!Ggu] >1ZnGgru[!ZGgu]
+#undef OPTSTR_id
+#define OPTSTR_id ">1nGgru[!Ggu]"
+#ifdef CLEANUP_id
+#undef CLEANUP_id
+#undef FOR_id
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_g
+#undef FLAG_G
+#undef FLAG_n
+#undef FLAG_Z
+#endif
+
+// ifconfig   ^?aS
+#undef OPTSTR_ifconfig
+#define OPTSTR_ifconfig "^?aS"
+#ifdef CLEANUP_ifconfig
+#undef CLEANUP_ifconfig
+#undef FOR_ifconfig
+#undef FLAG_S
+#undef FLAG_a
+#endif
+
+// init    
+#undef OPTSTR_init
+#define OPTSTR_init 0
+#ifdef CLEANUP_init
+#undef CLEANUP_init
+#undef FOR_init
+#endif
+
+// inotifyd   <2
+#undef OPTSTR_inotifyd
+#define OPTSTR_inotifyd "<2"
+#ifdef CLEANUP_inotifyd
+#undef CLEANUP_inotifyd
+#undef FOR_inotifyd
+#endif
+
+// insmod   <1
+#undef OPTSTR_insmod
+#define OPTSTR_insmod "<1"
+#ifdef CLEANUP_insmod
+#undef CLEANUP_insmod
+#undef FOR_insmod
+#endif
+
+// install <1cdDp(preserve-timestamps)svt:m:o:g: <1cdDp(preserve-timestamps)svt:m:o:g:
+#undef OPTSTR_install
+#define OPTSTR_install "<1cdDp(preserve-timestamps)svt:m:o:g:"
+#ifdef CLEANUP_install
+#undef CLEANUP_install
+#undef FOR_install
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_t
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// ionice   ^tc#<0>3=2n#<0>7=5p#
+#undef OPTSTR_ionice
+#define OPTSTR_ionice "^tc#<0>3=2n#<0>7=5p#"
+#ifdef CLEANUP_ionice
+#undef CLEANUP_ionice
+#undef FOR_ionice
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_t
+#endif
+
+// iorenice   <1>3
+#undef OPTSTR_iorenice
+#define OPTSTR_iorenice "<1>3"
+#ifdef CLEANUP_iorenice
+#undef CLEANUP_iorenice
+#undef FOR_iorenice
+#endif
+
+// iotop   >0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq
+#undef OPTSTR_iotop
+#define OPTSTR_iotop ">0AaKOHk*o*p*u*s#<1=7d%<100=3000m#n#<1bq"
+#ifdef CLEANUP_iotop
+#undef CLEANUP_iotop
+#undef FOR_iotop
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_O
+#undef FLAG_K
+#undef FLAG_a
+#undef FLAG_A
+#endif
+
+// ip    
+#undef OPTSTR_ip
+#define OPTSTR_ip 0
+#ifdef CLEANUP_ip
+#undef CLEANUP_ip
+#undef FOR_ip
+#endif
+
+// ipcrm   m*M*s*S*q*Q*
+#undef OPTSTR_ipcrm
+#define OPTSTR_ipcrm "m*M*s*S*q*Q*"
+#ifdef CLEANUP_ipcrm
+#undef CLEANUP_ipcrm
+#undef FOR_ipcrm
+#undef FLAG_Q
+#undef FLAG_q
+#undef FLAG_S
+#undef FLAG_s
+#undef FLAG_M
+#undef FLAG_m
+#endif
+
+// ipcs   acptulsqmi#
+#undef OPTSTR_ipcs
+#define OPTSTR_ipcs "acptulsqmi#"
+#ifdef CLEANUP_ipcs
+#undef CLEANUP_ipcs
+#undef FOR_ipcs
+#undef FLAG_i
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// jobs   lnprs
+#undef OPTSTR_jobs
+#define OPTSTR_jobs "lnprs"
+#ifdef CLEANUP_jobs
+#undef CLEANUP_jobs
+#undef FOR_jobs
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#endif
+
+// kill   ?ls: 
+#undef OPTSTR_kill
+#define OPTSTR_kill "?ls: "
+#ifdef CLEANUP_kill
+#undef CLEANUP_kill
+#undef FOR_kill
+#undef FLAG_s
+#undef FLAG_l
+#endif
+
+// killall   ?s:ilqvw
+#undef OPTSTR_killall
+#define OPTSTR_killall "?s:ilqvw"
+#ifdef CLEANUP_killall
+#undef CLEANUP_killall
+#undef FOR_killall
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_l
+#undef FLAG_i
+#undef FLAG_s
+#endif
+
+// killall5   ?o*ls: [!lo][!ls]
+#undef OPTSTR_killall5
+#define OPTSTR_killall5 "?o*ls: [!lo][!ls]"
+#ifdef CLEANUP_killall5
+#undef CLEANUP_killall5
+#undef FOR_killall5
+#undef FLAG_s
+#undef FLAG_l
+#undef FLAG_o
+#endif
+
+// klogd   c#<1>8n
+#undef OPTSTR_klogd
+#define OPTSTR_klogd "c#<1>8n"
+#ifdef CLEANUP_klogd
+#undef CLEANUP_klogd
+#undef FOR_klogd
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// last   f:W
+#undef OPTSTR_last
+#define OPTSTR_last "f:W"
+#ifdef CLEANUP_last
+#undef CLEANUP_last
+#undef FOR_last
+#undef FLAG_W
+#undef FLAG_f
+#endif
+
+// link   <2>2
+#undef OPTSTR_link
+#define OPTSTR_link "<2>2"
+#ifdef CLEANUP_link
+#undef CLEANUP_link
+#undef FOR_link
+#endif
+
+// linux32    
+#undef OPTSTR_linux32
+#define OPTSTR_linux32 0
+#ifdef CLEANUP_linux32
+#undef CLEANUP_linux32
+#undef FOR_linux32
+#endif
+
+// ln <1rt:Tvnfs <1rt:Tvnfs
+#undef OPTSTR_ln
+#define OPTSTR_ln "<1rt:Tvnfs"
+#ifdef CLEANUP_ln
+#undef CLEANUP_ln
+#undef FOR_ln
+#undef FLAG_s
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_r
+#endif
+
+// load_policy   <1>1
+#undef OPTSTR_load_policy
+#define OPTSTR_load_policy "<1>1"
+#ifdef CLEANUP_load_policy
+#undef CLEANUP_load_policy
+#undef FOR_load_policy
+#endif
+
+// local    
+#undef OPTSTR_local
+#define OPTSTR_local 0
+#ifdef CLEANUP_local
+#undef CLEANUP_local
+#undef FOR_local
+#endif
+
+// log   p:t:
+#undef OPTSTR_log
+#define OPTSTR_log "p:t:"
+#ifdef CLEANUP_log
+#undef CLEANUP_log
+#undef FOR_log
+#undef FLAG_t
+#undef FLAG_p
+#endif
+
+// logger   t:p:s
+#undef OPTSTR_logger
+#define OPTSTR_logger "t:p:s"
+#ifdef CLEANUP_logger
+#undef CLEANUP_logger
+#undef FOR_logger
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_t
+#endif
+
+// login   >1f:ph:
+#undef OPTSTR_login
+#define OPTSTR_login ">1f:ph:"
+#ifdef CLEANUP_login
+#undef CLEANUP_login
+#undef FOR_login
+#undef FLAG_h
+#undef FLAG_p
+#undef FLAG_f
+#endif
+
+// logname   >0
+#undef OPTSTR_logname
+#define OPTSTR_logname ">0"
+#ifdef CLEANUP_logname
+#undef CLEANUP_logname
+#undef FOR_logname
+#endif
+
+// logpath    
+#undef OPTSTR_logpath
+#define OPTSTR_logpath 0
+#ifdef CLEANUP_logpath
+#undef CLEANUP_logpath
+#undef FOR_logpath
+#endif
+
+// losetup   >2S(sizelimit)#s(show)ro#j:fdcaD[!afj]
+#undef OPTSTR_losetup
+#define OPTSTR_losetup ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]"
+#ifdef CLEANUP_losetup
+#undef CLEANUP_losetup
+#undef FOR_losetup
+#undef FLAG_D
+#undef FLAG_a
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_f
+#undef FLAG_j
+#undef FLAG_o
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_S
+#endif
+
+// ls (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ] (sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]
+#undef OPTSTR_ls
+#define OPTSTR_ls "(sort):(color):;(full-time)(show-control-chars)ÿ(block-size)#=1024<1¡(group-directories-first)þZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-kÿ]"
+#ifdef CLEANUP_ls
+#undef CLEANUP_ls
+#undef FOR_ls
+#undef FLAG_1
+#undef FLAG_x
+#undef FLAG_w
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_k
+#undef FLAG_i
+#undef FLAG_h
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_b
+#undef FLAG_a
+#undef FLAG_X
+#undef FLAG_U
+#undef FLAG_S
+#undef FLAG_R
+#undef FLAG_N
+#undef FLAG_L
+#undef FLAG_H
+#undef FLAG_F
+#undef FLAG_C
+#undef FLAG_A
+#undef FLAG_o
+#undef FLAG_g
+#undef FLAG_Z
+#undef FLAG_X7E
+#undef FLAG_X21
+#undef FLAG_X7F
+#undef FLAG_show_control_chars
+#undef FLAG_full_time
+#undef FLAG_color
+#undef FLAG_sort
+#endif
+
+// lsattr   ldapvR
+#undef OPTSTR_lsattr
+#define OPTSTR_lsattr "ldapvR"
+#ifdef CLEANUP_lsattr
+#undef CLEANUP_lsattr
+#undef FOR_lsattr
+#undef FLAG_R
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_a
+#undef FLAG_d
+#undef FLAG_l
+#endif
+
+// lsmod    
+#undef OPTSTR_lsmod
+#define OPTSTR_lsmod 0
+#ifdef CLEANUP_lsmod
+#undef CLEANUP_lsmod
+#undef FOR_lsmod
+#endif
+
+// lsof   lp*t
+#undef OPTSTR_lsof
+#define OPTSTR_lsof "lp*t"
+#ifdef CLEANUP_lsof
+#undef CLEANUP_lsof
+#undef FOR_lsof
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_l
+#endif
+
+// lspci   emkn@x@i:
+#undef OPTSTR_lspci
+#define OPTSTR_lspci "emkn@x@i:"
+#ifdef CLEANUP_lspci
+#undef CLEANUP_lspci
+#undef FOR_lspci
+#undef FLAG_i
+#undef FLAG_x
+#undef FLAG_n
+#undef FLAG_k
+#undef FLAG_m
+#undef FLAG_e
+#endif
+
+// lsusb   i:
+#undef OPTSTR_lsusb
+#define OPTSTR_lsusb "i:"
+#ifdef CLEANUP_lsusb
+#undef CLEANUP_lsusb
+#undef FOR_lsusb
+#undef FLAG_i
+#endif
+
+// makedevs   <1>1d:
+#undef OPTSTR_makedevs
+#define OPTSTR_makedevs "<1>1d:"
+#ifdef CLEANUP_makedevs
+#undef CLEANUP_makedevs
+#undef FOR_makedevs
+#undef FLAG_d
+#endif
+
+// man   k:M:
+#undef OPTSTR_man
+#define OPTSTR_man "k:M:"
+#ifdef CLEANUP_man
+#undef CLEANUP_man
+#undef FOR_man
+#undef FLAG_M
+#undef FLAG_k
+#endif
+
+// mcookie   v(verbose)V(version)
+#undef OPTSTR_mcookie
+#define OPTSTR_mcookie "v(verbose)V(version)"
+#ifdef CLEANUP_mcookie
+#undef CLEANUP_mcookie
+#undef FOR_mcookie
+#undef FLAG_V
+#undef FLAG_v
+#endif
+
+// md5sum bc(check)s(status)[!bc] bc(check)s(status)[!bc]
+#undef OPTSTR_md5sum
+#define OPTSTR_md5sum "bc(check)s(status)[!bc]"
+#ifdef CLEANUP_md5sum
+#undef CLEANUP_md5sum
+#undef FOR_md5sum
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_b
+#endif
+
+// mdev   s
+#undef OPTSTR_mdev
+#define OPTSTR_mdev "s"
+#ifdef CLEANUP_mdev
+#undef CLEANUP_mdev
+#undef FOR_mdev
+#undef FLAG_s
+#endif
+
+// memeater   <1>1M
+#undef OPTSTR_memeater
+#define OPTSTR_memeater "<1>1M"
+#ifdef CLEANUP_memeater
+#undef CLEANUP_memeater
+#undef FOR_memeater
+#undef FLAG_M
+#endif
+
+// microcom <1>1s#=115200X <1>1s#=115200X
+#undef OPTSTR_microcom
+#define OPTSTR_microcom "<1>1s#=115200X"
+#ifdef CLEANUP_microcom
+#undef CLEANUP_microcom
+#undef FOR_microcom
+#undef FLAG_X
+#undef FLAG_s
+#endif
+
+// mix   c:d:l#r#
+#undef OPTSTR_mix
+#define OPTSTR_mix "c:d:l#r#"
+#ifdef CLEANUP_mix
+#undef CLEANUP_mix
+#undef FOR_mix
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+// mkdir <1vp(parent)(parents)m: <1Z:vp(parent)(parents)m:
+#undef OPTSTR_mkdir
+#define OPTSTR_mkdir "<1vp(parent)(parents)m:"
+#ifdef CLEANUP_mkdir
+#undef CLEANUP_mkdir
+#undef FOR_mkdir
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_v
+#undef FLAG_Z
+#endif
+
+// mke2fs   <1>2g:Fnqm#N#i#b#
+#undef OPTSTR_mke2fs
+#define OPTSTR_mke2fs "<1>2g:Fnqm#N#i#b#"
+#ifdef CLEANUP_mke2fs
+#undef CLEANUP_mke2fs
+#undef FOR_mke2fs
+#undef FLAG_b
+#undef FLAG_i
+#undef FLAG_N
+#undef FLAG_m
+#undef FLAG_q
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_g
+#endif
+
+// mkfifo   <1Z:m:
+#undef OPTSTR_mkfifo
+#define OPTSTR_mkfifo "<1Z:m:"
+#ifdef CLEANUP_mkfifo
+#undef CLEANUP_mkfifo
+#undef FOR_mkfifo
+#undef FLAG_m
+#undef FLAG_Z
+#endif
+
+// mknod   <2>4m(mode):Z:
+#undef OPTSTR_mknod
+#define OPTSTR_mknod "<2>4m(mode):Z:"
+#ifdef CLEANUP_mknod
+#undef CLEANUP_mknod
+#undef FOR_mknod
+#undef FLAG_Z
+#undef FLAG_m
+#endif
+
+// mkpasswd   >2S:m:P#=0<0
+#undef OPTSTR_mkpasswd
+#define OPTSTR_mkpasswd ">2S:m:P#=0<0"
+#ifdef CLEANUP_mkpasswd
+#undef CLEANUP_mkpasswd
+#undef FOR_mkpasswd
+#undef FLAG_P
+#undef FLAG_m
+#undef FLAG_S
+#endif
+
+// mkswap   <1>1L:
+#undef OPTSTR_mkswap
+#define OPTSTR_mkswap "<1>1L:"
+#ifdef CLEANUP_mkswap
+#undef CLEANUP_mkswap
+#undef FOR_mkswap
+#undef FLAG_L
+#endif
+
+// mktemp >1(tmpdir);:uqd(directory)p:t >1(tmpdir);:uqd(directory)p:t
+#undef OPTSTR_mktemp
+#define OPTSTR_mktemp ">1(tmpdir);:uqd(directory)p:t"
+#ifdef CLEANUP_mktemp
+#undef CLEANUP_mktemp
+#undef FOR_mktemp
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_d
+#undef FLAG_q
+#undef FLAG_u
+#undef FLAG_tmpdir
+#endif
+
+// modinfo   <1b:k:F:0
+#undef OPTSTR_modinfo
+#define OPTSTR_modinfo "<1b:k:F:0"
+#ifdef CLEANUP_modinfo
+#undef CLEANUP_modinfo
+#undef FOR_modinfo
+#undef FLAG_0
+#undef FLAG_F
+#undef FLAG_k
+#undef FLAG_b
+#endif
+
+// modprobe   alrqvsDbd*
+#undef OPTSTR_modprobe
+#define OPTSTR_modprobe "alrqvsDbd*"
+#ifdef CLEANUP_modprobe
+#undef CLEANUP_modprobe
+#undef FOR_modprobe
+#undef FLAG_d
+#undef FLAG_b
+#undef FLAG_D
+#undef FLAG_s
+#undef FLAG_v
+#undef FLAG_q
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_a
+#endif
+
+// more    
+#undef OPTSTR_more
+#define OPTSTR_more 0
+#ifdef CLEANUP_more
+#undef CLEANUP_more
+#undef FOR_more
+#endif
+
+// mount   ?RO:afnrvwt:o*[-rw]
+#undef OPTSTR_mount
+#define OPTSTR_mount "?RO:afnrvwt:o*[-rw]"
+#ifdef CLEANUP_mount
+#undef CLEANUP_mount
+#undef FOR_mount
+#undef FLAG_o
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_a
+#undef FLAG_O
+#undef FLAG_R
+#endif
+
+// mountpoint   <1qdx[-dx]
+#undef OPTSTR_mountpoint
+#define OPTSTR_mountpoint "<1qdx[-dx]"
+#ifdef CLEANUP_mountpoint
+#undef CLEANUP_mountpoint
+#undef FOR_mountpoint
+#undef FLAG_x
+#undef FLAG_d
+#undef FLAG_q
+#endif
+
+// mv <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni] <1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]
+#undef OPTSTR_mv
+#define OPTSTR_mv "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]"
+#ifdef CLEANUP_mv
+#undef CLEANUP_mv
+#undef FOR_mv
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_F
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_x
+#endif
+
+// nbd_client   <3>3b#<1>4294967295=4096ns
+#undef OPTSTR_nbd_client
+#define OPTSTR_nbd_client "<3>3b#<1>4294967295=4096ns"
+#ifdef CLEANUP_nbd_client
+#undef CLEANUP_nbd_client
+#undef FOR_nbd_client
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#endif
+
+// nbd_server   <1>1r
+#undef OPTSTR_nbd_server
+#define OPTSTR_nbd_server "<1>1r"
+#ifdef CLEANUP_nbd_server
+#undef CLEANUP_nbd_server
+#undef FOR_nbd_server
+#undef FLAG_r
+#endif
+
+// netcat   ^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]
+#undef OPTSTR_netcat
+#define OPTSTR_netcat "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]"
+#ifdef CLEANUP_netcat
+#undef CLEANUP_netcat
+#undef FOR_netcat
+#undef FLAG_z
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_s
+#undef FLAG_q
+#undef FLAG_p
+#undef FLAG_W
+#undef FLAG_w
+#undef FLAG_L
+#undef FLAG_l
+#undef FLAG_E
+#undef FLAG_t
+#endif
+
+// netstat   pWrxwutneal
+#undef OPTSTR_netstat
+#define OPTSTR_netstat "pWrxwutneal"
+#ifdef CLEANUP_netstat
+#undef CLEANUP_netstat
+#undef FOR_netstat
+#undef FLAG_l
+#undef FLAG_a
+#undef FLAG_e
+#undef FLAG_n
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_w
+#undef FLAG_x
+#undef FLAG_r
+#undef FLAG_W
+#undef FLAG_p
+#endif
+
+// nice   ^<1n#
+#undef OPTSTR_nice
+#define OPTSTR_nice "^<1n#"
+#ifdef CLEANUP_nice
+#undef CLEANUP_nice
+#undef FOR_nice
+#undef FLAG_n
+#endif
+
+// nl v#=1l#w#<0=6b:n:s:E v#=1l#w#<0=6b:n:s:E
+#undef OPTSTR_nl
+#define OPTSTR_nl "v#=1l#w#<0=6b:n:s:E"
+#ifdef CLEANUP_nl
+#undef CLEANUP_nl
+#undef FOR_nl
+#undef FLAG_E
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_b
+#undef FLAG_w
+#undef FLAG_l
+#undef FLAG_v
+#endif
+
+// nohup   <1^
+#undef OPTSTR_nohup
+#define OPTSTR_nohup "<1^"
+#ifdef CLEANUP_nohup
+#undef CLEANUP_nohup
+#undef FOR_nohup
+#endif
+
+// nproc   (all)
+#undef OPTSTR_nproc
+#define OPTSTR_nproc "(all)"
+#ifdef CLEANUP_nproc
+#undef CLEANUP_nproc
+#undef FOR_nproc
+#undef FLAG_all
+#endif
+
+// nsenter   <1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_nsenter
+#define OPTSTR_nsenter "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_nsenter
+#undef CLEANUP_nsenter
+#undef FOR_nsenter
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_t
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// od j#vw#<1=16N#xsodcbA:t* j#vw#<1=16N#xsodcbA:t*
+#undef OPTSTR_od
+#define OPTSTR_od "j#vw#<1=16N#xsodcbA:t*"
+#ifdef CLEANUP_od
+#undef CLEANUP_od
+#undef FOR_od
+#undef FLAG_t
+#undef FLAG_A
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_o
+#undef FLAG_s
+#undef FLAG_x
+#undef FLAG_N
+#undef FLAG_w
+#undef FLAG_v
+#undef FLAG_j
+#endif
+
+// oneit   ^<1nc:p3[!pn]
+#undef OPTSTR_oneit
+#define OPTSTR_oneit "^<1nc:p3[!pn]"
+#ifdef CLEANUP_oneit
+#undef CLEANUP_oneit
+#undef FOR_oneit
+#undef FLAG_3
+#undef FLAG_p
+#undef FLAG_c
+#undef FLAG_n
+#endif
+
+// openvt   ^<1c#<1>63sw
+#undef OPTSTR_openvt
+#define OPTSTR_openvt "^<1c#<1>63sw"
+#ifdef CLEANUP_openvt
+#undef CLEANUP_openvt
+#undef FOR_openvt
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_c
+#endif
+
+// partprobe   <1
+#undef OPTSTR_partprobe
+#define OPTSTR_partprobe "<1"
+#ifdef CLEANUP_partprobe
+#undef CLEANUP_partprobe
+#undef FOR_partprobe
+#endif
+
+// passwd   >1a:dlu
+#undef OPTSTR_passwd
+#define OPTSTR_passwd ">1a:dlu"
+#ifdef CLEANUP_passwd
+#undef CLEANUP_passwd
+#undef FOR_passwd
+#undef FLAG_u
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#endif
+
+// paste d:s d:s
+#undef OPTSTR_paste
+#define OPTSTR_paste "d:s"
+#ifdef CLEANUP_paste
+#undef CLEANUP_paste
+#undef FOR_paste
+#undef FLAG_s
+#undef FLAG_d
+#endif
+
+// patch >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv] >2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]
+#undef OPTSTR_patch
+#define OPTSTR_patch ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]"
+#ifdef CLEANUP_patch
+#undef CLEANUP_patch
+#undef FOR_patch
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_d
+#undef FLAG_v
+#undef FLAG_p
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_dry_run
+#undef FLAG_no_backup_if_mismatch
+#endif
+
+// pgrep   ?cld:u*U*t*s*P*g*G*fnovxL:[-no]
+#undef OPTSTR_pgrep
+#define OPTSTR_pgrep "?cld:u*U*t*s*P*g*G*fnovxL:[-no]"
+#ifdef CLEANUP_pgrep
+#undef CLEANUP_pgrep
+#undef FOR_pgrep
+#undef FLAG_L
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// pidof   so:x
+#undef OPTSTR_pidof
+#define OPTSTR_pidof "so:x"
+#ifdef CLEANUP_pidof
+#undef CLEANUP_pidof
+#undef FOR_pidof
+#undef FLAG_x
+#undef FLAG_o
+#undef FLAG_s
+#endif
+
+// ping   <1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]
+#undef OPTSTR_ping
+#define OPTSTR_ping "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]"
+#ifdef CLEANUP_ping
+#undef CLEANUP_ping
+#undef FOR_ping
+#undef FLAG_I
+#undef FLAG_6
+#undef FLAG_4
+#undef FLAG_f
+#undef FLAG_q
+#undef FLAG_w
+#undef FLAG_W
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_t
+#undef FLAG_m
+#endif
+
+// pivot_root   <2>2
+#undef OPTSTR_pivot_root
+#define OPTSTR_pivot_root "<2>2"
+#ifdef CLEANUP_pivot_root
+#undef CLEANUP_pivot_root
+#undef FOR_pivot_root
+#endif
+
+// pkill   ?Vu*U*t*s*P*g*G*fnovxl:[-no]
+#undef OPTSTR_pkill
+#define OPTSTR_pkill "?Vu*U*t*s*P*g*G*fnovxl:[-no]"
+#ifdef CLEANUP_pkill
+#undef CLEANUP_pkill
+#undef FOR_pkill
+#undef FLAG_l
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_P
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_V
+#endif
+
+// pmap   <1pqx
+#undef OPTSTR_pmap
+#define OPTSTR_pmap "<1pqx"
+#ifdef CLEANUP_pmap
+#undef CLEANUP_pmap
+#undef FOR_pmap
+#undef FLAG_x
+#undef FLAG_q
+#undef FLAG_p
+#endif
+
+// printenv   (null)0
+#undef OPTSTR_printenv
+#define OPTSTR_printenv "(null)0"
+#ifdef CLEANUP_printenv
+#undef CLEANUP_printenv
+#undef FOR_printenv
+#undef FLAG_0
+#undef FLAG_null
+#endif
+
+// printf <1?^ <1?^
+#undef OPTSTR_printf
+#define OPTSTR_printf "<1?^"
+#ifdef CLEANUP_printf
+#undef CLEANUP_printf
+#undef FOR_printf
+#endif
+
+// ps   k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]
+#undef OPTSTR_ps
+#define OPTSTR_ps "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]"
+#ifdef CLEANUP_ps
+#undef CLEANUP_ps
+#undef FOR_ps
+#undef FLAG_Z
+#undef FLAG_w
+#undef FLAG_G
+#undef FLAG_g
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_M
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_P
+#undef FLAG_k
+#endif
+
+// pwd >0LP[-LP] >0LP[-LP]
+#undef OPTSTR_pwd
+#define OPTSTR_pwd ">0LP[-LP]"
+#ifdef CLEANUP_pwd
+#undef CLEANUP_pwd
+#undef FOR_pwd
+#undef FLAG_P
+#undef FLAG_L
+#endif
+
+// pwdx   <1a
+#undef OPTSTR_pwdx
+#define OPTSTR_pwdx "<1a"
+#ifdef CLEANUP_pwdx
+#undef CLEANUP_pwdx
+#undef FOR_pwdx
+#undef FLAG_a
+#endif
+
+// pwgen   >2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]
+#undef OPTSTR_pwgen
+#define OPTSTR_pwgen ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]"
+#ifdef CLEANUP_pwgen
+#undef CLEANUP_pwgen
+#undef FOR_pwgen
+#undef FLAG_0
+#undef FLAG_A
+#undef FLAG_v
+#undef FLAG_1
+#undef FLAG_C
+#undef FLAG_h
+#undef FLAG_B
+#undef FLAG_s
+#undef FLAG_y
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// readahead    
+#undef OPTSTR_readahead
+#define OPTSTR_readahead 0
+#ifdef CLEANUP_readahead
+#undef CLEANUP_readahead
+#undef FOR_readahead
+#endif
+
+// readelf   <1(dyn-syms)Aadehlnp:SsWx:
+#undef OPTSTR_readelf
+#define OPTSTR_readelf "<1(dyn-syms)Aadehlnp:SsWx:"
+#ifdef CLEANUP_readelf
+#undef CLEANUP_readelf
+#undef FOR_readelf
+#undef FLAG_x
+#undef FLAG_W
+#undef FLAG_s
+#undef FLAG_S
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_h
+#undef FLAG_e
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_A
+#undef FLAG_dyn_syms
+#endif
+
+// readlink <1vnf(canonicalize)emqz[-mef][-qv] <1vnf(canonicalize)emqz[-mef][-qv]
+#undef OPTSTR_readlink
+#define OPTSTR_readlink "<1vnf(canonicalize)emqz[-mef][-qv]"
+#ifdef CLEANUP_readlink
+#undef CLEANUP_readlink
+#undef FOR_readlink
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_v
+#endif
+
+// realpath <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me] <1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]
+#undef OPTSTR_realpath
+#define OPTSTR_realpath "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]"
+#ifdef CLEANUP_realpath
+#undef CLEANUP_realpath
+#undef FOR_realpath
+#undef FLAG_z
+#undef FLAG_q
+#undef FLAG_m
+#undef FLAG_e
+#undef FLAG_P
+#undef FLAG_L
+#undef FLAG_s
+#undef FLAG_R
+#undef FLAG_relative_base
+#endif
+
+// reboot   d:fn
+#undef OPTSTR_reboot
+#define OPTSTR_reboot "d:fn"
+#ifdef CLEANUP_reboot
+#undef CLEANUP_reboot
+#undef FOR_reboot
+#undef FLAG_n
+#undef FLAG_f
+#undef FLAG_d
+#endif
+
+// renice   <1gpun#|
+#undef OPTSTR_renice
+#define OPTSTR_renice "<1gpun#|"
+#ifdef CLEANUP_renice
+#undef CLEANUP_renice
+#undef FOR_renice
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_g
+#endif
+
+// reset    
+#undef OPTSTR_reset
+#define OPTSTR_reset 0
+#ifdef CLEANUP_reset
+#undef CLEANUP_reset
+#undef FOR_reset
+#endif
+
+// restorecon   <1DFnRrv
+#undef OPTSTR_restorecon
+#define OPTSTR_restorecon "<1DFnRrv"
+#ifdef CLEANUP_restorecon
+#undef CLEANUP_restorecon
+#undef FOR_restorecon
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_n
+#undef FLAG_F
+#undef FLAG_D
+#endif
+
+// rev    
+#undef OPTSTR_rev
+#define OPTSTR_rev 0
+#ifdef CLEANUP_rev
+#undef CLEANUP_rev
+#undef FOR_rev
+#endif
+
+// rfkill   <1>2
+#undef OPTSTR_rfkill
+#define OPTSTR_rfkill "<1>2"
+#ifdef CLEANUP_rfkill
+#undef CLEANUP_rfkill
+#undef FOR_rfkill
+#endif
+
+// rm f(force)iRrv[-fi] f(force)iRrv[-fi]
+#undef OPTSTR_rm
+#define OPTSTR_rm "f(force)iRrv[-fi]"
+#ifdef CLEANUP_rm
+#undef CLEANUP_rm
+#undef FOR_rm
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_R
+#undef FLAG_i
+#undef FLAG_f
+#endif
+
+// rmdir <1(ignore-fail-on-non-empty)p(parents) <1(ignore-fail-on-non-empty)p(parents)
+#undef OPTSTR_rmdir
+#define OPTSTR_rmdir "<1(ignore-fail-on-non-empty)p(parents)"
+#ifdef CLEANUP_rmdir
+#undef CLEANUP_rmdir
+#undef FOR_rmdir
+#undef FLAG_p
+#undef FLAG_ignore_fail_on_non_empty
+#endif
+
+// rmmod   <1wf
+#undef OPTSTR_rmmod
+#define OPTSTR_rmmod "<1wf"
+#ifdef CLEANUP_rmmod
+#undef CLEANUP_rmmod
+#undef FOR_rmmod
+#undef FLAG_f
+#undef FLAG_w
+#endif
+
+// route   ?neA:
+#undef OPTSTR_route
+#define OPTSTR_route "?neA:"
+#ifdef CLEANUP_route
+#undef CLEANUP_route
+#undef FOR_route
+#undef FLAG_A
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// rtcwake   (list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]
+#undef OPTSTR_rtcwake
+#define OPTSTR_rtcwake "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]"
+#ifdef CLEANUP_rtcwake
+#undef CLEANUP_rtcwake
+#undef FOR_rtcwake
+#undef FLAG_v
+#undef FLAG_u
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_a
+#undef FLAG_auto
+#undef FLAG_list_modes
+#endif
+
+// runcon   ^<2
+#undef OPTSTR_runcon
+#define OPTSTR_runcon "^<2"
+#ifdef CLEANUP_runcon
+#undef CLEANUP_runcon
+#undef FOR_runcon
+#endif
+
+// sed (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er] (help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]
+#undef OPTSTR_sed
+#define OPTSTR_sed "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]"
+#ifdef CLEANUP_sed
+#undef CLEANUP_sed
+#undef FOR_sed
+#undef FLAG_s
+#undef FLAG_z
+#undef FLAG_r
+#undef FLAG_E
+#undef FLAG_n
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_e
+#undef FLAG_tarxform
+#undef FLAG_version
+#undef FLAG_help
+#endif
+
+// sendevent   <4>4
+#undef OPTSTR_sendevent
+#define OPTSTR_sendevent "<4>4"
+#ifdef CLEANUP_sendevent
+#undef CLEANUP_sendevent
+#undef FOR_sendevent
+#endif
+
+// seq <1>3?f:s:w[!fw] <1>3?f:s:w[!fw]
+#undef OPTSTR_seq
+#define OPTSTR_seq "<1>3?f:s:w[!fw]"
+#ifdef CLEANUP_seq
+#undef CLEANUP_seq
+#undef FOR_seq
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// set    
+#undef OPTSTR_set
+#define OPTSTR_set 0
+#ifdef CLEANUP_set
+#undef CLEANUP_set
+#undef FOR_set
+#endif
+
+// setenforce   <1>1
+#undef OPTSTR_setenforce
+#define OPTSTR_setenforce "<1>1"
+#ifdef CLEANUP_setenforce
+#undef CLEANUP_setenforce
+#undef FOR_setenforce
+#endif
+
+// setfattr   hn:|v:x:|[!xv]
+#undef OPTSTR_setfattr
+#define OPTSTR_setfattr "hn:|v:x:|[!xv]"
+#ifdef CLEANUP_setfattr
+#undef CLEANUP_setfattr
+#undef FOR_setfattr
+#undef FLAG_x
+#undef FLAG_v
+#undef FLAG_n
+#undef FLAG_h
+#endif
+
+// setsid ^<1wc@d[!dc] ^<1wc@d[!dc]
+#undef OPTSTR_setsid
+#define OPTSTR_setsid "^<1wc@d[!dc]"
+#ifdef CLEANUP_setsid
+#undef CLEANUP_setsid
+#undef FOR_setsid
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_w
+#endif
+
+// sh   0^(noediting)(noprofile)(norc)sc:i
+#undef OPTSTR_sh
+#define OPTSTR_sh "0^(noediting)(noprofile)(norc)sc:i"
+#ifdef CLEANUP_sh
+#undef CLEANUP_sh
+#undef FOR_sh
+#undef FLAG_i
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_norc
+#undef FLAG_noprofile
+#undef FLAG_noediting
+#endif
+
+// sha3sum   bSa#<128>512=224
+#undef OPTSTR_sha3sum
+#define OPTSTR_sha3sum "bSa#<128>512=224"
+#ifdef CLEANUP_sha3sum
+#undef CLEANUP_sha3sum
+#undef FOR_sha3sum
+#undef FLAG_a
+#undef FLAG_S
+#undef FLAG_b
+#endif
+
+// shift   >1
+#undef OPTSTR_shift
+#define OPTSTR_shift ">1"
+#ifdef CLEANUP_shift
+#undef CLEANUP_shift
+#undef FOR_shift
+#endif
+
+// shred   <1zxus#<1n#<1o#<0f
+#undef OPTSTR_shred
+#define OPTSTR_shred "<1zxus#<1n#<1o#<0f"
+#ifdef CLEANUP_shred
+#undef CLEANUP_shred
+#undef FOR_shred
+#undef FLAG_f
+#undef FLAG_o
+#undef FLAG_n
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_x
+#undef FLAG_z
+#endif
+
+// shuf   zen#<0
+#undef OPTSTR_shuf
+#define OPTSTR_shuf "zen#<0"
+#ifdef CLEANUP_shuf
+#undef CLEANUP_shuf
+#undef FOR_shuf
+#undef FLAG_n
+#undef FLAG_e
+#undef FLAG_z
+#endif
+
+// skeleton   (walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a
+#undef OPTSTR_skeleton
+#define OPTSTR_skeleton "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a"
+#ifdef CLEANUP_skeleton
+#undef CLEANUP_skeleton
+#undef FOR_skeleton
+#undef FLAG_a
+#undef FLAG_b
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_g
+#undef FLAG_h
+#undef FLAG_also
+#undef FLAG_blubber
+#undef FLAG_walrus
+#endif
+
+// skeleton_alias   b#dq
+#undef OPTSTR_skeleton_alias
+#define OPTSTR_skeleton_alias "b#dq"
+#ifdef CLEANUP_skeleton_alias
+#undef CLEANUP_skeleton_alias
+#undef FOR_skeleton_alias
+#undef FLAG_q
+#undef FLAG_d
+#undef FLAG_b
+#endif
+
+// sleep <1 <1
+#undef OPTSTR_sleep
+#define OPTSTR_sleep "<1"
+#ifdef CLEANUP_sleep
+#undef CLEANUP_sleep
+#undef FOR_sleep
+#endif
+
+// sntp   >1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]
+#undef OPTSTR_sntp
+#define OPTSTR_sntp ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]"
+#ifdef CLEANUP_sntp
+#undef CLEANUP_sntp
+#undef FOR_sntp
+#undef FLAG_r
+#undef FLAG_q
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_S
+#undef FLAG_m
+#undef FLAG_M
+#endif
+
+// sort gS:T:mo:k*t:xVbMCcszdfirun gS:T:mo:k*t:xVbMCcszdfirun
+#undef OPTSTR_sort
+#define OPTSTR_sort "gS:T:mo:k*t:xVbMCcszdfirun"
+#ifdef CLEANUP_sort
+#undef CLEANUP_sort
+#undef FOR_sort
+#undef FLAG_n
+#undef FLAG_u
+#undef FLAG_r
+#undef FLAG_i
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_z
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#undef FLAG_M
+#undef FLAG_b
+#undef FLAG_V
+#undef FLAG_x
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_o
+#undef FLAG_m
+#undef FLAG_T
+#undef FLAG_S
+#undef FLAG_g
+#endif
+
+// source   <1
+#undef OPTSTR_source
+#define OPTSTR_source "<1"
+#ifdef CLEANUP_source
+#undef CLEANUP_source
+#undef FOR_source
+#endif
+
+// split   >2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]
+#undef OPTSTR_split
+#define OPTSTR_split ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]"
+#ifdef CLEANUP_split
+#undef CLEANUP_split
+#undef FOR_split
+#undef FLAG_n
+#undef FLAG_l
+#undef FLAG_b
+#undef FLAG_a
+#endif
+
+// stat <1c:(format)fLt <1c:(format)fLt
+#undef OPTSTR_stat
+#define OPTSTR_stat "<1c:(format)fLt"
+#ifdef CLEANUP_stat
+#undef CLEANUP_stat
+#undef FOR_stat
+#undef FLAG_t
+#undef FLAG_L
+#undef FLAG_f
+#undef FLAG_c
+#endif
+
+// strace   ^p#s#v
+#undef OPTSTR_strace
+#define OPTSTR_strace "^p#s#v"
+#ifdef CLEANUP_strace
+#undef CLEANUP_strace
+#undef FOR_strace
+#undef FLAG_v
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// strings   t:an#=4<1fo
+#undef OPTSTR_strings
+#define OPTSTR_strings "t:an#=4<1fo"
+#ifdef CLEANUP_strings
+#undef CLEANUP_strings
+#undef FOR_strings
+#undef FLAG_o
+#undef FLAG_f
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_t
+#endif
+
+// stty   ?aF:g[!ag]
+#undef OPTSTR_stty
+#define OPTSTR_stty "?aF:g[!ag]"
+#ifdef CLEANUP_stty
+#undef CLEANUP_stty
+#undef FOR_stty
+#undef FLAG_g
+#undef FLAG_F
+#undef FLAG_a
+#endif
+
+// su   ^lmpu:g:c:s:[!lmp]
+#undef OPTSTR_su
+#define OPTSTR_su "^lmpu:g:c:s:[!lmp]"
+#ifdef CLEANUP_su
+#undef CLEANUP_su
+#undef FOR_su
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_g
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_m
+#undef FLAG_l
+#endif
+
+// sulogin   t#<0=0
+#undef OPTSTR_sulogin
+#define OPTSTR_sulogin "t#<0=0"
+#ifdef CLEANUP_sulogin
+#undef CLEANUP_sulogin
+#undef FOR_sulogin
+#undef FLAG_t
+#endif
+
+// swapoff   <1>1av
+#undef OPTSTR_swapoff
+#define OPTSTR_swapoff "<1>1av"
+#ifdef CLEANUP_swapoff
+#undef CLEANUP_swapoff
+#undef FOR_swapoff
+#undef FLAG_v
+#undef FLAG_a
+#endif
+
+// swapon   <1>1p#<0>32767d
+#undef OPTSTR_swapon
+#define OPTSTR_swapon "<1>1p#<0>32767d"
+#ifdef CLEANUP_swapon
+#undef CLEANUP_swapon
+#undef FOR_swapon
+#undef FLAG_d
+#undef FLAG_p
+#endif
+
+// switch_root   <2c:h
+#undef OPTSTR_switch_root
+#define OPTSTR_switch_root "<2c:h"
+#ifdef CLEANUP_switch_root
+#undef CLEANUP_switch_root
+#undef FOR_switch_root
+#undef FLAG_h
+#undef FLAG_c
+#endif
+
+// sync    
+#undef OPTSTR_sync
+#define OPTSTR_sync 0
+#ifdef CLEANUP_sync
+#undef CLEANUP_sync
+#undef FOR_sync
+#endif
+
+// sysctl   ^neNqwpaA[!ap][!aq][!aw][+aA]
+#undef OPTSTR_sysctl
+#define OPTSTR_sysctl "^neNqwpaA[!ap][!aq][!aw][+aA]"
+#ifdef CLEANUP_sysctl
+#undef CLEANUP_sysctl
+#undef FOR_sysctl
+#undef FLAG_A
+#undef FLAG_a
+#undef FLAG_p
+#undef FLAG_w
+#undef FLAG_q
+#undef FLAG_N
+#undef FLAG_e
+#undef FLAG_n
+#endif
+
+// syslogd   >0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD
+#undef OPTSTR_syslogd
+#define OPTSTR_syslogd ">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD"
+#ifdef CLEANUP_syslogd
+#undef CLEANUP_syslogd
+#undef FOR_syslogd
+#undef FLAG_D
+#undef FLAG_L
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_n
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_m
+#undef FLAG_s
+#undef FLAG_b
+#undef FLAG_R
+#undef FLAG_l
+#endif
+
+// tac    
+#undef OPTSTR_tac
+#define OPTSTR_tac 0
+#ifdef CLEANUP_tac
+#undef CLEANUP_tac
+#undef FOR_tac
+#endif
+
+// tail ?fFs:c(bytes)-n(lines)-[-cn][-fF] ?fFs:c(bytes)-n(lines)-[-cn][-fF]
+#undef OPTSTR_tail
+#define OPTSTR_tail "?fFs:c(bytes)-n(lines)-[-cn][-fF]"
+#ifdef CLEANUP_tail
+#undef CLEANUP_tail
+#undef FOR_tail
+#undef FLAG_n
+#undef FLAG_c
+#undef FLAG_s
+#undef FLAG_F
+#undef FLAG_f
+#endif
+
+// tar &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa] &(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]
+#undef OPTSTR_tar
+#define OPTSTR_tar "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]"
+#ifdef CLEANUP_tar
+#undef CLEANUP_tar
+#undef FOR_tar
+#undef FLAG_s
+#undef FLAG_a
+#undef FLAG_f
+#undef FLAG_C
+#undef FLAG_I
+#undef FLAG_T
+#undef FLAG_X
+#undef FLAG_m
+#undef FLAG_P
+#undef FLAG_O
+#undef FLAG_S
+#undef FLAG_z
+#undef FLAG_j
+#undef FLAG_J
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_x
+#undef FLAG_h
+#undef FLAG_c
+#undef FLAG_k
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_xform
+#undef FLAG_strip
+#undef FLAG_to_command
+#undef FLAG_owner
+#undef FLAG_group
+#undef FLAG_mtime
+#undef FLAG_mode
+#undef FLAG_sort
+#undef FLAG_exclude
+#undef FLAG_overwrite
+#undef FLAG_no_same_permissions
+#undef FLAG_numeric_owner
+#undef FLAG_null
+#undef FLAG_no_recursion
+#undef FLAG_full_time
+#undef FLAG_restrict
+#undef FLAG_selinux
+#undef FLAG_show_transformed_names
+#undef FLAG_wildcards_match_slash
+#undef FLAG_no_wildcards_match_slash
+#undef FLAG_wildcards
+#undef FLAG_no_wildcards
+#undef FLAG_anchored
+#undef FLAG_no_anchored
+#undef FLAG_ignore_case
+#undef FLAG_no_ignore_case
+#undef FLAG_one_file_system
+#endif
+
+// taskset   <1^pa
+#undef OPTSTR_taskset
+#define OPTSTR_taskset "<1^pa"
+#ifdef CLEANUP_taskset
+#undef CLEANUP_taskset
+#undef FOR_taskset
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// tcpsvd   ^<3c#=30<1b#=20<0C:u:l:hEv
+#undef OPTSTR_tcpsvd
+#define OPTSTR_tcpsvd "^<3c#=30<1b#=20<0C:u:l:hEv"
+#ifdef CLEANUP_tcpsvd
+#undef CLEANUP_tcpsvd
+#undef FOR_tcpsvd
+#undef FLAG_v
+#undef FLAG_E
+#undef FLAG_h
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_C
+#undef FLAG_b
+#undef FLAG_c
+#endif
+
+// tee ia ia
+#undef OPTSTR_tee
+#define OPTSTR_tee "ia"
+#ifdef CLEANUP_tee
+#undef CLEANUP_tee
+#undef FOR_tee
+#undef FLAG_a
+#undef FLAG_i
+#endif
+
+// telnet   <1>2
+#undef OPTSTR_telnet
+#define OPTSTR_telnet "<1>2"
+#ifdef CLEANUP_telnet
+#undef CLEANUP_telnet
+#undef FOR_telnet
+#endif
+
+// telnetd   w#<0b:p#<0>65535=23f:l:FSKi[!wi]
+#undef OPTSTR_telnetd
+#define OPTSTR_telnetd "w#<0b:p#<0>65535=23f:l:FSKi[!wi]"
+#ifdef CLEANUP_telnetd
+#undef CLEANUP_telnetd
+#undef FOR_telnetd
+#undef FLAG_i
+#undef FLAG_K
+#undef FLAG_S
+#undef FLAG_F
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_p
+#undef FLAG_b
+#undef FLAG_w
+#endif
+
+// test    
+#undef OPTSTR_test
+#define OPTSTR_test 0
+#ifdef CLEANUP_test
+#undef CLEANUP_test
+#undef FOR_test
+#endif
+
+// tftp   <1b#<8>65464r:l:g|p|[!gp]
+#undef OPTSTR_tftp
+#define OPTSTR_tftp "<1b#<8>65464r:l:g|p|[!gp]"
+#ifdef CLEANUP_tftp
+#undef CLEANUP_tftp
+#undef FOR_tftp
+#undef FLAG_p
+#undef FLAG_g
+#undef FLAG_l
+#undef FLAG_r
+#undef FLAG_b
+#endif
+
+// tftpd   rcu:l
+#undef OPTSTR_tftpd
+#define OPTSTR_tftpd "rcu:l"
+#ifdef CLEANUP_tftpd
+#undef CLEANUP_tftpd
+#undef FOR_tftpd
+#undef FLAG_l
+#undef FLAG_u
+#undef FLAG_c
+#undef FLAG_r
+#endif
+
+// time   <1^pv[-pv]
+#undef OPTSTR_time
+#define OPTSTR_time "<1^pv[-pv]"
+#ifdef CLEANUP_time
+#undef CLEANUP_time
+#undef FOR_time
+#undef FLAG_v
+#undef FLAG_p
+#endif
+
+// timeout <2^(foreground)(preserve-status)vk:s(signal):i <2^(foreground)(preserve-status)vk:s(signal):i
+#undef OPTSTR_timeout
+#define OPTSTR_timeout "<2^(foreground)(preserve-status)vk:s(signal):i"
+#ifdef CLEANUP_timeout
+#undef CLEANUP_timeout
+#undef FOR_timeout
+#undef FLAG_i
+#undef FLAG_s
+#undef FLAG_k
+#undef FLAG_v
+#undef FLAG_preserve_status
+#undef FLAG_foreground
+#endif
+
+// top   >0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]
+#undef OPTSTR_top
+#define OPTSTR_top ">0O*hHk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]"
+#ifdef CLEANUP_top
+#undef CLEANUP_top
+#undef FOR_top
+#undef FLAG_q
+#undef FLAG_b
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_d
+#undef FLAG_s
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_k
+#undef FLAG_H
+#undef FLAG_h
+#undef FLAG_O
+#endif
+
+// touch <1acd:fmr:t:h[!dtr] <1acd:fmr:t:h[!dtr]
+#undef OPTSTR_touch
+#define OPTSTR_touch "<1acd:fmr:t:h[!dtr]"
+#ifdef CLEANUP_touch
+#undef CLEANUP_touch
+#undef FOR_touch
+#undef FLAG_h
+#undef FLAG_t
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_a
+#endif
+
+// toybox    
+#undef OPTSTR_toybox
+#define OPTSTR_toybox 0
+#ifdef CLEANUP_toybox
+#undef CLEANUP_toybox
+#undef FOR_toybox
+#endif
+
+// tr ^<1>2Ccstd[+cC] ^<1>2Ccstd[+cC]
+#undef OPTSTR_tr
+#define OPTSTR_tr "^<1>2Ccstd[+cC]"
+#ifdef CLEANUP_tr
+#undef CLEANUP_tr
+#undef FOR_tr
+#undef FLAG_d
+#undef FLAG_t
+#undef FLAG_s
+#undef FLAG_c
+#undef FLAG_C
+#endif
+
+// traceroute   <1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64
+#undef OPTSTR_traceroute
+#define OPTSTR_traceroute "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64"
+#ifdef CLEANUP_traceroute
+#undef CLEANUP_traceroute
+#undef FOR_traceroute
+#undef FLAG_4
+#undef FLAG_6
+#undef FLAG_F
+#undef FLAG_U
+#undef FLAG_I
+#undef FLAG_l
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_r
+#undef FLAG_m
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_w
+#undef FLAG_g
+#undef FLAG_z
+#undef FLAG_f
+#undef FLAG_i
+#endif
+
+// true    
+#undef OPTSTR_true
+#define OPTSTR_true 0
+#ifdef CLEANUP_true
+#undef CLEANUP_true
+#undef FOR_true
+#endif
+
+// truncate <1s:|c <1s:|c
+#undef OPTSTR_truncate
+#define OPTSTR_truncate "<1s:|c"
+#ifdef CLEANUP_truncate
+#undef CLEANUP_truncate
+#undef FOR_truncate
+#undef FLAG_c
+#undef FLAG_s
+#endif
+
+// ts   ims
+#undef OPTSTR_ts
+#define OPTSTR_ts "ims"
+#ifdef CLEANUP_ts
+#undef CLEANUP_ts
+#undef FOR_ts
+#undef FLAG_s
+#undef FLAG_m
+#undef FLAG_i
+#endif
+
+// tsort   >1
+#undef OPTSTR_tsort
+#define OPTSTR_tsort ">1"
+#ifdef CLEANUP_tsort
+#undef CLEANUP_tsort
+#undef FOR_tsort
+#endif
+
+// tty   s
+#undef OPTSTR_tty
+#define OPTSTR_tty "s"
+#ifdef CLEANUP_tty
+#undef CLEANUP_tty
+#undef FOR_tty
+#undef FLAG_s
+#endif
+
+// tunctl   <1>1t|d|u:T[!td]
+#undef OPTSTR_tunctl
+#define OPTSTR_tunctl "<1>1t|d|u:T[!td]"
+#ifdef CLEANUP_tunctl
+#undef CLEANUP_tunctl
+#undef FOR_tunctl
+#undef FLAG_T
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_t
+#endif
+
+// uclampset   p#am#<-1>1024M#<-1>1024R
+#undef OPTSTR_uclampset
+#define OPTSTR_uclampset "p#am#<-1>1024M#<-1>1024R"
+#ifdef CLEANUP_uclampset
+#undef CLEANUP_uclampset
+#undef FOR_uclampset
+#undef FLAG_R
+#undef FLAG_M
+#undef FLAG_m
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// ulimit   >1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]
+#undef OPTSTR_ulimit
+#define OPTSTR_ulimit ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]"
+#ifdef CLEANUP_ulimit
+#undef CLEANUP_ulimit
+#undef FOR_ulimit
+#undef FLAG_c
+#undef FLAG_d
+#undef FLAG_e
+#undef FLAG_f
+#undef FLAG_i
+#undef FLAG_l
+#undef FLAG_m
+#undef FLAG_n
+#undef FLAG_p
+#undef FLAG_q
+#undef FLAG_R
+#undef FLAG_r
+#undef FLAG_s
+#undef FLAG_t
+#undef FLAG_u
+#undef FLAG_v
+#undef FLAG_a
+#undef FLAG_H
+#undef FLAG_S
+#undef FLAG_P
+#endif
+
+// umount   cndDflrat*v[!na]
+#undef OPTSTR_umount
+#define OPTSTR_umount "cndDflrat*v[!na]"
+#ifdef CLEANUP_umount
+#undef CLEANUP_umount
+#undef FOR_umount
+#undef FLAG_v
+#undef FLAG_t
+#undef FLAG_a
+#undef FLAG_r
+#undef FLAG_l
+#undef FLAG_f
+#undef FLAG_D
+#undef FLAG_d
+#undef FLAG_n
+#undef FLAG_c
+#endif
+
+// uname paomvrns paomvrns
+#undef OPTSTR_uname
+#define OPTSTR_uname "paomvrns"
+#ifdef CLEANUP_uname
+#undef CLEANUP_uname
+#undef FOR_uname
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_v
+#undef FLAG_m
+#undef FLAG_o
+#undef FLAG_a
+#undef FLAG_p
+#endif
+
+// unicode   <1
+#undef OPTSTR_unicode
+#define OPTSTR_unicode "<1"
+#ifdef CLEANUP_unicode
+#undef CLEANUP_unicode
+#undef FOR_unicode
+#endif
+
+// uniq f#s#w#zicdu f#s#w#zicdu
+#undef OPTSTR_uniq
+#define OPTSTR_uniq "f#s#w#zicdu"
+#ifdef CLEANUP_uniq
+#undef CLEANUP_uniq
+#undef FOR_uniq
+#undef FLAG_u
+#undef FLAG_d
+#undef FLAG_c
+#undef FLAG_i
+#undef FLAG_z
+#undef FLAG_w
+#undef FLAG_s
+#undef FLAG_f
+#endif
+
+// unix2dos    
+#undef OPTSTR_unix2dos
+#define OPTSTR_unix2dos 0
+#ifdef CLEANUP_unix2dos
+#undef CLEANUP_unix2dos
+#undef FOR_unix2dos
+#endif
+
+// unlink   <1>1
+#undef OPTSTR_unlink
+#define OPTSTR_unlink "<1>1"
+#ifdef CLEANUP_unlink
+#undef CLEANUP_unlink
+#undef FOR_unlink
+#endif
+
+// unset   fvn[!fv]
+#undef OPTSTR_unset
+#define OPTSTR_unset "fvn[!fv]"
+#ifdef CLEANUP_unset
+#undef CLEANUP_unset
+#undef FOR_unset
+#undef FLAG_n
+#undef FLAG_v
+#undef FLAG_f
+#endif
+
+// unshare   <1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; 
+#undef OPTSTR_unshare
+#define OPTSTR_unshare "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; "
+#ifdef CLEANUP_unshare
+#undef CLEANUP_unshare
+#undef FOR_unshare
+#undef FLAG_U
+#undef FLAG_u
+#undef FLAG_p
+#undef FLAG_n
+#undef FLAG_m
+#undef FLAG_i
+#undef FLAG_C
+#undef FLAG_r
+#undef FLAG_f
+#undef FLAG_a
+#endif
+
+// uptime   >0ps
+#undef OPTSTR_uptime
+#define OPTSTR_uptime ">0ps"
+#ifdef CLEANUP_uptime
+#undef CLEANUP_uptime
+#undef FOR_uptime
+#undef FLAG_s
+#undef FLAG_p
+#endif
+
+// useradd   <1>2u#<0G:s:g:h:SDH
+#undef OPTSTR_useradd
+#define OPTSTR_useradd "<1>2u#<0G:s:g:h:SDH"
+#ifdef CLEANUP_useradd
+#undef CLEANUP_useradd
+#undef FOR_useradd
+#undef FLAG_H
+#undef FLAG_D
+#undef FLAG_S
+#undef FLAG_h
+#undef FLAG_g
+#undef FLAG_s
+#undef FLAG_G
+#undef FLAG_u
+#endif
+
+// userdel   <1>1r
+#undef OPTSTR_userdel
+#define OPTSTR_userdel "<1>1r"
+#ifdef CLEANUP_userdel
+#undef CLEANUP_userdel
+#undef FOR_userdel
+#undef FLAG_r
+#endif
+
+// usleep   <1>1
+#undef OPTSTR_usleep
+#define OPTSTR_usleep "<1>1"
+#ifdef CLEANUP_usleep
+#undef CLEANUP_usleep
+#undef FOR_usleep
+#endif
+
+// uudecode   >1o:
+#undef OPTSTR_uudecode
+#define OPTSTR_uudecode ">1o:"
+#ifdef CLEANUP_uudecode
+#undef CLEANUP_uudecode
+#undef FOR_uudecode
+#undef FLAG_o
+#endif
+
+// uuencode   <1>2m
+#undef OPTSTR_uuencode
+#define OPTSTR_uuencode "<1>2m"
+#ifdef CLEANUP_uuencode
+#undef CLEANUP_uuencode
+#undef FOR_uuencode
+#undef FLAG_m
+#endif
+
+// uuidgen   >0r(random)
+#undef OPTSTR_uuidgen
+#define OPTSTR_uuidgen ">0r(random)"
+#ifdef CLEANUP_uuidgen
+#undef CLEANUP_uuidgen
+#undef FOR_uuidgen
+#undef FLAG_r
+#endif
+
+// vconfig   <2>4
+#undef OPTSTR_vconfig
+#define OPTSTR_vconfig "<2>4"
+#ifdef CLEANUP_vconfig
+#undef CLEANUP_vconfig
+#undef FOR_vconfig
+#endif
+
+// vi   >1s:
+#undef OPTSTR_vi
+#define OPTSTR_vi ">1s:"
+#ifdef CLEANUP_vi
+#undef CLEANUP_vi
+#undef FOR_vi
+#undef FLAG_s
+#endif
+
+// vmstat   >2n
+#undef OPTSTR_vmstat
+#define OPTSTR_vmstat ">2n"
+#ifdef CLEANUP_vmstat
+#undef CLEANUP_vmstat
+#undef FOR_vmstat
+#undef FLAG_n
+#endif
+
+// w    
+#undef OPTSTR_w
+#define OPTSTR_w 0
+#ifdef CLEANUP_w
+#undef CLEANUP_w
+#undef FOR_w
+#endif
+
+// wait   n
+#undef OPTSTR_wait
+#define OPTSTR_wait "n"
+#ifdef CLEANUP_wait
+#undef CLEANUP_wait
+#undef FOR_wait
+#undef FLAG_n
+#endif
+
+// watch   ^<1n%<100=2000tebx
+#undef OPTSTR_watch
+#define OPTSTR_watch "^<1n%<100=2000tebx"
+#ifdef CLEANUP_watch
+#undef CLEANUP_watch
+#undef FOR_watch
+#undef FLAG_x
+#undef FLAG_b
+#undef FLAG_e
+#undef FLAG_t
+#undef FLAG_n
+#endif
+
+// watchdog   <1>1Ft#=4<1T#=60<1
+#undef OPTSTR_watchdog
+#define OPTSTR_watchdog "<1>1Ft#=4<1T#=60<1"
+#ifdef CLEANUP_watchdog
+#undef CLEANUP_watchdog
+#undef FOR_watchdog
+#undef FLAG_T
+#undef FLAG_t
+#undef FLAG_F
+#endif
+
+// wc Lcmwl Lcmwl
+#undef OPTSTR_wc
+#define OPTSTR_wc "Lcmwl"
+#ifdef CLEANUP_wc
+#undef CLEANUP_wc
+#undef FOR_wc
+#undef FLAG_l
+#undef FLAG_w
+#undef FLAG_m
+#undef FLAG_c
+#undef FLAG_L
+#endif
+
+// wget   <1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):
+#undef OPTSTR_wget
+#define OPTSTR_wget "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):"
+#ifdef CLEANUP_wget
+#undef CLEANUP_wget
+#undef FOR_wget
+#undef FLAG_p
+#undef FLAG_O
+#undef FLAG_d
+#undef FLAG_max_redirect
+#endif
+
+// which <1a <1a
+#undef OPTSTR_which
+#define OPTSTR_which "<1a"
+#ifdef CLEANUP_which
+#undef CLEANUP_which
+#undef FOR_which
+#undef FLAG_a
+#endif
+
+// who   a
+#undef OPTSTR_who
+#define OPTSTR_who "a"
+#ifdef CLEANUP_who
+#undef CLEANUP_who
+#undef FOR_who
+#undef FLAG_a
+#endif
+
+// xargs ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E] ^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]
+#undef OPTSTR_xargs
+#define OPTSTR_xargs "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]"
+#ifdef CLEANUP_xargs
+#undef CLEANUP_xargs
+#undef FOR_xargs
+#undef FLAG_0
+#undef FLAG_s
+#undef FLAG_n
+#undef FLAG_r
+#undef FLAG_t
+#undef FLAG_p
+#undef FLAG_o
+#undef FLAG_P
+#undef FLAG_E
+#endif
+
+// xxd >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re] >1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]
+#undef OPTSTR_xxd
+#define OPTSTR_xxd ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]"
+#ifdef CLEANUP_xxd
+#undef CLEANUP_xxd
+#undef FOR_xxd
+#undef FLAG_s
+#undef FLAG_r
+#undef FLAG_p
+#undef FLAG_i
+#undef FLAG_e
+#undef FLAG_g
+#undef FLAG_o
+#undef FLAG_l
+#undef FLAG_c
+#endif
+
+// xzcat    
+#undef OPTSTR_xzcat
+#define OPTSTR_xzcat 0
+#ifdef CLEANUP_xzcat
+#undef CLEANUP_xzcat
+#undef FOR_xzcat
+#endif
+
+// yes    
+#undef OPTSTR_yes
+#define OPTSTR_yes 0
+#ifdef CLEANUP_yes
+#undef CLEANUP_yes
+#undef FOR_yes
+#endif
+
+// zcat cdfkt123456789[-123456789] cdfkt123456789[-123456789]
+#undef OPTSTR_zcat
+#define OPTSTR_zcat "cdfkt123456789[-123456789]"
+#ifdef CLEANUP_zcat
+#undef CLEANUP_zcat
+#undef FOR_zcat
+#undef FLAG_9
+#undef FLAG_8
+#undef FLAG_7
+#undef FLAG_6
+#undef FLAG_5
+#undef FLAG_4
+#undef FLAG_3
+#undef FLAG_2
+#undef FLAG_1
+#undef FLAG_t
+#undef FLAG_k
+#undef FLAG_f
+#undef FLAG_d
+#undef FLAG_c
+#endif
+
+#ifdef FOR_acpi
+#define CLEANUP_acpi
+#ifndef TT
+#define TT this.acpi
+#endif
+#define FLAG_V (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#define FLAG_a (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_arch
+#define CLEANUP_arch
+#ifndef TT
+#define TT this.arch
+#endif
+#endif
+
+#ifdef FOR_arp
+#define CLEANUP_arp
+#ifndef TT
+#define TT this.arp
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_v (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_arping
+#define CLEANUP_arping
+#ifndef TT
+#define TT this.arping
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_D (FORCED_FLAG<<3)
+#define FLAG_U (FORCED_FLAG<<4)
+#define FLAG_A (FORCED_FLAG<<5)
+#define FLAG_c (FORCED_FLAG<<6)
+#define FLAG_w (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_ascii
+#define CLEANUP_ascii
+#ifndef TT
+#define TT this.ascii
+#endif
+#endif
+
+#ifdef FOR_base32
+#define CLEANUP_base32
+#ifndef TT
+#define TT this.base32
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_base64
+#define CLEANUP_base64
+#ifndef TT
+#define TT this.base64
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_basename
+#define CLEANUP_basename
+#ifndef TT
+#define TT this.basename
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_bc
+#define CLEANUP_bc
+#ifndef TT
+#define TT this.bc
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_blkdiscard
+#define CLEANUP_blkdiscard
+#ifndef TT
+#define TT this.blkdiscard
+#endif
+#define FLAG_z (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_o (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_blkid
+#define CLEANUP_blkid
+#ifndef TT
+#define TT this.blkid
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_L (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_blockdev
+#define CLEANUP_blockdev
+#ifndef TT
+#define TT this.blockdev
+#endif
+#define FLAG_rereadpt (FORCED_FLAG<<0)
+#define FLAG_flushbufs (FORCED_FLAG<<1)
+#define FLAG_setra (FORCED_FLAG<<2)
+#define FLAG_getra (FORCED_FLAG<<3)
+#define FLAG_getsize64 (FORCED_FLAG<<4)
+#define FLAG_getsize (FORCED_FLAG<<5)
+#define FLAG_getsz (FORCED_FLAG<<6)
+#define FLAG_setbsz (FORCED_FLAG<<7)
+#define FLAG_getbsz (FORCED_FLAG<<8)
+#define FLAG_getss (FORCED_FLAG<<9)
+#define FLAG_getro (FORCED_FLAG<<10)
+#define FLAG_setrw (FORCED_FLAG<<11)
+#define FLAG_setro (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_bootchartd
+#define CLEANUP_bootchartd
+#ifndef TT
+#define TT this.bootchartd
+#endif
+#endif
+
+#ifdef FOR_brctl
+#define CLEANUP_brctl
+#ifndef TT
+#define TT this.brctl
+#endif
+#endif
+
+#ifdef FOR_bunzip2
+#define CLEANUP_bunzip2
+#ifndef TT
+#define TT this.bunzip2
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_bzcat
+#define CLEANUP_bzcat
+#ifndef TT
+#define TT this.bzcat
+#endif
+#endif
+
+#ifdef FOR_cal
+#define CLEANUP_cal
+#ifndef TT
+#define TT this.cal
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_cat
+#define CLEANUP_cat
+#ifndef TT
+#define TT this.cat
+#endif
+#define FLAG_e (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_u (1LL<<3)
+#endif
+
+#ifdef FOR_cd
+#define CLEANUP_cd
+#ifndef TT
+#define TT this.cd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_chattr
+#define CLEANUP_chattr
+#ifndef TT
+#define TT this.chattr
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chcon
+#define CLEANUP_chcon
+#ifndef TT
+#define TT this.chcon
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_h (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chgrp
+#define CLEANUP_chgrp
+#ifndef TT
+#define TT this.chgrp
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#define FLAG_H (FORCED_FLAG<<3)
+#define FLAG_L (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_h (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_chmod
+#define CLEANUP_chmod
+#ifndef TT
+#define TT this.chmod
+#endif
+#define FLAG_R (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_v (1LL<<2)
+#endif
+
+#ifdef FOR_chroot
+#define CLEANUP_chroot
+#ifndef TT
+#define TT this.chroot
+#endif
+#endif
+
+#ifdef FOR_chrt
+#define CLEANUP_chrt
+#ifndef TT
+#define TT this.chrt
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_r (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#define FLAG_R (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_p (FORCED_FLAG<<6)
+#define FLAG_m (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_chsh
+#define CLEANUP_chsh
+#ifndef TT
+#define TT this.chsh
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_chvt
+#define CLEANUP_chvt
+#ifndef TT
+#define TT this.chvt
+#endif
+#endif
+
+#ifdef FOR_cksum
+#define CLEANUP_cksum
+#ifndef TT
+#define TT this.cksum
+#endif
+#define FLAG_N (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_P (FORCED_FLAG<<2)
+#define FLAG_I (FORCED_FLAG<<3)
+#define FLAG_H (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_clear
+#define CLEANUP_clear
+#ifndef TT
+#define TT this.clear
+#endif
+#endif
+
+#ifdef FOR_cmp
+#define CLEANUP_cmp
+#ifndef TT
+#define TT this.cmp
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_l (1LL<<2)
+#endif
+
+#ifdef FOR_comm
+#define CLEANUP_comm
+#ifndef TT
+#define TT this.comm
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_2 (1LL<<1)
+#define FLAG_3 (1LL<<2)
+#endif
+
+#ifdef FOR_count
+#define CLEANUP_count
+#ifndef TT
+#define TT this.count
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_cp
+#define CLEANUP_cp
+#ifndef TT
+#define TT this.cp
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_a (1LL<<9)
+#define FLAG_d (1LL<<10)
+#define FLAG_u (1LL<<11)
+#define FLAG_r (1LL<<12)
+#define FLAG_p (1LL<<13)
+#define FLAG_P (1LL<<14)
+#define FLAG_L (1LL<<15)
+#define FLAG_H (1LL<<16)
+#define FLAG_R (1LL<<17)
+#define FLAG_D (1LL<<18)
+#define FLAG_preserve (1LL<<19)
+#endif
+
+#ifdef FOR_cpio
+#define CLEANUP_cpio
+#ifndef TT
+#define TT this.cpio
+#endif
+#define FLAG_o (1LL<<0)
+#define FLAG_v (1LL<<1)
+#define FLAG_F (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_i (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_L (1LL<<7)
+#define FLAG_u (1LL<<8)
+#define FLAG_d (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_R (1LL<<11)
+#define FLAG_no_preserve_owner (1LL<<12)
+#define FLAG_quiet (1LL<<13)
+#define FLAG_renumber_inodes (1LL<<14)
+#define FLAG_ignore_devno (1LL<<15)
+#endif
+
+#ifdef FOR_crc32
+#define CLEANUP_crc32
+#ifndef TT
+#define TT this.crc32
+#endif
+#endif
+
+#ifdef FOR_crond
+#define CLEANUP_crond
+#ifndef TT
+#define TT this.crond
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_S (FORCED_FLAG<<4)
+#define FLAG_b (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_crontab
+#define CLEANUP_crontab
+#ifndef TT
+#define TT this.crontab
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_c (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_csplit
+#define CLEANUP_csplit
+#ifndef TT
+#define TT this.csplit
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_k (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_cut
+#define CLEANUP_cut
+#ifndef TT
+#define TT this.cut
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_D (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_O (1LL<<4)
+#define FLAG_C (1LL<<5)
+#define FLAG_F (1LL<<6)
+#define FLAG_f (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_b (1LL<<9)
+#endif
+
+#ifdef FOR_date
+#define CLEANUP_date
+#ifndef TT
+#define TT this.date
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_I (1LL<<3)
+#define FLAG_D (1LL<<4)
+#define FLAG_d (1LL<<5)
+#endif
+
+#ifdef FOR_dd
+#define CLEANUP_dd
+#ifndef TT
+#define TT this.dd
+#endif
+#endif
+
+#ifdef FOR_deallocvt
+#define CLEANUP_deallocvt
+#ifndef TT
+#define TT this.deallocvt
+#endif
+#endif
+
+#ifdef FOR_declare
+#define CLEANUP_declare
+#ifndef TT
+#define TT this.declare
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_demo_many_options
+#define CLEANUP_demo_many_options
+#ifndef TT
+#define TT this.demo_many_options
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_i (FORCED_FLAG<<8)
+#define FLAG_j (FORCED_FLAG<<9)
+#define FLAG_k (FORCED_FLAG<<10)
+#define FLAG_l (FORCED_FLAG<<11)
+#define FLAG_m (FORCED_FLAG<<12)
+#define FLAG_n (FORCED_FLAG<<13)
+#define FLAG_o (FORCED_FLAG<<14)
+#define FLAG_p (FORCED_FLAG<<15)
+#define FLAG_q (FORCED_FLAG<<16)
+#define FLAG_r (FORCED_FLAG<<17)
+#define FLAG_s (FORCED_FLAG<<18)
+#define FLAG_t (FORCED_FLAG<<19)
+#define FLAG_u (FORCED_FLAG<<20)
+#define FLAG_v (FORCED_FLAG<<21)
+#define FLAG_w (FORCED_FLAG<<22)
+#define FLAG_x (FORCED_FLAG<<23)
+#define FLAG_y (FORCED_FLAG<<24)
+#define FLAG_z (FORCED_FLAG<<25)
+#define FLAG_A (FORCED_FLAG<<26)
+#define FLAG_B (FORCED_FLAG<<27)
+#define FLAG_C (FORCED_FLAG<<28)
+#define FLAG_D (FORCED_FLAG<<29)
+#define FLAG_E (FORCED_FLAG<<30)
+#define FLAG_F (FORCED_FLAG<<31)
+#define FLAG_G (FORCED_FLAG<<32)
+#define FLAG_H (FORCED_FLAG<<33)
+#define FLAG_I (FORCED_FLAG<<34)
+#define FLAG_J (FORCED_FLAG<<35)
+#define FLAG_K (FORCED_FLAG<<36)
+#define FLAG_L (FORCED_FLAG<<37)
+#define FLAG_M (FORCED_FLAG<<38)
+#define FLAG_N (FORCED_FLAG<<39)
+#define FLAG_O (FORCED_FLAG<<40)
+#define FLAG_P (FORCED_FLAG<<41)
+#define FLAG_Q (FORCED_FLAG<<42)
+#define FLAG_R (FORCED_FLAG<<43)
+#define FLAG_S (FORCED_FLAG<<44)
+#define FLAG_T (FORCED_FLAG<<45)
+#define FLAG_U (FORCED_FLAG<<46)
+#define FLAG_V (FORCED_FLAG<<47)
+#define FLAG_W (FORCED_FLAG<<48)
+#define FLAG_X (FORCED_FLAG<<49)
+#define FLAG_Y (FORCED_FLAG<<50)
+#define FLAG_Z (FORCED_FLAG<<51)
+#endif
+
+#ifdef FOR_demo_number
+#define CLEANUP_demo_number
+#ifndef TT
+#define TT this.demo_number
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#define FLAG_h (FORCED_FLAG<<4)
+#define FLAG_M (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_demo_scankey
+#define CLEANUP_demo_scankey
+#ifndef TT
+#define TT this.demo_scankey
+#endif
+#endif
+
+#ifdef FOR_demo_utf8towc
+#define CLEANUP_demo_utf8towc
+#ifndef TT
+#define TT this.demo_utf8towc
+#endif
+#endif
+
+#ifdef FOR_devmem
+#define CLEANUP_devmem
+#ifndef TT
+#define TT this.devmem
+#endif
+#endif
+
+#ifdef FOR_df
+#define CLEANUP_df
+#ifndef TT
+#define TT this.df
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_i (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#define FLAG_k (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_H (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_dhcp
+#define CLEANUP_dhcp
+#ifndef TT
+#define TT this.dhcp
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_o (FORCED_FLAG<<5)
+#define FLAG_a (FORCED_FLAG<<6)
+#define FLAG_C (FORCED_FLAG<<7)
+#define FLAG_R (FORCED_FLAG<<8)
+#define FLAG_B (FORCED_FLAG<<9)
+#define FLAG_S (FORCED_FLAG<<10)
+#define FLAG_i (FORCED_FLAG<<11)
+#define FLAG_p (FORCED_FLAG<<12)
+#define FLAG_s (FORCED_FLAG<<13)
+#define FLAG_t (FORCED_FLAG<<14)
+#define FLAG_T (FORCED_FLAG<<15)
+#define FLAG_A (FORCED_FLAG<<16)
+#define FLAG_O (FORCED_FLAG<<17)
+#define FLAG_r (FORCED_FLAG<<18)
+#define FLAG_x (FORCED_FLAG<<19)
+#define FLAG_F (FORCED_FLAG<<20)
+#define FLAG_H (FORCED_FLAG<<21)
+#define FLAG_V (FORCED_FLAG<<22)
+#endif
+
+#ifdef FOR_dhcp6
+#define CLEANUP_dhcp6
+#ifndef TT
+#define TT this.dhcp6
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_q (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_R (FORCED_FLAG<<5)
+#define FLAG_S (FORCED_FLAG<<6)
+#define FLAG_i (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_T (FORCED_FLAG<<11)
+#define FLAG_A (FORCED_FLAG<<12)
+#define FLAG_r (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_dhcpd
+#define CLEANUP_dhcpd
+#ifndef TT
+#define TT this.dhcpd
+#endif
+#define FLAG_6 (FORCED_FLAG<<0)
+#define FLAG_4 (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_i (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_diff
+#define CLEANUP_diff
+#ifndef TT
+#define TT this.diff
+#endif
+#define FLAG_U (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_N (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_S (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_s (1LL<<8)
+#define FLAG_T (1LL<<9)
+#define FLAG_i (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_t (1LL<<12)
+#define FLAG_u (1LL<<13)
+#define FLAG_b (1LL<<14)
+#define FLAG_d (1LL<<15)
+#define FLAG_B (1LL<<16)
+#define FLAG_strip_trailing_cr (1LL<<17)
+#define FLAG_color (1LL<<18)
+#define FLAG_new_line_format (1LL<<19)
+#define FLAG_old_line_format (1LL<<20)
+#define FLAG_unchanged_line_format (1LL<<21)
+#endif
+
+#ifdef FOR_dirname
+#define CLEANUP_dirname
+#ifndef TT
+#define TT this.dirname
+#endif
+#endif
+
+#ifdef FOR_dmesg
+#define CLEANUP_dmesg
+#ifndef TT
+#define TT this.dmesg
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#define FLAG_T (FORCED_FLAG<<5)
+#define FLAG_S (FORCED_FLAG<<6)
+#define FLAG_C (FORCED_FLAG<<7)
+#define FLAG_w (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_dnsdomainname
+#define CLEANUP_dnsdomainname
+#ifndef TT
+#define TT this.dnsdomainname
+#endif
+#endif
+
+#ifdef FOR_dos2unix
+#define CLEANUP_dos2unix
+#ifndef TT
+#define TT this.dos2unix
+#endif
+#endif
+
+#ifdef FOR_du
+#define CLEANUP_du
+#ifndef TT
+#define TT this.du
+#endif
+#define FLAG_b (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_L (1LL<<3)
+#define FLAG_K (1LL<<4)
+#define FLAG_k (1LL<<5)
+#define FLAG_H (1LL<<6)
+#define FLAG_a (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_l (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_h (1LL<<11)
+#define FLAG_d (1LL<<12)
+#endif
+
+#ifdef FOR_dumpleases
+#define CLEANUP_dumpleases
+#ifndef TT
+#define TT this.dumpleases
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_echo
+#define CLEANUP_echo
+#ifndef TT
+#define TT this.echo
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_e (1LL<<1)
+#define FLAG_E (1LL<<2)
+#endif
+
+#ifdef FOR_eject
+#define CLEANUP_eject
+#ifndef TT
+#define TT this.eject
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_env
+#define CLEANUP_env
+#ifndef TT
+#define TT this.env
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_0 (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_e (1LL<<3)
+#endif
+
+#ifdef FOR_eval
+#define CLEANUP_eval
+#ifndef TT
+#define TT this.eval
+#endif
+#endif
+
+#ifdef FOR_exec
+#define CLEANUP_exec
+#ifndef TT
+#define TT this.exec
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_exit
+#define CLEANUP_exit
+#ifndef TT
+#define TT this.exit
+#endif
+#endif
+
+#ifdef FOR_expand
+#define CLEANUP_expand
+#ifndef TT
+#define TT this.expand
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_export
+#define CLEANUP_export
+#ifndef TT
+#define TT this.export
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_expr
+#define CLEANUP_expr
+#ifndef TT
+#define TT this.expr
+#endif
+#endif
+
+#ifdef FOR_factor
+#define CLEANUP_factor
+#ifndef TT
+#define TT this.factor
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_fallocate
+#define CLEANUP_fallocate
+#ifndef TT
+#define TT this.fallocate
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_false
+#define CLEANUP_false
+#ifndef TT
+#define TT this.false
+#endif
+#endif
+
+#ifdef FOR_fdisk
+#define CLEANUP_fdisk
+#ifndef TT
+#define TT this.fdisk
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_H (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_file
+#define CLEANUP_file
+#ifndef TT
+#define TT this.file
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_h (1LL<<2)
+#define FLAG_b (1LL<<3)
+#endif
+
+#ifdef FOR_find
+#define CLEANUP_find
+#ifndef TT
+#define TT this.find
+#endif
+#define FLAG_L (1LL<<0)
+#define FLAG_H (1LL<<1)
+#endif
+
+#ifdef FOR_flock
+#define CLEANUP_flock
+#ifndef TT
+#define TT this.flock
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_fmt
+#define CLEANUP_fmt
+#ifndef TT
+#define TT this.fmt
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_fold
+#define CLEANUP_fold
+#ifndef TT
+#define TT this.fold
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_free
+#define CLEANUP_free
+#ifndef TT
+#define TT this.free
+#endif
+#define FLAG_b (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_g (FORCED_FLAG<<3)
+#define FLAG_h (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_freeramdisk
+#define CLEANUP_freeramdisk
+#ifndef TT
+#define TT this.freeramdisk
+#endif
+#endif
+
+#ifdef FOR_fsck
+#define CLEANUP_fsck
+#ifndef TT
+#define TT this.fsck
+#endif
+#define FLAG_C (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_V (FORCED_FLAG<<2)
+#define FLAG_T (FORCED_FLAG<<3)
+#define FLAG_R (FORCED_FLAG<<4)
+#define FLAG_P (FORCED_FLAG<<5)
+#define FLAG_N (FORCED_FLAG<<6)
+#define FLAG_A (FORCED_FLAG<<7)
+#define FLAG_t (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_fsfreeze
+#define CLEANUP_fsfreeze
+#ifndef TT
+#define TT this.fsfreeze
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_fstype
+#define CLEANUP_fstype
+#ifndef TT
+#define TT this.fstype
+#endif
+#endif
+
+#ifdef FOR_fsync
+#define CLEANUP_fsync
+#ifndef TT
+#define TT this.fsync
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_ftpget
+#define CLEANUP_ftpget
+#ifndef TT
+#define TT this.ftpget
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_M (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_L (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_s (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#define FLAG_v (FORCED_FLAG<<8)
+#define FLAG_u (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#define FLAG_c (FORCED_FLAG<<11)
+#define FLAG_P (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_getconf
+#define CLEANUP_getconf
+#ifndef TT
+#define TT this.getconf
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_a (1LL<<1)
+#endif
+
+#ifdef FOR_getenforce
+#define CLEANUP_getenforce
+#ifndef TT
+#define TT this.getenforce
+#endif
+#endif
+
+#ifdef FOR_getfattr
+#define CLEANUP_getfattr
+#ifndef TT
+#define TT this.getfattr
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_only_values (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_getopt
+#define CLEANUP_getopt
+#ifndef TT
+#define TT this.getopt
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_T (1LL<<1)
+#define FLAG_l (1LL<<2)
+#define FLAG_o (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_a (1LL<<5)
+#endif
+
+#ifdef FOR_getty
+#define CLEANUP_getty
+#ifndef TT
+#define TT this.getty
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_w (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_l (FORCED_FLAG<<7)
+#define FLAG_I (FORCED_FLAG<<8)
+#define FLAG_H (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_gitcheckout
+#define CLEANUP_gitcheckout
+#ifndef TT
+#define TT this.gitcheckout
+#endif
+#endif
+
+#ifdef FOR_gitclone
+#define CLEANUP_gitclone
+#ifndef TT
+#define TT this.gitclone
+#endif
+#endif
+
+#ifdef FOR_gitfetch
+#define CLEANUP_gitfetch
+#ifndef TT
+#define TT this.gitfetch
+#endif
+#endif
+
+#ifdef FOR_gitinit
+#define CLEANUP_gitinit
+#ifndef TT
+#define TT this.gitinit
+#endif
+#endif
+
+#ifdef FOR_gitremote
+#define CLEANUP_gitremote
+#ifndef TT
+#define TT this.gitremote
+#endif
+#endif
+
+#ifdef FOR_gpiodetect
+#define CLEANUP_gpiodetect
+#ifndef TT
+#define TT this.gpiodetect
+#endif
+#endif
+
+#ifdef FOR_gpiofind
+#define CLEANUP_gpiofind
+#ifndef TT
+#define TT this.gpiofind
+#endif
+#endif
+
+#ifdef FOR_gpioget
+#define CLEANUP_gpioget
+#ifndef TT
+#define TT this.gpioget
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_gpioinfo
+#define CLEANUP_gpioinfo
+#ifndef TT
+#define TT this.gpioinfo
+#endif
+#endif
+
+#ifdef FOR_gpioset
+#define CLEANUP_gpioset
+#ifndef TT
+#define TT this.gpioset
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_grep
+#define CLEANUP_grep
+#ifndef TT
+#define TT this.grep
+#endif
+#define FLAG_x (1LL<<0)
+#define FLAG_m (1LL<<1)
+#define FLAG_A (1LL<<2)
+#define FLAG_B (1LL<<3)
+#define FLAG_C (1LL<<4)
+#define FLAG_f (1LL<<5)
+#define FLAG_e (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_l (1LL<<8)
+#define FLAG_L (1LL<<9)
+#define FLAG_c (1LL<<10)
+#define FLAG_w (1LL<<11)
+#define FLAG_v (1LL<<12)
+#define FLAG_s (1LL<<13)
+#define FLAG_R (1LL<<14)
+#define FLAG_r (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_n (1LL<<17)
+#define FLAG_i (1LL<<18)
+#define FLAG_h (1LL<<19)
+#define FLAG_b (1LL<<20)
+#define FLAG_a (1LL<<21)
+#define FLAG_I (1LL<<22)
+#define FLAG_H (1LL<<23)
+#define FLAG_F (1LL<<24)
+#define FLAG_E (1LL<<25)
+#define FLAG_z (1LL<<26)
+#define FLAG_Z (1LL<<27)
+#define FLAG_M (1LL<<28)
+#define FLAG_S (1LL<<29)
+#define FLAG_exclude_dir (1LL<<30)
+#define FLAG_color (1LL<<31)
+#define FLAG_line_buffered (1LL<<32)
+#endif
+
+#ifdef FOR_groupadd
+#define CLEANUP_groupadd
+#ifndef TT
+#define TT this.groupadd
+#endif
+#define FLAG_S (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_groupdel
+#define CLEANUP_groupdel
+#ifndef TT
+#define TT this.groupdel
+#endif
+#endif
+
+#ifdef FOR_groups
+#define CLEANUP_groups
+#ifndef TT
+#define TT this.groups
+#endif
+#endif
+
+#ifdef FOR_gunzip
+#define CLEANUP_gunzip
+#ifndef TT
+#define TT this.gunzip
+#endif
+#define FLAG_9 (FORCED_FLAG<<0)
+#define FLAG_8 (FORCED_FLAG<<1)
+#define FLAG_7 (FORCED_FLAG<<2)
+#define FLAG_6 (FORCED_FLAG<<3)
+#define FLAG_5 (FORCED_FLAG<<4)
+#define FLAG_4 (FORCED_FLAG<<5)
+#define FLAG_3 (FORCED_FLAG<<6)
+#define FLAG_2 (FORCED_FLAG<<7)
+#define FLAG_1 (FORCED_FLAG<<8)
+#define FLAG_t (FORCED_FLAG<<9)
+#define FLAG_k (FORCED_FLAG<<10)
+#define FLAG_f (FORCED_FLAG<<11)
+#define FLAG_d (FORCED_FLAG<<12)
+#define FLAG_c (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_gzip
+#define CLEANUP_gzip
+#ifndef TT
+#define TT this.gzip
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#define FLAG_n (1LL<<14)
+#endif
+
+#ifdef FOR_head
+#define CLEANUP_head
+#ifndef TT
+#define TT this.head
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_n (1LL<<3)
+#endif
+
+#ifdef FOR_hello
+#define CLEANUP_hello
+#ifndef TT
+#define TT this.hello
+#endif
+#endif
+
+#ifdef FOR_help
+#define CLEANUP_help
+#ifndef TT
+#define TT this.help
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_h (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_hexdump
+#define CLEANUP_hexdump
+#ifndef TT
+#define TT this.hexdump
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_o (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_d (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#define FLAG_b (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_hexedit
+#define CLEANUP_hexedit
+#ifndef TT
+#define TT this.hexedit
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_host
+#define CLEANUP_host
+#ifndef TT
+#define TT this.host
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_hostid
+#define CLEANUP_hostid
+#ifndef TT
+#define TT this.hostid
+#endif
+#endif
+
+#ifdef FOR_hostname
+#define CLEANUP_hostname
+#ifndef TT
+#define TT this.hostname
+#endif
+#define FLAG_F (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_b (1LL<<4)
+#endif
+
+#ifdef FOR_httpd
+#define CLEANUP_httpd
+#ifndef TT
+#define TT this.httpd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_hwclock
+#define CLEANUP_hwclock
+#ifndef TT
+#define TT this.hwclock
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_fast (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_i2cdetect
+#define CLEANUP_i2cdetect
+#ifndef TT
+#define TT this.i2cdetect
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_F (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_i2cdump
+#define CLEANUP_i2cdump
+#ifndef TT
+#define TT this.i2cdump
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2cget
+#define CLEANUP_i2cget
+#ifndef TT
+#define TT this.i2cget
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2cset
+#define CLEANUP_i2cset
+#ifndef TT
+#define TT this.i2cset
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_i2ctransfer
+#define CLEANUP_i2ctransfer
+#ifndef TT
+#define TT this.i2ctransfer
+#endif
+#define FLAG_y (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_iconv
+#define CLEANUP_iconv
+#ifndef TT
+#define TT this.iconv
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_id
+#define CLEANUP_id
+#ifndef TT
+#define TT this.id
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_g (1LL<<2)
+#define FLAG_G (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_Z (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_ifconfig
+#define CLEANUP_ifconfig
+#ifndef TT
+#define TT this.ifconfig
+#endif
+#define FLAG_S (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_init
+#define CLEANUP_init
+#ifndef TT
+#define TT this.init
+#endif
+#endif
+
+#ifdef FOR_inotifyd
+#define CLEANUP_inotifyd
+#ifndef TT
+#define TT this.inotifyd
+#endif
+#endif
+
+#ifdef FOR_insmod
+#define CLEANUP_insmod
+#ifndef TT
+#define TT this.insmod
+#endif
+#endif
+
+#ifdef FOR_install
+#define CLEANUP_install
+#ifndef TT
+#define TT this.install
+#endif
+#define FLAG_g (1LL<<0)
+#define FLAG_o (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_t (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_p (1LL<<6)
+#define FLAG_D (1LL<<7)
+#define FLAG_d (1LL<<8)
+#define FLAG_c (1LL<<9)
+#endif
+
+#ifdef FOR_ionice
+#define CLEANUP_ionice
+#ifndef TT
+#define TT this.ionice
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_iorenice
+#define CLEANUP_iorenice
+#ifndef TT
+#define TT this.iorenice
+#endif
+#endif
+
+#ifdef FOR_iotop
+#define CLEANUP_iotop
+#ifndef TT
+#define TT this.iotop
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_u (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_o (FORCED_FLAG<<8)
+#define FLAG_k (FORCED_FLAG<<9)
+#define FLAG_H (FORCED_FLAG<<10)
+#define FLAG_O (FORCED_FLAG<<11)
+#define FLAG_K (FORCED_FLAG<<12)
+#define FLAG_a (FORCED_FLAG<<13)
+#define FLAG_A (FORCED_FLAG<<14)
+#endif
+
+#ifdef FOR_ip
+#define CLEANUP_ip
+#ifndef TT
+#define TT this.ip
+#endif
+#endif
+
+#ifdef FOR_ipcrm
+#define CLEANUP_ipcrm
+#ifndef TT
+#define TT this.ipcrm
+#endif
+#define FLAG_Q (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_M (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_ipcs
+#define CLEANUP_ipcs
+#ifndef TT
+#define TT this.ipcs
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_c (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_jobs
+#define CLEANUP_jobs
+#ifndef TT
+#define TT this.jobs
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_kill
+#define CLEANUP_kill
+#ifndef TT
+#define TT this.kill
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_killall
+#define CLEANUP_killall
+#ifndef TT
+#define TT this.killall
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_killall5
+#define CLEANUP_killall5
+#ifndef TT
+#define TT this.killall5
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_o (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_klogd
+#define CLEANUP_klogd
+#ifndef TT
+#define TT this.klogd
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_last
+#define CLEANUP_last
+#ifndef TT
+#define TT this.last
+#endif
+#define FLAG_W (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_link
+#define CLEANUP_link
+#ifndef TT
+#define TT this.link
+#endif
+#endif
+
+#ifdef FOR_linux32
+#define CLEANUP_linux32
+#ifndef TT
+#define TT this.linux32
+#endif
+#endif
+
+#ifdef FOR_ln
+#define CLEANUP_ln
+#ifndef TT
+#define TT this.ln
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_f (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_T (1LL<<4)
+#define FLAG_t (1LL<<5)
+#define FLAG_r (1LL<<6)
+#endif
+
+#ifdef FOR_load_policy
+#define CLEANUP_load_policy
+#ifndef TT
+#define TT this.load_policy
+#endif
+#endif
+
+#ifdef FOR_local
+#define CLEANUP_local
+#ifndef TT
+#define TT this.local
+#endif
+#endif
+
+#ifdef FOR_log
+#define CLEANUP_log
+#ifndef TT
+#define TT this.log
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_logger
+#define CLEANUP_logger
+#ifndef TT
+#define TT this.logger
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_login
+#define CLEANUP_login
+#ifndef TT
+#define TT this.login
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_logname
+#define CLEANUP_logname
+#ifndef TT
+#define TT this.logname
+#endif
+#endif
+
+#ifdef FOR_logpath
+#define CLEANUP_logpath
+#ifndef TT
+#define TT this.logpath
+#endif
+#endif
+
+#ifdef FOR_losetup
+#define CLEANUP_losetup
+#ifndef TT
+#define TT this.losetup
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_f (FORCED_FLAG<<4)
+#define FLAG_j (FORCED_FLAG<<5)
+#define FLAG_o (FORCED_FLAG<<6)
+#define FLAG_r (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_S (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_ls
+#define CLEANUP_ls
+#ifndef TT
+#define TT this.ls
+#endif
+#define FLAG_1 (1LL<<0)
+#define FLAG_x (1LL<<1)
+#define FLAG_w (1LL<<2)
+#define FLAG_u (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_s (1LL<<5)
+#define FLAG_r (1LL<<6)
+#define FLAG_q (1LL<<7)
+#define FLAG_p (1LL<<8)
+#define FLAG_n (1LL<<9)
+#define FLAG_m (1LL<<10)
+#define FLAG_l (1LL<<11)
+#define FLAG_k (1LL<<12)
+#define FLAG_i (1LL<<13)
+#define FLAG_h (1LL<<14)
+#define FLAG_f (1LL<<15)
+#define FLAG_d (1LL<<16)
+#define FLAG_c (1LL<<17)
+#define FLAG_b (1LL<<18)
+#define FLAG_a (1LL<<19)
+#define FLAG_X (1LL<<20)
+#define FLAG_U (1LL<<21)
+#define FLAG_S (1LL<<22)
+#define FLAG_R (1LL<<23)
+#define FLAG_N (1LL<<24)
+#define FLAG_L (1LL<<25)
+#define FLAG_H (1LL<<26)
+#define FLAG_F (1LL<<27)
+#define FLAG_C (1LL<<28)
+#define FLAG_A (1LL<<29)
+#define FLAG_o (1LL<<30)
+#define FLAG_g (1LL<<31)
+#define FLAG_Z (1LL<<32)
+#define FLAG_X7E (1LL<<33)
+#define FLAG_X21 (1LL<<34)
+#define FLAG_X7F (1LL<<35)
+#define FLAG_show_control_chars (1LL<<36)
+#define FLAG_full_time (1LL<<37)
+#define FLAG_color (1LL<<38)
+#define FLAG_sort (1LL<<39)
+#endif
+
+#ifdef FOR_lsattr
+#define CLEANUP_lsattr
+#ifndef TT
+#define TT this.lsattr
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_lsmod
+#define CLEANUP_lsmod
+#ifndef TT
+#define TT this.lsmod
+#endif
+#endif
+
+#ifdef FOR_lsof
+#define CLEANUP_lsof
+#ifndef TT
+#define TT this.lsof
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_l (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_lspci
+#define CLEANUP_lspci
+#ifndef TT
+#define TT this.lspci
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_k (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_e (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_lsusb
+#define CLEANUP_lsusb
+#ifndef TT
+#define TT this.lsusb
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_makedevs
+#define CLEANUP_makedevs
+#ifndef TT
+#define TT this.makedevs
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_man
+#define CLEANUP_man
+#ifndef TT
+#define TT this.man
+#endif
+#define FLAG_M (FORCED_FLAG<<0)
+#define FLAG_k (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mcookie
+#define CLEANUP_mcookie
+#ifndef TT
+#define TT this.mcookie
+#endif
+#define FLAG_V (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_md5sum
+#define CLEANUP_md5sum
+#ifndef TT
+#define TT this.md5sum
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_b (1LL<<2)
+#endif
+
+#ifdef FOR_mdev
+#define CLEANUP_mdev
+#ifndef TT
+#define TT this.mdev
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_memeater
+#define CLEANUP_memeater
+#ifndef TT
+#define TT this.memeater
+#endif
+#define FLAG_M (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_microcom
+#define CLEANUP_microcom
+#ifndef TT
+#define TT this.microcom
+#endif
+#define FLAG_X (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_mix
+#define CLEANUP_mix
+#ifndef TT
+#define TT this.mix
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_c (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_mkdir
+#define CLEANUP_mkdir
+#ifndef TT
+#define TT this.mkdir
+#endif
+#define FLAG_m (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_v (1LL<<2)
+#define FLAG_Z (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_mke2fs
+#define CLEANUP_mke2fs
+#ifndef TT
+#define TT this.mke2fs
+#endif
+#define FLAG_b (FORCED_FLAG<<0)
+#define FLAG_i (FORCED_FLAG<<1)
+#define FLAG_N (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_F (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_mkfifo
+#define CLEANUP_mkfifo
+#ifndef TT
+#define TT this.mkfifo
+#endif
+#define FLAG_m (FORCED_FLAG<<0)
+#define FLAG_Z (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mknod
+#define CLEANUP_mknod
+#ifndef TT
+#define TT this.mknod
+#endif
+#define FLAG_Z (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_mkpasswd
+#define CLEANUP_mkpasswd
+#ifndef TT
+#define TT this.mkpasswd
+#endif
+#define FLAG_P (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_mkswap
+#define CLEANUP_mkswap
+#ifndef TT
+#define TT this.mkswap
+#endif
+#define FLAG_L (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_mktemp
+#define CLEANUP_mktemp
+#ifndef TT
+#define TT this.mktemp
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_p (1LL<<1)
+#define FLAG_d (1LL<<2)
+#define FLAG_q (1LL<<3)
+#define FLAG_u (1LL<<4)
+#define FLAG_tmpdir (1LL<<5)
+#endif
+
+#ifdef FOR_modinfo
+#define CLEANUP_modinfo
+#ifndef TT
+#define TT this.modinfo
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_F (FORCED_FLAG<<1)
+#define FLAG_k (FORCED_FLAG<<2)
+#define FLAG_b (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_modprobe
+#define CLEANUP_modprobe
+#ifndef TT
+#define TT this.modprobe
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_D (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_v (FORCED_FLAG<<4)
+#define FLAG_q (FORCED_FLAG<<5)
+#define FLAG_r (FORCED_FLAG<<6)
+#define FLAG_l (FORCED_FLAG<<7)
+#define FLAG_a (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_more
+#define CLEANUP_more
+#ifndef TT
+#define TT this.more
+#endif
+#endif
+
+#ifdef FOR_mount
+#define CLEANUP_mount
+#ifndef TT
+#define TT this.mount
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_w (FORCED_FLAG<<2)
+#define FLAG_v (FORCED_FLAG<<3)
+#define FLAG_r (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_a (FORCED_FLAG<<7)
+#define FLAG_O (FORCED_FLAG<<8)
+#define FLAG_R (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_mountpoint
+#define CLEANUP_mountpoint
+#ifndef TT
+#define TT this.mountpoint
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_q (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_mv
+#define CLEANUP_mv
+#ifndef TT
+#define TT this.mv
+#endif
+#define FLAG_T (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_f (1LL<<3)
+#define FLAG_F (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#define FLAG_x (1LL<<7)
+#endif
+
+#ifdef FOR_nbd_client
+#define CLEANUP_nbd_client
+#ifndef TT
+#define TT this.nbd_client
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_n (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_nbd_server
+#define CLEANUP_nbd_server
+#ifndef TT
+#define TT this.nbd_server
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_netcat
+#define CLEANUP_netcat
+#ifndef TT
+#define TT this.netcat
+#endif
+#define FLAG_z (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_6 (FORCED_FLAG<<5)
+#define FLAG_4 (FORCED_FLAG<<6)
+#define FLAG_f (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_q (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#define FLAG_W (FORCED_FLAG<<11)
+#define FLAG_w (FORCED_FLAG<<12)
+#define FLAG_L (FORCED_FLAG<<13)
+#define FLAG_l (FORCED_FLAG<<14)
+#define FLAG_E (FORCED_FLAG<<15)
+#define FLAG_t (FORCED_FLAG<<16)
+#endif
+
+#ifdef FOR_netstat
+#define CLEANUP_netstat
+#ifndef TT
+#define TT this.netstat
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_w (FORCED_FLAG<<6)
+#define FLAG_x (FORCED_FLAG<<7)
+#define FLAG_r (FORCED_FLAG<<8)
+#define FLAG_W (FORCED_FLAG<<9)
+#define FLAG_p (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_nice
+#define CLEANUP_nice
+#ifndef TT
+#define TT this.nice
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_nl
+#define CLEANUP_nl
+#ifndef TT
+#define TT this.nl
+#endif
+#define FLAG_E (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_b (1LL<<3)
+#define FLAG_w (1LL<<4)
+#define FLAG_l (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_nohup
+#define CLEANUP_nohup
+#ifndef TT
+#define TT this.nohup
+#endif
+#endif
+
+#ifdef FOR_nproc
+#define CLEANUP_nproc
+#ifndef TT
+#define TT this.nproc
+#endif
+#define FLAG_all (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_nsenter
+#define CLEANUP_nsenter
+#ifndef TT
+#define TT this.nsenter
+#endif
+#define FLAG_U (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_t (FORCED_FLAG<<7)
+#define FLAG_F (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_od
+#define CLEANUP_od
+#ifndef TT
+#define TT this.od
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_A (1LL<<1)
+#define FLAG_b (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_d (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_x (1LL<<7)
+#define FLAG_N (1LL<<8)
+#define FLAG_w (1LL<<9)
+#define FLAG_v (1LL<<10)
+#define FLAG_j (1LL<<11)
+#endif
+
+#ifdef FOR_oneit
+#define CLEANUP_oneit
+#ifndef TT
+#define TT this.oneit
+#endif
+#define FLAG_3 (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_openvt
+#define CLEANUP_openvt
+#ifndef TT
+#define TT this.openvt
+#endif
+#define FLAG_w (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_partprobe
+#define CLEANUP_partprobe
+#ifndef TT
+#define TT this.partprobe
+#endif
+#endif
+
+#ifdef FOR_passwd
+#define CLEANUP_passwd
+#ifndef TT
+#define TT this.passwd
+#endif
+#define FLAG_u (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_paste
+#define CLEANUP_paste
+#ifndef TT
+#define TT this.paste
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_d (1LL<<1)
+#endif
+
+#ifdef FOR_patch
+#define CLEANUP_patch
+#ifndef TT
+#define TT this.patch
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_R (1LL<<1)
+#define FLAG_i (1LL<<2)
+#define FLAG_d (1LL<<3)
+#define FLAG_v (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_l (1LL<<6)
+#define FLAG_u (1LL<<7)
+#define FLAG_f (1LL<<8)
+#define FLAG_g (1LL<<9)
+#define FLAG_F (1LL<<10)
+#define FLAG_dry_run (1LL<<11)
+#define FLAG_no_backup_if_mismatch (1LL<<12)
+#endif
+
+#ifdef FOR_pgrep
+#define CLEANUP_pgrep
+#ifndef TT
+#define TT this.pgrep
+#endif
+#define FLAG_L (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#define FLAG_o (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_G (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#define FLAG_P (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_U (FORCED_FLAG<<11)
+#define FLAG_u (FORCED_FLAG<<12)
+#define FLAG_d (FORCED_FLAG<<13)
+#define FLAG_l (FORCED_FLAG<<14)
+#define FLAG_c (FORCED_FLAG<<15)
+#endif
+
+#ifdef FOR_pidof
+#define CLEANUP_pidof
+#ifndef TT
+#define TT this.pidof
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_ping
+#define CLEANUP_ping
+#ifndef TT
+#define TT this.ping
+#endif
+#define FLAG_I (FORCED_FLAG<<0)
+#define FLAG_6 (FORCED_FLAG<<1)
+#define FLAG_4 (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_w (FORCED_FLAG<<5)
+#define FLAG_W (FORCED_FLAG<<6)
+#define FLAG_i (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_c (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_m (FORCED_FLAG<<11)
+#endif
+
+#ifdef FOR_pivot_root
+#define CLEANUP_pivot_root
+#ifndef TT
+#define TT this.pivot_root
+#endif
+#endif
+
+#ifdef FOR_pkill
+#define CLEANUP_pkill
+#ifndef TT
+#define TT this.pkill
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_x (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#define FLAG_o (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_G (FORCED_FLAG<<6)
+#define FLAG_g (FORCED_FLAG<<7)
+#define FLAG_P (FORCED_FLAG<<8)
+#define FLAG_s (FORCED_FLAG<<9)
+#define FLAG_t (FORCED_FLAG<<10)
+#define FLAG_U (FORCED_FLAG<<11)
+#define FLAG_u (FORCED_FLAG<<12)
+#define FLAG_V (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_pmap
+#define CLEANUP_pmap
+#ifndef TT
+#define TT this.pmap
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_printenv
+#define CLEANUP_printenv
+#ifndef TT
+#define TT this.printenv
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_null (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_printf
+#define CLEANUP_printf
+#ifndef TT
+#define TT this.printf
+#endif
+#endif
+
+#ifdef FOR_ps
+#define CLEANUP_ps
+#ifndef TT
+#define TT this.ps
+#endif
+#define FLAG_Z (FORCED_FLAG<<0)
+#define FLAG_w (FORCED_FLAG<<1)
+#define FLAG_G (FORCED_FLAG<<2)
+#define FLAG_g (FORCED_FLAG<<3)
+#define FLAG_U (FORCED_FLAG<<4)
+#define FLAG_u (FORCED_FLAG<<5)
+#define FLAG_T (FORCED_FLAG<<6)
+#define FLAG_t (FORCED_FLAG<<7)
+#define FLAG_s (FORCED_FLAG<<8)
+#define FLAG_p (FORCED_FLAG<<9)
+#define FLAG_O (FORCED_FLAG<<10)
+#define FLAG_o (FORCED_FLAG<<11)
+#define FLAG_n (FORCED_FLAG<<12)
+#define FLAG_M (FORCED_FLAG<<13)
+#define FLAG_l (FORCED_FLAG<<14)
+#define FLAG_f (FORCED_FLAG<<15)
+#define FLAG_e (FORCED_FLAG<<16)
+#define FLAG_d (FORCED_FLAG<<17)
+#define FLAG_A (FORCED_FLAG<<18)
+#define FLAG_a (FORCED_FLAG<<19)
+#define FLAG_P (FORCED_FLAG<<20)
+#define FLAG_k (FORCED_FLAG<<21)
+#endif
+
+#ifdef FOR_pwd
+#define CLEANUP_pwd
+#ifndef TT
+#define TT this.pwd
+#endif
+#define FLAG_P (1LL<<0)
+#define FLAG_L (1LL<<1)
+#endif
+
+#ifdef FOR_pwdx
+#define CLEANUP_pwdx
+#ifndef TT
+#define TT this.pwdx
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_pwgen
+#define CLEANUP_pwgen
+#ifndef TT
+#define TT this.pwgen
+#endif
+#define FLAG_0 (FORCED_FLAG<<0)
+#define FLAG_A (FORCED_FLAG<<1)
+#define FLAG_v (FORCED_FLAG<<2)
+#define FLAG_1 (FORCED_FLAG<<3)
+#define FLAG_C (FORCED_FLAG<<4)
+#define FLAG_h (FORCED_FLAG<<5)
+#define FLAG_B (FORCED_FLAG<<6)
+#define FLAG_s (FORCED_FLAG<<7)
+#define FLAG_y (FORCED_FLAG<<8)
+#define FLAG_n (FORCED_FLAG<<9)
+#define FLAG_c (FORCED_FLAG<<10)
+#define FLAG_r (FORCED_FLAG<<11)
+#endif
+
+#ifdef FOR_readahead
+#define CLEANUP_readahead
+#ifndef TT
+#define TT this.readahead
+#endif
+#endif
+
+#ifdef FOR_readelf
+#define CLEANUP_readelf
+#ifndef TT
+#define TT this.readelf
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_W (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#define FLAG_n (FORCED_FLAG<<5)
+#define FLAG_l (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_e (FORCED_FLAG<<8)
+#define FLAG_d (FORCED_FLAG<<9)
+#define FLAG_a (FORCED_FLAG<<10)
+#define FLAG_A (FORCED_FLAG<<11)
+#define FLAG_dyn_syms (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_readlink
+#define CLEANUP_readlink
+#ifndef TT
+#define TT this.readlink
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_n (1LL<<5)
+#define FLAG_v (1LL<<6)
+#endif
+
+#ifdef FOR_realpath
+#define CLEANUP_realpath
+#ifndef TT
+#define TT this.realpath
+#endif
+#define FLAG_z (1LL<<0)
+#define FLAG_q (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_e (1LL<<3)
+#define FLAG_P (1LL<<4)
+#define FLAG_L (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_R (1LL<<7)
+#define FLAG_relative_base (1LL<<8)
+#endif
+
+#ifdef FOR_reboot
+#define CLEANUP_reboot
+#ifndef TT
+#define TT this.reboot
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_renice
+#define CLEANUP_renice
+#ifndef TT
+#define TT this.renice
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_g (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_reset
+#define CLEANUP_reset
+#ifndef TT
+#define TT this.reset
+#endif
+#endif
+
+#ifdef FOR_restorecon
+#define CLEANUP_restorecon
+#ifndef TT
+#define TT this.restorecon
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_r (FORCED_FLAG<<1)
+#define FLAG_R (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_F (FORCED_FLAG<<4)
+#define FLAG_D (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_rev
+#define CLEANUP_rev
+#ifndef TT
+#define TT this.rev
+#endif
+#endif
+
+#ifdef FOR_rfkill
+#define CLEANUP_rfkill
+#ifndef TT
+#define TT this.rfkill
+#endif
+#endif
+
+#ifdef FOR_rm
+#define CLEANUP_rm
+#ifndef TT
+#define TT this.rm
+#endif
+#define FLAG_v (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_R (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_rmdir
+#define CLEANUP_rmdir
+#ifndef TT
+#define TT this.rmdir
+#endif
+#define FLAG_p (1LL<<0)
+#define FLAG_ignore_fail_on_non_empty (1LL<<1)
+#endif
+
+#ifdef FOR_rmmod
+#define CLEANUP_rmmod
+#ifndef TT
+#define TT this.rmmod
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_w (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_route
+#define CLEANUP_route
+#ifndef TT
+#define TT this.route
+#endif
+#define FLAG_A (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_rtcwake
+#define CLEANUP_rtcwake
+#ifndef TT
+#define TT this.rtcwake
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_t (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_d (FORCED_FLAG<<6)
+#define FLAG_a (FORCED_FLAG<<7)
+#define FLAG_auto (FORCED_FLAG<<8)
+#define FLAG_list_modes (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_runcon
+#define CLEANUP_runcon
+#ifndef TT
+#define TT this.runcon
+#endif
+#endif
+
+#ifdef FOR_sed
+#define CLEANUP_sed
+#ifndef TT
+#define TT this.sed
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_z (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_E (1LL<<3)
+#define FLAG_n (1LL<<4)
+#define FLAG_i (1LL<<5)
+#define FLAG_f (1LL<<6)
+#define FLAG_e (1LL<<7)
+#define FLAG_tarxform (1LL<<8)
+#define FLAG_version (1LL<<9)
+#define FLAG_help (1LL<<10)
+#endif
+
+#ifdef FOR_sendevent
+#define CLEANUP_sendevent
+#ifndef TT
+#define TT this.sendevent
+#endif
+#endif
+
+#ifdef FOR_seq
+#define CLEANUP_seq
+#ifndef TT
+#define TT this.seq
+#endif
+#define FLAG_w (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_f (1LL<<2)
+#endif
+
+#ifdef FOR_set
+#define CLEANUP_set
+#ifndef TT
+#define TT this.set
+#endif
+#endif
+
+#ifdef FOR_setenforce
+#define CLEANUP_setenforce
+#ifndef TT
+#define TT this.setenforce
+#endif
+#endif
+
+#ifdef FOR_setfattr
+#define CLEANUP_setfattr
+#ifndef TT
+#define TT this.setfattr
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_setsid
+#define CLEANUP_setsid
+#ifndef TT
+#define TT this.setsid
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_w (1LL<<2)
+#endif
+
+#ifdef FOR_sh
+#define CLEANUP_sh
+#ifndef TT
+#define TT this.sh
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_s (FORCED_FLAG<<2)
+#define FLAG_norc (FORCED_FLAG<<3)
+#define FLAG_noprofile (FORCED_FLAG<<4)
+#define FLAG_noediting (FORCED_FLAG<<5)
+#endif
+
+#ifdef FOR_sha3sum
+#define CLEANUP_sha3sum
+#ifndef TT
+#define TT this.sha3sum
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_S (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_shift
+#define CLEANUP_shift
+#ifndef TT
+#define TT this.shift
+#endif
+#endif
+
+#ifdef FOR_shred
+#define CLEANUP_shred
+#ifndef TT
+#define TT this.shred
+#endif
+#define FLAG_f (FORCED_FLAG<<0)
+#define FLAG_o (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_s (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_x (FORCED_FLAG<<5)
+#define FLAG_z (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_shuf
+#define CLEANUP_shuf
+#ifndef TT
+#define TT this.shuf
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_e (FORCED_FLAG<<1)
+#define FLAG_z (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_skeleton
+#define CLEANUP_skeleton
+#ifndef TT
+#define TT this.skeleton
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_e (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_g (FORCED_FLAG<<6)
+#define FLAG_h (FORCED_FLAG<<7)
+#define FLAG_also (FORCED_FLAG<<8)
+#define FLAG_blubber (FORCED_FLAG<<9)
+#define FLAG_walrus (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_skeleton_alias
+#define CLEANUP_skeleton_alias
+#ifndef TT
+#define TT this.skeleton_alias
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_sleep
+#define CLEANUP_sleep
+#ifndef TT
+#define TT this.sleep
+#endif
+#endif
+
+#ifdef FOR_sntp
+#define CLEANUP_sntp
+#ifndef TT
+#define TT this.sntp
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#define FLAG_q (FORCED_FLAG<<1)
+#define FLAG_D (FORCED_FLAG<<2)
+#define FLAG_d (FORCED_FLAG<<3)
+#define FLAG_s (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_t (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_S (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_M (FORCED_FLAG<<10)
+#endif
+
+#ifdef FOR_sort
+#define CLEANUP_sort
+#ifndef TT
+#define TT this.sort
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_u (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_z (1LL<<6)
+#define FLAG_s (1LL<<7)
+#define FLAG_c (1LL<<8)
+#define FLAG_C (1LL<<9)
+#define FLAG_M (1LL<<10)
+#define FLAG_b (1LL<<11)
+#define FLAG_V (1LL<<12)
+#define FLAG_x (1LL<<13)
+#define FLAG_t (1LL<<14)
+#define FLAG_k (1LL<<15)
+#define FLAG_o (1LL<<16)
+#define FLAG_m (1LL<<17)
+#define FLAG_T (1LL<<18)
+#define FLAG_S (1LL<<19)
+#define FLAG_g (1LL<<20)
+#endif
+
+#ifdef FOR_source
+#define CLEANUP_source
+#ifndef TT
+#define TT this.source
+#endif
+#endif
+
+#ifdef FOR_split
+#define CLEANUP_split
+#ifndef TT
+#define TT this.split
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_l (FORCED_FLAG<<1)
+#define FLAG_b (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_stat
+#define CLEANUP_stat
+#ifndef TT
+#define TT this.stat
+#endif
+#define FLAG_t (1LL<<0)
+#define FLAG_L (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_c (1LL<<3)
+#endif
+
+#ifdef FOR_strace
+#define CLEANUP_strace
+#ifndef TT
+#define TT this.strace
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_s (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_strings
+#define CLEANUP_strings
+#ifndef TT
+#define TT this.strings
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#define FLAG_f (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_t (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_stty
+#define CLEANUP_stty
+#ifndef TT
+#define TT this.stty
+#endif
+#define FLAG_g (FORCED_FLAG<<0)
+#define FLAG_F (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_su
+#define CLEANUP_su
+#ifndef TT
+#define TT this.su
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#define FLAG_g (FORCED_FLAG<<2)
+#define FLAG_u (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#define FLAG_m (FORCED_FLAG<<5)
+#define FLAG_l (FORCED_FLAG<<6)
+#endif
+
+#ifdef FOR_sulogin
+#define CLEANUP_sulogin
+#ifndef TT
+#define TT this.sulogin
+#endif
+#define FLAG_t (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_swapoff
+#define CLEANUP_swapoff
+#ifndef TT
+#define TT this.swapoff
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_swapon
+#define CLEANUP_swapon
+#ifndef TT
+#define TT this.swapon
+#endif
+#define FLAG_d (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_switch_root
+#define CLEANUP_switch_root
+#ifndef TT
+#define TT this.switch_root
+#endif
+#define FLAG_h (FORCED_FLAG<<0)
+#define FLAG_c (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_sync
+#define CLEANUP_sync
+#ifndef TT
+#define TT this.sync
+#endif
+#endif
+
+#ifdef FOR_sysctl
+#define CLEANUP_sysctl
+#ifndef TT
+#define TT this.sysctl
+#endif
+#define FLAG_A (FORCED_FLAG<<0)
+#define FLAG_a (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_w (FORCED_FLAG<<3)
+#define FLAG_q (FORCED_FLAG<<4)
+#define FLAG_N (FORCED_FLAG<<5)
+#define FLAG_e (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_syslogd
+#define CLEANUP_syslogd
+#ifndef TT
+#define TT this.syslogd
+#endif
+#define FLAG_D (FORCED_FLAG<<0)
+#define FLAG_L (FORCED_FLAG<<1)
+#define FLAG_K (FORCED_FLAG<<2)
+#define FLAG_S (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#define FLAG_a (FORCED_FLAG<<5)
+#define FLAG_f (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_O (FORCED_FLAG<<8)
+#define FLAG_m (FORCED_FLAG<<9)
+#define FLAG_s (FORCED_FLAG<<10)
+#define FLAG_b (FORCED_FLAG<<11)
+#define FLAG_R (FORCED_FLAG<<12)
+#define FLAG_l (FORCED_FLAG<<13)
+#endif
+
+#ifdef FOR_tac
+#define CLEANUP_tac
+#ifndef TT
+#define TT this.tac
+#endif
+#endif
+
+#ifdef FOR_tail
+#define CLEANUP_tail
+#ifndef TT
+#define TT this.tail
+#endif
+#define FLAG_n (1LL<<0)
+#define FLAG_c (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_F (1LL<<3)
+#define FLAG_f (1LL<<4)
+#endif
+
+#ifdef FOR_tar
+#define CLEANUP_tar
+#ifndef TT
+#define TT this.tar
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_a (1LL<<1)
+#define FLAG_f (1LL<<2)
+#define FLAG_C (1LL<<3)
+#define FLAG_I (1LL<<4)
+#define FLAG_T (1LL<<5)
+#define FLAG_X (1LL<<6)
+#define FLAG_m (1LL<<7)
+#define FLAG_P (1LL<<8)
+#define FLAG_O (1LL<<9)
+#define FLAG_S (1LL<<10)
+#define FLAG_z (1LL<<11)
+#define FLAG_j (1LL<<12)
+#define FLAG_J (1LL<<13)
+#define FLAG_v (1LL<<14)
+#define FLAG_t (1LL<<15)
+#define FLAG_x (1LL<<16)
+#define FLAG_h (1LL<<17)
+#define FLAG_c (1LL<<18)
+#define FLAG_k (1LL<<19)
+#define FLAG_p (1LL<<20)
+#define FLAG_o (1LL<<21)
+#define FLAG_xform (1LL<<22)
+#define FLAG_strip (1LL<<23)
+#define FLAG_to_command (1LL<<24)
+#define FLAG_owner (1LL<<25)
+#define FLAG_group (1LL<<26)
+#define FLAG_mtime (1LL<<27)
+#define FLAG_mode (1LL<<28)
+#define FLAG_sort (1LL<<29)
+#define FLAG_exclude (1LL<<30)
+#define FLAG_overwrite (1LL<<31)
+#define FLAG_no_same_permissions (1LL<<32)
+#define FLAG_numeric_owner (1LL<<33)
+#define FLAG_null (1LL<<34)
+#define FLAG_no_recursion (1LL<<35)
+#define FLAG_full_time (1LL<<36)
+#define FLAG_restrict (1LL<<37)
+#define FLAG_selinux (1LL<<38)
+#define FLAG_show_transformed_names (1LL<<39)
+#define FLAG_wildcards_match_slash (1LL<<40)
+#define FLAG_no_wildcards_match_slash (1LL<<41)
+#define FLAG_wildcards (1LL<<42)
+#define FLAG_no_wildcards (1LL<<43)
+#define FLAG_anchored (1LL<<44)
+#define FLAG_no_anchored (1LL<<45)
+#define FLAG_ignore_case (1LL<<46)
+#define FLAG_no_ignore_case (1LL<<47)
+#define FLAG_one_file_system (1LL<<48)
+#endif
+
+#ifdef FOR_taskset
+#define CLEANUP_taskset
+#ifndef TT
+#define TT this.taskset
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_tcpsvd
+#define CLEANUP_tcpsvd
+#ifndef TT
+#define TT this.tcpsvd
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_E (FORCED_FLAG<<1)
+#define FLAG_h (FORCED_FLAG<<2)
+#define FLAG_l (FORCED_FLAG<<3)
+#define FLAG_u (FORCED_FLAG<<4)
+#define FLAG_C (FORCED_FLAG<<5)
+#define FLAG_b (FORCED_FLAG<<6)
+#define FLAG_c (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_tee
+#define CLEANUP_tee
+#ifndef TT
+#define TT this.tee
+#endif
+#define FLAG_a (1LL<<0)
+#define FLAG_i (1LL<<1)
+#endif
+
+#ifdef FOR_telnet
+#define CLEANUP_telnet
+#ifndef TT
+#define TT this.telnet
+#endif
+#endif
+
+#ifdef FOR_telnetd
+#define CLEANUP_telnetd
+#ifndef TT
+#define TT this.telnetd
+#endif
+#define FLAG_i (FORCED_FLAG<<0)
+#define FLAG_K (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_F (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_p (FORCED_FLAG<<6)
+#define FLAG_b (FORCED_FLAG<<7)
+#define FLAG_w (FORCED_FLAG<<8)
+#endif
+
+#ifdef FOR_test
+#define CLEANUP_test
+#ifndef TT
+#define TT this.test
+#endif
+#endif
+
+#ifdef FOR_tftp
+#define CLEANUP_tftp
+#ifndef TT
+#define TT this.tftp
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_g (FORCED_FLAG<<1)
+#define FLAG_l (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_b (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_tftpd
+#define CLEANUP_tftpd
+#ifndef TT
+#define TT this.tftpd
+#endif
+#define FLAG_l (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_c (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_time
+#define CLEANUP_time
+#ifndef TT
+#define TT this.time
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_timeout
+#define CLEANUP_timeout
+#ifndef TT
+#define TT this.timeout
+#endif
+#define FLAG_i (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_k (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_preserve_status (1LL<<4)
+#define FLAG_foreground (1LL<<5)
+#endif
+
+#ifdef FOR_top
+#define CLEANUP_top
+#ifndef TT
+#define TT this.top
+#endif
+#define FLAG_q (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_n (FORCED_FLAG<<2)
+#define FLAG_m (FORCED_FLAG<<3)
+#define FLAG_d (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_u (FORCED_FLAG<<6)
+#define FLAG_p (FORCED_FLAG<<7)
+#define FLAG_o (FORCED_FLAG<<8)
+#define FLAG_k (FORCED_FLAG<<9)
+#define FLAG_H (FORCED_FLAG<<10)
+#define FLAG_h (FORCED_FLAG<<11)
+#define FLAG_O (FORCED_FLAG<<12)
+#endif
+
+#ifdef FOR_touch
+#define CLEANUP_touch
+#ifndef TT
+#define TT this.touch
+#endif
+#define FLAG_h (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_m (1LL<<3)
+#define FLAG_f (1LL<<4)
+#define FLAG_d (1LL<<5)
+#define FLAG_c (1LL<<6)
+#define FLAG_a (1LL<<7)
+#endif
+
+#ifdef FOR_toybox
+#define CLEANUP_toybox
+#ifndef TT
+#define TT this.toybox
+#endif
+#endif
+
+#ifdef FOR_tr
+#define CLEANUP_tr
+#ifndef TT
+#define TT this.tr
+#endif
+#define FLAG_d (1LL<<0)
+#define FLAG_t (1LL<<1)
+#define FLAG_s (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_C (1LL<<4)
+#endif
+
+#ifdef FOR_traceroute
+#define CLEANUP_traceroute
+#ifndef TT
+#define TT this.traceroute
+#endif
+#define FLAG_4 (FORCED_FLAG<<0)
+#define FLAG_6 (FORCED_FLAG<<1)
+#define FLAG_F (FORCED_FLAG<<2)
+#define FLAG_U (FORCED_FLAG<<3)
+#define FLAG_I (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_d (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_v (FORCED_FLAG<<8)
+#define FLAG_r (FORCED_FLAG<<9)
+#define FLAG_m (FORCED_FLAG<<10)
+#define FLAG_p (FORCED_FLAG<<11)
+#define FLAG_q (FORCED_FLAG<<12)
+#define FLAG_s (FORCED_FLAG<<13)
+#define FLAG_t (FORCED_FLAG<<14)
+#define FLAG_w (FORCED_FLAG<<15)
+#define FLAG_g (FORCED_FLAG<<16)
+#define FLAG_z (FORCED_FLAG<<17)
+#define FLAG_f (FORCED_FLAG<<18)
+#define FLAG_i (FORCED_FLAG<<19)
+#endif
+
+#ifdef FOR_true
+#define CLEANUP_true
+#ifndef TT
+#define TT this.true
+#endif
+#endif
+
+#ifdef FOR_truncate
+#define CLEANUP_truncate
+#ifndef TT
+#define TT this.truncate
+#endif
+#define FLAG_c (1LL<<0)
+#define FLAG_s (1LL<<1)
+#endif
+
+#ifdef FOR_ts
+#define CLEANUP_ts
+#ifndef TT
+#define TT this.ts
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_m (FORCED_FLAG<<1)
+#define FLAG_i (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_tsort
+#define CLEANUP_tsort
+#ifndef TT
+#define TT this.tsort
+#endif
+#endif
+
+#ifdef FOR_tty
+#define CLEANUP_tty
+#ifndef TT
+#define TT this.tty
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_tunctl
+#define CLEANUP_tunctl
+#ifndef TT
+#define TT this.tunctl
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_uclampset
+#define CLEANUP_uclampset
+#ifndef TT
+#define TT this.uclampset
+#endif
+#define FLAG_R (FORCED_FLAG<<0)
+#define FLAG_M (FORCED_FLAG<<1)
+#define FLAG_m (FORCED_FLAG<<2)
+#define FLAG_a (FORCED_FLAG<<3)
+#define FLAG_p (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_ulimit
+#define CLEANUP_ulimit
+#ifndef TT
+#define TT this.ulimit
+#endif
+#define FLAG_c (FORCED_FLAG<<0)
+#define FLAG_d (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_f (FORCED_FLAG<<3)
+#define FLAG_i (FORCED_FLAG<<4)
+#define FLAG_l (FORCED_FLAG<<5)
+#define FLAG_m (FORCED_FLAG<<6)
+#define FLAG_n (FORCED_FLAG<<7)
+#define FLAG_p (FORCED_FLAG<<8)
+#define FLAG_q (FORCED_FLAG<<9)
+#define FLAG_R (FORCED_FLAG<<10)
+#define FLAG_r (FORCED_FLAG<<11)
+#define FLAG_s (FORCED_FLAG<<12)
+#define FLAG_t (FORCED_FLAG<<13)
+#define FLAG_u (FORCED_FLAG<<14)
+#define FLAG_v (FORCED_FLAG<<15)
+#define FLAG_a (FORCED_FLAG<<16)
+#define FLAG_H (FORCED_FLAG<<17)
+#define FLAG_S (FORCED_FLAG<<18)
+#define FLAG_P (FORCED_FLAG<<19)
+#endif
+
+#ifdef FOR_umount
+#define CLEANUP_umount
+#ifndef TT
+#define TT this.umount
+#endif
+#define FLAG_v (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_a (FORCED_FLAG<<2)
+#define FLAG_r (FORCED_FLAG<<3)
+#define FLAG_l (FORCED_FLAG<<4)
+#define FLAG_f (FORCED_FLAG<<5)
+#define FLAG_D (FORCED_FLAG<<6)
+#define FLAG_d (FORCED_FLAG<<7)
+#define FLAG_n (FORCED_FLAG<<8)
+#define FLAG_c (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_uname
+#define CLEANUP_uname
+#ifndef TT
+#define TT this.uname
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_n (1LL<<1)
+#define FLAG_r (1LL<<2)
+#define FLAG_v (1LL<<3)
+#define FLAG_m (1LL<<4)
+#define FLAG_o (1LL<<5)
+#define FLAG_a (1LL<<6)
+#define FLAG_p (1LL<<7)
+#endif
+
+#ifdef FOR_unicode
+#define CLEANUP_unicode
+#ifndef TT
+#define TT this.unicode
+#endif
+#endif
+
+#ifdef FOR_uniq
+#define CLEANUP_uniq
+#ifndef TT
+#define TT this.uniq
+#endif
+#define FLAG_u (1LL<<0)
+#define FLAG_d (1LL<<1)
+#define FLAG_c (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_z (1LL<<4)
+#define FLAG_w (1LL<<5)
+#define FLAG_s (1LL<<6)
+#define FLAG_f (1LL<<7)
+#endif
+
+#ifdef FOR_unix2dos
+#define CLEANUP_unix2dos
+#ifndef TT
+#define TT this.unix2dos
+#endif
+#endif
+
+#ifdef FOR_unlink
+#define CLEANUP_unlink
+#ifndef TT
+#define TT this.unlink
+#endif
+#endif
+
+#ifdef FOR_unset
+#define CLEANUP_unset
+#ifndef TT
+#define TT this.unset
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#define FLAG_v (FORCED_FLAG<<1)
+#define FLAG_f (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_unshare
+#define CLEANUP_unshare
+#ifndef TT
+#define TT this.unshare
+#endif
+#define FLAG_U (FORCED_FLAG<<0)
+#define FLAG_u (FORCED_FLAG<<1)
+#define FLAG_p (FORCED_FLAG<<2)
+#define FLAG_n (FORCED_FLAG<<3)
+#define FLAG_m (FORCED_FLAG<<4)
+#define FLAG_i (FORCED_FLAG<<5)
+#define FLAG_C (FORCED_FLAG<<6)
+#define FLAG_r (FORCED_FLAG<<7)
+#define FLAG_f (FORCED_FLAG<<8)
+#define FLAG_a (FORCED_FLAG<<9)
+#endif
+
+#ifdef FOR_uptime
+#define CLEANUP_uptime
+#ifndef TT
+#define TT this.uptime
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#define FLAG_p (FORCED_FLAG<<1)
+#endif
+
+#ifdef FOR_useradd
+#define CLEANUP_useradd
+#ifndef TT
+#define TT this.useradd
+#endif
+#define FLAG_H (FORCED_FLAG<<0)
+#define FLAG_D (FORCED_FLAG<<1)
+#define FLAG_S (FORCED_FLAG<<2)
+#define FLAG_h (FORCED_FLAG<<3)
+#define FLAG_g (FORCED_FLAG<<4)
+#define FLAG_s (FORCED_FLAG<<5)
+#define FLAG_G (FORCED_FLAG<<6)
+#define FLAG_u (FORCED_FLAG<<7)
+#endif
+
+#ifdef FOR_userdel
+#define CLEANUP_userdel
+#ifndef TT
+#define TT this.userdel
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_usleep
+#define CLEANUP_usleep
+#ifndef TT
+#define TT this.usleep
+#endif
+#endif
+
+#ifdef FOR_uudecode
+#define CLEANUP_uudecode
+#ifndef TT
+#define TT this.uudecode
+#endif
+#define FLAG_o (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_uuencode
+#define CLEANUP_uuencode
+#ifndef TT
+#define TT this.uuencode
+#endif
+#define FLAG_m (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_uuidgen
+#define CLEANUP_uuidgen
+#ifndef TT
+#define TT this.uuidgen
+#endif
+#define FLAG_r (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_vconfig
+#define CLEANUP_vconfig
+#ifndef TT
+#define TT this.vconfig
+#endif
+#endif
+
+#ifdef FOR_vi
+#define CLEANUP_vi
+#ifndef TT
+#define TT this.vi
+#endif
+#define FLAG_s (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_vmstat
+#define CLEANUP_vmstat
+#ifndef TT
+#define TT this.vmstat
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_w
+#define CLEANUP_w
+#ifndef TT
+#define TT this.w
+#endif
+#endif
+
+#ifdef FOR_wait
+#define CLEANUP_wait
+#ifndef TT
+#define TT this.wait
+#endif
+#define FLAG_n (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_watch
+#define CLEANUP_watch
+#ifndef TT
+#define TT this.watch
+#endif
+#define FLAG_x (FORCED_FLAG<<0)
+#define FLAG_b (FORCED_FLAG<<1)
+#define FLAG_e (FORCED_FLAG<<2)
+#define FLAG_t (FORCED_FLAG<<3)
+#define FLAG_n (FORCED_FLAG<<4)
+#endif
+
+#ifdef FOR_watchdog
+#define CLEANUP_watchdog
+#ifndef TT
+#define TT this.watchdog
+#endif
+#define FLAG_T (FORCED_FLAG<<0)
+#define FLAG_t (FORCED_FLAG<<1)
+#define FLAG_F (FORCED_FLAG<<2)
+#endif
+
+#ifdef FOR_wc
+#define CLEANUP_wc
+#ifndef TT
+#define TT this.wc
+#endif
+#define FLAG_l (1LL<<0)
+#define FLAG_w (1LL<<1)
+#define FLAG_m (1LL<<2)
+#define FLAG_c (1LL<<3)
+#define FLAG_L (1LL<<4)
+#endif
+
+#ifdef FOR_wget
+#define CLEANUP_wget
+#ifndef TT
+#define TT this.wget
+#endif
+#define FLAG_p (FORCED_FLAG<<0)
+#define FLAG_O (FORCED_FLAG<<1)
+#define FLAG_d (FORCED_FLAG<<2)
+#define FLAG_max_redirect (FORCED_FLAG<<3)
+#endif
+
+#ifdef FOR_which
+#define CLEANUP_which
+#ifndef TT
+#define TT this.which
+#endif
+#define FLAG_a (1LL<<0)
+#endif
+
+#ifdef FOR_who
+#define CLEANUP_who
+#ifndef TT
+#define TT this.who
+#endif
+#define FLAG_a (FORCED_FLAG<<0)
+#endif
+
+#ifdef FOR_xargs
+#define CLEANUP_xargs
+#ifndef TT
+#define TT this.xargs
+#endif
+#define FLAG_0 (1LL<<0)
+#define FLAG_s (1LL<<1)
+#define FLAG_n (1LL<<2)
+#define FLAG_r (1LL<<3)
+#define FLAG_t (1LL<<4)
+#define FLAG_p (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_P (1LL<<7)
+#define FLAG_E (1LL<<8)
+#endif
+
+#ifdef FOR_xxd
+#define CLEANUP_xxd
+#ifndef TT
+#define TT this.xxd
+#endif
+#define FLAG_s (1LL<<0)
+#define FLAG_r (1LL<<1)
+#define FLAG_p (1LL<<2)
+#define FLAG_i (1LL<<3)
+#define FLAG_e (1LL<<4)
+#define FLAG_g (1LL<<5)
+#define FLAG_o (1LL<<6)
+#define FLAG_l (1LL<<7)
+#define FLAG_c (1LL<<8)
+#endif
+
+#ifdef FOR_xzcat
+#define CLEANUP_xzcat
+#ifndef TT
+#define TT this.xzcat
+#endif
+#endif
+
+#ifdef FOR_yes
+#define CLEANUP_yes
+#ifndef TT
+#define TT this.yes
+#endif
+#endif
+
+#ifdef FOR_zcat
+#define CLEANUP_zcat
+#ifndef TT
+#define TT this.zcat
+#endif
+#define FLAG_9 (1LL<<0)
+#define FLAG_8 (1LL<<1)
+#define FLAG_7 (1LL<<2)
+#define FLAG_6 (1LL<<3)
+#define FLAG_5 (1LL<<4)
+#define FLAG_4 (1LL<<5)
+#define FLAG_3 (1LL<<6)
+#define FLAG_2 (1LL<<7)
+#define FLAG_1 (1LL<<8)
+#define FLAG_t (1LL<<9)
+#define FLAG_k (1LL<<10)
+#define FLAG_f (1LL<<11)
+#define FLAG_d (1LL<<12)
+#define FLAG_c (1LL<<13)
+#endif
+
diff --git a/android/mac/generated/globals.h b/android/mac/generated/globals.h
new file mode 100644
index 0000000..a4172c1
--- /dev/null
+++ b/android/mac/generated/globals.h
@@ -0,0 +1,412 @@
+struct gzip_data {
+  int level;
+};
+
+struct hostname_data {
+  char *F;
+};
+
+struct md5sum_data {
+  int sawline;
+};
+
+struct mktemp_data {
+  char *p, *tmpdir;
+};
+
+struct seq_data {
+  char *s, *f;
+
+  int precision, buflen;
+};
+
+struct microcom_data {
+  long s;
+
+  int fd, stok;
+  struct termios old_stdin, old_fd;
+};
+
+struct dos2unix_data {
+  char *tempfile;
+};
+
+struct getopt_data {
+  struct arg_list *l;
+  char *o, *n;
+};
+
+struct realpath_data {
+  char *R, *relative_base;
+};
+
+struct setsid_data {
+  long c;
+};
+
+struct stat_data {
+  char *c;
+
+  union {
+    struct stat st;
+    struct statfs sf;
+  } stat;
+  char *file, *pattern;
+  int patlen;
+};
+
+struct timeout_data {
+  char *s, *k;
+
+  struct pollfd pfd;
+  sigjmp_buf sj;
+  int fds[2], pid, rc;
+};
+
+struct truncate_data {
+  char *s;
+
+  long long size;
+  int type;
+};
+
+struct xxd_data {
+  long s, g, o, l, c;
+};
+
+struct diff_data {
+  long U;
+  struct arg_list *L;
+  char *F, *S, *new_line_format, *old_line_format, *unchanged_line_format;
+
+  int dir_num, size, is_binary, differ, change, len[2], *offset[2];
+  struct stat st[2];
+  struct {
+    char **list;
+    int nr_elm;
+  } dir[2];
+  struct {
+    FILE *fp;
+    int len;
+  } file[2];
+};
+
+struct expr_data {
+  char **tok, *delete;
+};
+
+struct tr_data {
+  short *map;
+  int len1, len2;
+};
+
+struct basename_data {
+  char *s;
+};
+
+struct chmod_data {
+  char *mode;
+};
+
+struct cmp_data {
+  long n;
+
+  int fd;
+  char *name;
+};
+
+struct cp_data {
+  union {
+    // install's options
+    struct {
+      char *g, *o, *m, *t;
+    } i;
+    // cp's options
+    struct {
+      char *t, *preserve;
+    } c;
+  };
+
+  char *destname;
+  struct stat top;
+  int (*callback)(struct dirtree *try);
+  uid_t uid;
+  gid_t gid;
+  int pflags;
+};
+
+struct cpio_data {
+  char *F, *H, *R;
+};
+
+struct cut_data {
+  char *d, *O;
+  struct arg_list *select[5]; // we treat them the same, so loop through
+
+  unsigned line;
+  int pairs;
+  regex_t reg;
+};
+
+struct date_data {
+  char *s, *r, *I, *D, *d;
+
+  unsigned nano;
+};
+
+struct dd_data {
+  // Display fields
+  int show_xfer, show_records;
+  unsigned long long bytes, in_full, in_part, out_full, out_part, start;
+};
+
+struct du_data {
+  long d;
+
+  unsigned long depth, total;
+  dev_t st_dev;
+  void *inodes;
+};
+
+struct env_data {
+  struct arg_list *u;
+  char *e;
+};
+
+struct file_data {
+  int max_name_len;
+  off_t len;
+};
+
+struct find_data {
+  char **filter;
+  struct double_list *argdata;
+  int topdir, xdev, depth;
+  time_t now;
+  long max_bytes;
+  char *start;
+};
+
+struct grep_data {
+  long m, A, B, C;
+  struct arg_list *f, *e, *M, *S, *exclude_dir;
+  char *color;
+
+  char *purple, *cyan, *red, *green, *grey;
+  struct double_list *reg;
+  int found, tried, delim;
+  struct arg_list **fixed;
+};
+
+struct head_data {
+  long c, n;
+
+  int file_no;
+};
+
+struct id_data {
+  int is_groups;
+};
+
+struct ln_data {
+  char *t;
+};
+
+struct ls_data {
+  long w, l, block_size;
+  char *color, *sort;
+
+  struct dirtree *files, *singledir;
+  unsigned screen_width;
+  int nl_title;
+  char *escmore;
+};
+
+struct mkdir_data {
+  char *m, *Z;
+};
+
+struct nl_data {
+  char *s, *n, *b;
+  long w, l, v;
+
+  // Count of consecutive blank lines for -l has to persist between files
+  long lcount, slen;
+};
+
+struct od_data {
+  struct arg_list *t;
+  char *A;
+  long N, w, j;
+
+  int address_idx;
+  unsigned types, leftover, star;
+  char *buf; // Points to buffers[0] or buffers[1].
+  char *bufs[2]; // Used to detect duplicate lines.
+  off_t pos;
+};
+
+struct paste_data {
+  char *d;
+
+  int files;
+};
+
+struct patch_data {
+  char *i, *d;
+  long v, p, g, F;
+
+  void *current_hunk;
+  long oldline, oldlen, newline, newlen, linenum, outnum;
+  int context, state, filein, fileout, filepatch, hunknum;
+  char *tempname;
+};
+
+struct sed_data {
+  char *i;
+  struct arg_list *f, *e;
+
+  // processed pattern list
+  struct double_list *pattern;
+
+  char *nextline, *remember, *tarxform;
+  void *restart, *lastregex;
+  long nextlen, rememberlen, count;
+  int fdout, noeol;
+  unsigned xx, tarxlen, xflags;
+  char delim, xftype;
+};
+
+struct sort_data {
+  char *t;
+  struct arg_list *k;
+  char *o, *T, S;
+
+  void *key_list;
+  unsigned linecount;
+  char **lines, *name;
+};
+
+struct tail_data {
+  long n, c;
+  char *s;
+
+  int file_no, last_fd, ss;
+  struct xnotify *not;
+  struct {
+    char *path;
+    int fd;
+    struct dev_ino di;
+  } *F;
+};
+
+struct tar_data {
+  char *f, *C, *I;
+  struct arg_list *T, *X, *xform;
+  long strip;
+  char *to_command, *owner, *group, *mtime, *mode, *sort;
+  struct arg_list *exclude;
+
+  struct double_list *incl, *excl, *seen;
+  struct string_list *dirs;
+  char *cwd, **xfsed;
+  int fd, ouid, ggid, hlc, warn, sparselen, pid, xfpipe[2];
+  struct dev_ino archive_di;
+  long long *sparse;
+  time_t mtt;
+
+  // hardlinks seen so far (hlc many)
+  struct {
+    char *arg;
+    struct dev_ino di;
+  } *hlx;
+
+  // Parsed information about a tar header.
+  struct tar_header {
+    char *name, *link_target, *uname, *gname;
+    long long size, ssize;
+    uid_t uid;
+    gid_t gid;
+    mode_t mode;
+    time_t mtime;
+    dev_t device;
+  } hdr;
+};
+
+struct tee_data {
+  void *outputs;
+  int out;
+};
+
+struct touch_data {
+  char *t, *r, *d;
+};
+
+struct uniq_data {
+  long w, s, f;
+
+  long repeats;
+};
+
+struct wc_data {
+  unsigned long totals[5];
+};
+
+struct xargs_data {
+  long s, n, P;
+  char *E;
+
+  long entries, bytes, np;
+  char delim;
+  FILE *tty;
+};
+extern union global_union {
+	struct gzip_data gzip;
+	struct hostname_data hostname;
+	struct md5sum_data md5sum;
+	struct mktemp_data mktemp;
+	struct seq_data seq;
+	struct microcom_data microcom;
+	struct dos2unix_data dos2unix;
+	struct getopt_data getopt;
+	struct realpath_data realpath;
+	struct setsid_data setsid;
+	struct stat_data stat;
+	struct timeout_data timeout;
+	struct truncate_data truncate;
+	struct xxd_data xxd;
+	struct diff_data diff;
+	struct expr_data expr;
+	struct tr_data tr;
+	struct basename_data basename;
+	struct chmod_data chmod;
+	struct cmp_data cmp;
+	struct cp_data cp;
+	struct cpio_data cpio;
+	struct cut_data cut;
+	struct date_data date;
+	struct dd_data dd;
+	struct du_data du;
+	struct env_data env;
+	struct file_data file;
+	struct find_data find;
+	struct grep_data grep;
+	struct head_data head;
+	struct id_data id;
+	struct ln_data ln;
+	struct ls_data ls;
+	struct mkdir_data mkdir;
+	struct nl_data nl;
+	struct od_data od;
+	struct paste_data paste;
+	struct patch_data patch;
+	struct sed_data sed;
+	struct sort_data sort;
+	struct tail_data tail;
+	struct tar_data tar;
+	struct tee_data tee;
+	struct touch_data touch;
+	struct uniq_data uniq;
+	struct wc_data wc;
+	struct xargs_data xargs;
+} this;
diff --git a/android/mac/generated/help.h b/android/mac/generated/help.h
new file mode 100644
index 0000000..b3c74b1
--- /dev/null
+++ b/android/mac/generated/help.h
@@ -0,0 +1,692 @@
+#define HELP_toybox_force_nommu "When using musl-libc on a nommu system, you'll need to say \"y\" here\nunless you used the patch in the mcm-buildall.sh script. You can also\nsay \"y\" here to test the nommu codepaths on an mmu system.\n\nA nommu system can't use fork(), it can only vfork() which suspends\nthe parent until the child calls exec() or exits. When a program\nneeds a second instance of itself to run specific code at the same\ntime as the parent, it must use a more complicated approach (such as\nexec(\"/proc/self/exe\") then pass data to the new child through a pipe)\nwhich is larger and slower, especially for things like toysh subshells\nthat need to duplicate a lot of internal state in the child process\nfork() gives you for free.\n\nLibraries like uclibc omit fork() on nommu systems, allowing\ncompile-time probes to select which codepath to use. But musl\nintentionally includes a broken version of fork() that always returns\n-ENOSYS on nommu systems, and goes out of its way to prevent any\ncross-compile compatible compile-time probes for a nommu system.\n(It doesn't even #define __MUSL__ in features.h.) Musl does this\ndespite the fact that a nommu system can't even run standard ELF\nbinaries (requiring specially packaged executables) because it wants\nto force every program to either include all nommu code in every\ninstance ever built, or drop nommu support altogether.\n\nBuilding a scripts/mcm-buildall.sh toolchain patches musl to fix this."
+
+#define HELP_toybox_uid_usr "When commands like useradd/groupadd allocate user IDs, start here."
+
+#define HELP_toybox_uid_sys "When commands like useradd/groupadd allocate system IDs, start here."
+
+#define HELP_toybox_debug "Enable extra checks for debugging purposes. All of them catch\nthings that can only go wrong at development time, not runtime."
+
+#define HELP_toybox_norecurse "When one toybox command calls another, usually it just calls the new\ncommand's main() function rather than searching the $PATH and calling\nexec on another file (which is much slower).\n\nThis disables that optimization, so toybox will run external commands\n       even when it has a built-in version of that command. This requires\n       toybox symlinks to be installed in the $PATH, or re-invoking the\n       \"toybox\" multiplexer command by name."
+
+#define HELP_toybox_free "When a program exits, the operating system will clean up after it\n(free memory, close files, etc). To save size, toybox usually relies\non this behavior. If you're running toybox under a debugger or\nwithout a real OS (ala newlib+libgloss), enable this to make toybox\nclean up after itself."
+
+#define HELP_toybox_zhelp "Compress help with gzip -9, deflating when displayed. This makes the\nbinary smaller but can increase runtime memory usage."
+
+#define HELP_toybox_help_dashdash "Support --help argument in all commands, even ones with a NULL\noptstring. (Use TOYFLAG_NOHELP to disable.) Produces the same output\nas \"help command\". --version shows toybox version."
+
+#define HELP_toybox_help "Include help text for each command."
+
+#define HELP_toybox_float "Include floating point support infrastructure and commands that\nrequire it."
+
+#define HELP_toybox_libz "Use libz for gz support."
+
+#define HELP_toybox_libcrypto "Use faster hash functions out of external -lcrypto library."
+
+#define HELP_toybox_smack "Include SMACK options in commands like ls for systems like Tizen."
+
+#define HELP_toybox_selinux "Include SELinux options in commands such as ls, and add\nSELinux-specific commands such as chcon to the Android menu."
+
+#define HELP_toybox_lsm_none "Don't try to achieve \"watertight\" by plugging the holes in a\ncollander, instead use conventional unix security (and possibly\nLinux Containers) for a simple straightforward system."
+
+#define HELP_toybox_suid "Support for the Set User ID bit, to install toybox suid root and drop\npermissions for commands which do not require root access. To use\nthis change ownership of the file to the root user and set the suid\nbit in the file permissions:\n\nchown root:root toybox; chmod +s toybox\n\nprompt \"Security Blanket\"\ndefault TOYBOX_LSM_NONE\nhelp\nSelect a Linux Security Module to complicate your system\nuntil you can't find holes in it."
+
+#define HELP_toybox "usage: toybox [--long | --help | --version | [COMMAND] [ARGUMENTS...]]\n\nWith no arguments, \"toybox\" shows available COMMAND names. Add --long\nto include suggested install path for each command, see\nhttps://landley.net/toybox/faq.html#install for details.\n\nFirst argument is name of a COMMAND to run, followed by any ARGUMENTS\nto that command. Most toybox commands also understand:\n\n--help		Show command help (only)\n--version	Show toybox version (only)\n\nThe filename \"-\" means stdin/stdout, and \"--\" stops argument parsing.\n\nNumerical arguments accept a single letter suffix for\nkilo, mega, giga, tera, peta, and exabytes, plus an additional\n\"d\" to indicate decimal 1000's instead of 1024.\n\nDurations can be decimal fractions and accept minute (\"m\"), hour (\"h\"),\nor day (\"d\") suffixes (so 0.1m = 6s)."
+
+#define HELP_setenforce "usage: setenforce [enforcing|permissive|1|0]\n\nSets whether SELinux is enforcing (1) or permissive (0)."
+
+#define HELP_sendevent "usage: sendevent DEVICE TYPE CODE VALUE\n\nSends a Linux input event."
+
+#define HELP_runcon "usage: runcon CONTEXT COMMAND [ARGS...]\n\nRun a command in a specified security context."
+
+#define HELP_restorecon "usage: restorecon [-D] [-F] [-R] [-n] [-v] FILE...\n\nRestores the default security contexts for the given files.\n\n-D	Apply to /data/data too\n-F	Force reset\n-R	Recurse into directories\n-n	Don't make any changes; useful with -v to see what would change\n-v	Verbose"
+
+#define HELP_log "usage: log [-p PRI] [-t TAG] [MESSAGE...]\n\nLogs message (or stdin) to logcat.\n\n-p	Use the given priority instead of INFO:\n	d: DEBUG  e: ERROR  f: FATAL  i: INFO  v: VERBOSE  w: WARN  s: SILENT\n-t	Use the given tag instead of \"log\""
+
+#define HELP_load_policy "usage: load_policy FILE\n\nLoad the specified SELinux policy file."
+
+#define HELP_getenforce "usage: getenforce\n\nShows whether SELinux is disabled, enforcing, or permissive."
+
+#define HELP_skeleton_alias "usage: skeleton_alias [-dq] [-b NUMBER]\n\nExample of a second command with different arguments in the same source\nfile as the first. This allows shared infrastructure outside of lib/."
+
+#define HELP_skeleton "usage: skeleton [-a] [-b STRING] [-c NUMBER] [-d LIST] [-e COUNT] [...]\n\nTemplate for new commands. You don't need this.\n\nWhen creating a new command, copy this file and delete the parts you\ndon't need. Be sure to replace all instances of \"skeleton\" (upper and lower\ncase) with your new command name.\n\nFor simple commands, \"hello.c\" is probably a better starting point."
+
+#define HELP_logpath "usage: logpath ...\n\nAppend command line to $LOGPATH, then call second instance\nof command in $PATH."
+
+#define HELP_hostid "usage: hostid\n\nPrint the numeric identifier for the current host."
+
+#define HELP_hello "usage: hello\n\nA hello world program.\n\nMostly used as a simple template for adding new commands.\nOccasionally nice to smoketest kernel booting via \"init=/usr/bin/hello\"."
+
+#define HELP_demo_utf8towc "usage: demo_utf8towc\n\nPrint differences between toybox's utf8 conversion routines vs libc du jour."
+
+#define HELP_demo_scankey "usage: demo_scankey\n\nMove a letter around the screen. Hit ESC to exit."
+
+#define HELP_demo_number "usage: demo_number [-hsbi] [-D LEN] NUMBER...\n\n-D	output field is LEN chars\n-M	input units (index into bkmgtpe)\n-c	Comma comma down do be do down down\n-b	Use \"B\" for single byte units (HR_B)\n-d	Decimal units\n-h	Human readable\n-s	Space between number and units (HR_SPACE)"
+
+#define HELP_demo_many_options "usage: demo_many_options -[a-zA-Z]\n\nPrint the optflags value of the command arguments, in hex."
+
+#define HELP_umount "usage: umount [-a [-t TYPE[,TYPE...]]] [-vrfD] [DIR...]\n\nUnmount the listed filesystems.\n\n-a	Unmount all mounts in /proc/mounts instead of command line list\n-D	Don't free loopback device(s)\n-f	Force unmount\n-l	Lazy unmount (detach from filesystem now, close when last user does)\n-n	Don't use /proc/mounts\n-r	Remount read only if unmounting fails\n-t	Restrict \"all\" to mounts of TYPE (or use \"noTYPE\" to skip)\n-v	Verbose"
+
+#define HELP_sync "usage: sync\n\nWrite pending cached data to disk (synchronize), blocking until done."
+
+#define HELP_su "usage: su [-lp] [-u UID] [-g GID,...] [-s SHELL] [-c CMD] [USER [COMMAND...]]\n\nSwitch user, prompting for password of new user when not run as root.\n\nWith one argument, switch to USER and run user's shell from /etc/passwd.\nWith no arguments, USER is root. If COMMAND line provided after USER,\nexec() it as new USER (bypassing shell). If -u or -g specified, first\nargument (if any) isn't USER (it's COMMAND).\n\nfirst argument is USER name to switch to (which must exist).\nNon-root users are prompted for new user's password.\n\n-s	Shell to use (default is user's shell from /etc/passwd)\n-c	Command line to pass to -s shell (ala sh -c \"CMD\")\n-l	Reset environment as if new login.\n-u	Switch to UID instead of USER\n-g	Switch to GID (only root allowed, can be comma separated list)\n-p	Preserve environment (except for $PATH and $IFS)"
+
+#define HELP_seq "usage: seq [-w|-f fmt_str] [-s sep_str] [first] [increment] last\n\nCount from first to last, by increment. Omitted arguments default\nto 1. Two arguments are used as first and last. Arguments can be\nnegative or floating point.\n\n-f	Use fmt_str as a printf-style floating point format string\n-s	Use sep_str as separator, default is a newline character\n-w	Pad to equal width with leading zeroes"
+
+#define HELP_pidof "usage: pidof [-s] [-o omitpid[,omitpid...]] [NAME...]\n\nPrint the PIDs of all processes with the given names.\n\n-o	Omit PID(s)\n-s	Single shot, only return one pid\n-x	Match shell scripts too"
+
+#define HELP_passwd_sad "Password changes are checked to make sure they're at least 6 chars long,\ndon't include the entire username (but not a subset of it), or the entire\nprevious password (but changing password1, password2, password3 is fine).\nThis heuristic accepts \"aaaaaa\" and \"123456\"."
+
+#define HELP_passwd "usage: passwd [-a ALGO] [-dlu] [USER]\n\nUpdate user's login password. Defaults to current user.\n\n-a ALGO	Encryption method (des, md5, sha256, sha512) default: md5\n-d		Set password to ''\n-l		Lock (disable) account\n-u		Unlock (enable) account"
+
+#define HELP_mount "usage: mount [-afFrsvw] [-t TYPE] [-o OPTION,] [[DEVICE] DIR]\n\nMount new filesystem(s) on directories. With no arguments, display existing\nmounts.\n\n-a	Mount all entries in /etc/fstab (with -t, only entries of that TYPE)\n-O	Only mount -a entries that have this option\n-f	Fake it (don't actually mount)\n-r	Read only (same as -o ro)\n-w	Read/write (default, same as -o rw)\n-t	Specify filesystem type\n-v	Verbose\n\nOPTIONS is a comma separated list of options, which can also be supplied\nas --longopts.\n\nAutodetects loopback mounts (a file on a directory) and bind mounts (file\non file, directory on directory), so you don't need to say --bind or --loop.\nYou can also \"mount -a /path\" to mount everything in /etc/fstab under /path,\neven if it's noauto. DEVICE starting with UUID= is identified by blkid -U."
+
+#define HELP_mktemp "usage: mktemp [-dqtu] [-p DIR] [TEMPLATE]\n\nSafely create a new file \"DIR/TEMPLATE\" and print its name.\n\n-d	Create directory instead of file (--directory)\n-p	Put new file in DIR (--tmpdir)\n-q	Quiet, no error messages\n-t	Prefer $TMPDIR > DIR > /tmp (default DIR > $TMPDIR > /tmp)\n-u	Don't create anything, just print what would be created\n\nEach X in TEMPLATE is replaced with a random printable character. The\ndefault TEMPLATE is tmp.XXXXXXXXXX."
+
+#define HELP_mknod_z "usage: mknod [-Z CONTEXT] ...\n\n-Z	Set security context to created file"
+
+#define HELP_mknod "usage: mknod [-m MODE] NAME TYPE [MAJOR MINOR]\n\nCreate a special file NAME with a given type. TYPE is b for block device,\nc or u for character device, p for named pipe (which ignores MAJOR/MINOR).\n\n-m	Mode (file permissions) of new device, in octal or u+x format"
+
+#define HELP_sha512sum "See md5sum"
+
+#define HELP_sha384sum "See md5sum"
+
+#define HELP_sha256sum "See md5sum"
+
+#define HELP_sha224sum "See md5sum"
+
+#define HELP_sha1sum "See md5sum"
+
+#define HELP_md5sum "usage: ???sum [-bcs] [FILE]...\n\nCalculate hash for each input file, reading from stdin if none, writing\nhexadecimal digits to stdout for each input file (md5=32 hex digits,\nsha1=40, sha224=56, sha256=64, sha384=96, sha512=128) followed by filename.\n\n-b	Brief (hash only, no filename)\n-c	Check each line of each FILE is the same hash+filename we'd output\n-s	No output, exit status 0 if all hashes match, 1 otherwise"
+
+#define HELP_killall "usage: killall [-l] [-iqv] [-SIGNAL|-s SIGNAL] PROCESS_NAME...\n\nSend a signal (default: TERM) to all processes with the given names.\n\n-i	Ask for confirmation before killing\n-l	Print list of all available signals\n-q	Don't print any warnings or error messages\n-s	Send SIGNAL instead of SIGTERM\n-v	Report if the signal was successfully sent\n-w	Wait until all signaled processes are dead"
+
+#define HELP_dnsdomainname "usage: dnsdomainname\n\nShow domain this system belongs to (same as hostname -d)."
+
+#define HELP_hostname "usage: hostname [-bdsf] [-F FILENAME] [newname]\n\nGet/set the current hostname.\n\n-b	Set hostname to 'localhost' if otherwise unset\n-d	Show DNS domain name (no host)\n-f	Show fully-qualified name (host+domain, FQDN)\n-F	Set hostname to contents of FILENAME\n-s	Show short host name (no domain)"
+
+#define HELP_zcat "usage: zcat [-f] [FILE...]\n\nDecompress files to stdout. Like `gzip -dc`.\n\n-f	Force: allow read from tty"
+
+#define HELP_gunzip "usage: gunzip [-cfkt] [FILE...]\n\nDecompress files. With no files, decompresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles without the .gz suffix.\n\n-c	Output to stdout (act as zcat)\n-f	Force: allow read from tty\n-k	Keep input files (default is to remove)\n-t	Test integrity"
+
+#define HELP_gzip "usage: gzip [-19cdfkt] [FILE...]\n\nCompress files. With no files, compresses stdin to stdout.\nOn success, the input files are removed and replaced by new\nfiles with the .gz suffix.\n\n-c	Output to stdout\n-d	Decompress (act as gunzip)\n-f	Force: allow overwrite of output file\n-k	Keep input files (default is to remove)\n-t	Test integrity\n-#	Compression level 1-9 (1:fastest, 6:default, 9:best)"
+
+#define HELP_dmesg "usage: dmesg [-Cc] [-r|-t|-T] [-n LEVEL] [-s SIZE] [-w]\n\nPrint or control the kernel ring buffer.\n\n-C	Clear ring buffer without printing\n-c	Clear ring buffer after printing\n-n	Set kernel logging LEVEL (1-8)\n-r	Raw output (with <level markers>)\n-S	Use syslog(2) rather than /dev/kmsg\n-s	Show the last SIZE many bytes\n-T	Human readable timestamps\n-t	Don't print timestamps\n-w	Keep waiting for more output (aka --follow)"
+
+#define HELP_wget_libtls "Enable HTTPS support for wget by linking to LibTLS.\nSupports using libtls, libretls or libtls-bearssl.\n\nUse TOYBOX_LIBCRYPTO to enable HTTPS support via OpenSSL."
+
+#define HELP_wget "usage: wget [OPTIONS]... [URL]\n    --max-redirect          maximum redirections allowed\n-d, --debug                 print lots of debugging information\n-O, --output-document=FILE  specify output filename\n-p, --post-data=DATA        send data in body of POST request\n\nexamples:\n  wget http://www.example.com"
+
+#define HELP_tunctl "usage: tunctl [-dtT] [-u USER] NAME\n\nCreate and delete tun/tap virtual ethernet devices.\n\n-T	Use tap (ethernet frames) instead of tun (ip packets)\n-d	Delete tun/tap device\n-t	Create tun/tap device\n-u	Set owner (user who can read/write device without root access)"
+
+#define HELP_sntp "usage: sntp [-saSdDq] [-r SHIFT] [-mM[ADDRESS]] [-p PORT] [SERVER]\n\nSimple Network Time Protocol client. Query SERVER and display time.\n\n-p	Use PORT (default 123)\n-s	Set system clock suddenly\n-a	Adjust system clock gradually\n-S	Serve time instead of querying (bind to SERVER address if specified)\n-m	Wait for updates from multicast ADDRESS (RFC 4330 suggests 224.0.1.1)\n-M	Multicast server on ADDRESS (RFC 4330 suggests 224.0.1.1)\n-t	TTL (multicast only, default 1)\n-d	Daemonize (run in background re-querying)\n-D	Daemonize but stay in foreground: re-query time every 1000 seconds\n-r	Retry shift (every 1<<SHIFT seconds)\n-q	Quiet (don't display time)"
+
+#define HELP_rfkill "usage: rfkill COMMAND [DEVICE]\n\nEnable/disable wireless devices.\n\nCommands:\nlist [DEVICE]   List current state\nblock DEVICE    Disable device\nunblock DEVICE  Enable device\n\nDEVICE is an index number, or one of:\nall, wlan(wifi), bluetooth, uwb(ultrawideband), wimax, wwan, gps, fm."
+
+#define HELP_ping "usage: ping [OPTIONS] HOST\n\nCheck network connectivity by sending packets to a host and reporting\nits response.\n\nSend ICMP ECHO_REQUEST packets to ipv4 or ipv6 addresses and prints each\necho it receives back, with round trip time. Returns true if host alive.\n\nOptions:\n-4, -6		Force IPv4 or IPv6\n-c CNT		Send CNT many packets (default 3, 0 = infinite)\n-f		Flood (print . and \\b to show drops, default -c 15 -i 0.2)\n-i TIME		Interval between packets (default 1, need root for < .2)\n-I IFACE/IP	Source interface or address\n-m MARK		Tag outgoing packets using SO_MARK\n-q		Quiet (stops after one returns true if host is alive)\n-s SIZE		Data SIZE in bytes (default 56)\n-t TTL		Set Time To Live (number of hops)\n-W SEC		Seconds to wait for response after last -c packet (default 3)\n-w SEC		Exit after this many seconds"
+
+#define HELP_netstat "usage: netstat [-pWrxwutneal]\n\nDisplay networking information. Default is netstat -tuwx\n\n-r	Routing table\n-a	All sockets (not just connected)\n-l	Listening server sockets\n-t	TCP sockets\n-u	UDP sockets\n-w	Raw sockets\n-x	Unix sockets\n-e	Extended info\n-n	Don't resolve names\n-W	Wide display\n-p	Show PID/program name of sockets"
+
+#define HELP_netcat "usage: netcat [-46ELlntUu] [-pqWw #] [-s addr] {IPADDR PORTNUM|-f FILENAME|COMMAND...}\n\nForward stdin/stdout to a file or network connection.\n\n-4	Force IPv4\n-6	Force IPv6\n-E	Forward stderr\n-f	Use FILENAME (ala /dev/ttyS0) instead of network\n-L	Listen and background each incoming connection (server mode)\n-l	Listen for one incoming connection, then exit\n-n	No DNS lookup\n-p	Local port number\n-q	Quit SECONDS after EOF on stdin, even if stdout hasn't closed yet\n-s	Local source address\n-t	Allocate tty\n-v	Verbose\n-u	Use UDP\n-U	Use a UNIX domain socket\n-W	SECONDS timeout for more data on an idle connection\n-w	SECONDS timeout to establish connection\n-z	zero-I/O mode [used for scanning]\n\nWhen listening the COMMAND line is executed as a child process to handle\nan incoming connection. With no COMMAND -l forwards the connection\nto stdin/stdout. If no -p specified, -l prints the port it bound to and\nbackgrounds itself (returning immediately).\n\nFor a quick-and-dirty server, try something like:\nnetcat -s 127.0.0.1 -p 1234 -tL sh -l\n\nOr use \"stty 115200 -F /dev/ttyS0 && stty raw -echo -ctlecho\" with\nnetcat -f to connect to a serial port."
+
+#define HELP_microcom "usage: microcom [-s SPEED] [-X] DEVICE\n\nSimple serial console. Hit CTRL-] for menu.\n\n-s	Set baud rate to SPEED (default 115200)\n-X	Ignore ^] menu escape"
+
+#define HELP_ifconfig "usage: ifconfig [-aS] [INTERFACE [ACTION...]]\n\nDisplay or configure network interface.\n\nWith no arguments, display active interfaces. First argument is interface\nto operate on, one argument by itself displays that interface.\n\n-a	All interfaces displayed, not just active ones\n-S	Short view, one line per interface\n\nStandard ACTIONs to perform on an INTERFACE:\n\nADDR[/MASK]        - set IPv4 address (1.2.3.4/5) and activate interface\nadd|del ADDR[/LEN] - add/remove IPv6 address (1111::8888/128)\nup|down            - activate or deactivate interface\n\nAdvanced ACTIONs (default values usually suffice):\n\ndefault          - remove IPv4 address\nnetmask ADDR     - set IPv4 netmask via 255.255.255.0 instead of /24\ntxqueuelen LEN   - number of buffered packets before output blocks\nmtu LEN          - size of outgoing packets (Maximum Transmission Unit)\nbroadcast ADDR   - Set broadcast address\npointopoint ADDR - PPP and PPPOE use this instead of \"route add default gw\"\nhw TYPE ADDR     - set hardware (mac) address (type = ether|infiniband)\nrename NEWNAME   - rename interface\n\nFlags you can set on an interface (or -remove by prefixing with -):\n\narp       - don't use Address Resolution Protocol to map LAN routes\npromisc   - don't discard packets that aren't to this LAN hardware address\nmulticast - force interface into multicast mode if the driver doesn't\nallmulti  - promisc for multicast packets"
+
+#define HELP_httpd "usage: httpd [-de STR] [-v] [DIR]\n\nServe contents of directory as static web pages.\n\n-e	Escape STR as URL, printing result and exiting.\n-d	Decode escaped STR, printing result and exiting.\n-v	Verbose"
+
+#define HELP_host "usage: host [-v] [-t TYPE] NAME [SERVER]\n\nLook up DNS records for NAME, either domain name or IPv4/IPv6 address to\nreverse lookup, from SERVER or default DNS server(s).\n\n-a	All records\n-t TYPE	Record TYPE (number or ANY A AAAA CNAME MX NS PTR SOA SRV TXT)\n-v	Verbose"
+
+#define HELP_ftpput "An ftpget that defaults to -s instead of -g"
+
+#define HELP_ftpget "usage: ftpget [-cvgslLmMdD] [-P PORT] [-p PASSWORD] [-u USER] HOST [LOCAL] REMOTE\n\nTalk to ftp server. By default get REMOTE file via passive anonymous\ntransfer, optionally saving under a LOCAL name. Can also send, list, etc.\n\n-c	Continue partial transfer\n-p	Use PORT instead of \"21\"\n-P	Use PASSWORD instead of \"ftpget@\"\n-u	Use USER instead of \"anonymous\"\n-v	Verbose\n\nWays to interact with FTP server:\n-d	Delete file\n-D	Remove directory\n-g	Get file (default)\n-l	List directory\n-L	List (filenames only)\n-m	Move file on server from LOCAL to REMOTE\n-M	mkdir\n-s	Send file"
+
+#define HELP_yes "usage: yes [args...]\n\nRepeatedly output line until killed. If no args, output 'y'."
+
+#define HELP_xxd "usage: xxd [-eipr] [-cglos N] [file]\n\nHexdump a file to stdout. If no file is listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-c N	Show N bytes per line (default 16)\n-e	Little-endian\n-g N	Group bytes by adding a ' ' every N bytes (default 2)\n-i	Output include file (CSV hex bytes, plus C header/footer if not stdin)\n-l N	Limit of N bytes before stopping (default is no limit)\n-o N	Add N to display offset\n-p	Plain hexdump (30 bytes/line, no grouping. With -c 0 no wrap/group)\n-r	Reverse operation: turn a hexdump into a binary file\n-s N	Skip to offset N"
+
+#define HELP_which "usage: which [-a] filename ...\n\nSearch $PATH for executable files matching filename(s).\n\n-a	Show all matches"
+
+#define HELP_watchdog "usage: watchdog [-F] [-t UPDATE] [-T DEADLINE] DEV\n\nStart the watchdog timer at DEV with optional timeout parameters.\n\n-F	run in the foreground (do not daemonize)\n-t	poke watchdog every UPDATE seconds (default 4)\n-T	reboot if not poked for DEADLINE seconds (default 60)"
+
+#define HELP_watch "usage: watch [-tebx] [-n SEC] COMMAND...\n\nRun COMMAND every -n seconds, showing output that fits terminal, q to quit.\n\n-n	Number of seconds between repeats (default 2.0)\n-t	Don't print header\n-e	Exit on error\n-b	Beep on command error\n-x	Exec command directly (without \"sh -c\")"
+
+#define HELP_w "usage: w\n\nShow who is logged on and since how long they logged in."
+
+#define HELP_vmstat "usage: vmstat [-n] [DELAY [COUNT]]\n\nPrint virtual memory statistics, repeating each DELAY seconds, COUNT times.\n(With no DELAY, prints one line. With no COUNT, repeats until killed.)\n\nShow processes running and blocked, kilobytes swapped, free, buffered, and\ncached, kilobytes swapped in and out per second, file disk blocks input and\noutput per second, interrupts and context switches per second, percent\nof CPU time spent running user code, system code, idle, and awaiting I/O.\nFirst line is since system started, later lines are since last line.\n\n-n	Display the header only once"
+
+#define HELP_vconfig "usage: vconfig COMMAND [OPTIONS]\n\nCreate and remove virtual ethernet devices\n\nadd             [interface-name] [vlan_id]\nrem             [vlan-name]\nset_flag        [interface-name] [flag-num]       [0 | 1]\nset_egress_map  [vlan-name]      [skb_priority]   [vlan_qos]\nset_ingress_map [vlan-name]      [skb_priority]   [vlan_qos]\nset_name_type   [name-type]"
+
+#define HELP_uuidgen "usage: uuidgen\n\nCreate and print a new RFC4122 random UUID."
+
+#define HELP_usleep "usage: usleep MICROSECONDS\n\nPause for MICROSECONDS microseconds."
+
+#define HELP_uptime "usage: uptime [-ps]\n\nTell the current time, how long the system has been running, the number\nof users, and the system load averages for the past 1, 5 and 15 minutes.\n\n-p	Pretty (human readable) uptime\n-s	Since when has the system been up?"
+
+#define HELP_uclampset "usage: uclampset [-m MIN] [-M MAX] {-p PID | COMMAND...}\n\nSet or query process utilization limits ranging from 0 to 1024, or -1 to\nreset to system default. With no arguments, prints current values.\n\n-m MIN      Reserve at least this much CPU utilization for task\n-M MAX      Limit task to at most this much CPU utilization\n-p PID	Apply to PID rather than new COMMAND\n-R	Reset child processes to default values on fork\n-a	Apply to all threads for the given PID"
+
+#define HELP_ts "usage: ts [-is] [FORMAT]\n\nAdd timestamps to each line in pipeline. Default format without options\n\"%b %d %H:%M:%S\", with -i or -s \"%H:%M:%S\".\n\n-i	Incremental (since previous line)\n-m	Add milliseconds\n-s	Since start"
+
+#define HELP_truncate "usage: truncate [-c] -s SIZE file...\n\nSet length of file(s), extending sparsely if necessary.\n\n-c	Don't create file if it doesn't exist\n-s	New size (with optional prefix and suffix)\n\nSIZE prefix: + add, - subtract, < shrink to, > expand to,\n             / multiple rounding down, % multiple rounding up\nSIZE suffix: k=1024, m=1024^2, g=1024^3, t=1024^4, p=1024^5, e=1024^6"
+
+#define HELP_timeout "usage: timeout [-iv] [-k DURATION] [-s SIGNAL] DURATION COMMAND...\n\nRun command line as a child process, sending child a signal if the\ncommand doesn't exit soon enough.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default).\n\n-i	Only kill for inactivity (restart timeout when command produces output)\n-k	Send KILL signal if child still running this long after first signal\n-s	Send specified signal (default TERM)\n-v	Verbose\n--foreground       Don't create new process group\n--preserve-status  Exit with the child's exit status"
+
+#define HELP_taskset "usage: taskset [-ap] [mask] [PID | cmd [args...]]\n\nLaunch a new task which may only run on certain processors, or change\nthe processor affinity of an existing PID.\n\nMask is a hex string where each bit represents a processor the process\nis allowed to run on. PID without a mask displays existing affinity.\n\n-p	Set/get the affinity of given PID instead of a new command\n-a	Set/get the affinity of all threads of the PID"
+
+#define HELP_nproc "usage: nproc [--all]\n\nPrint number of processors.\n\n--all	Show all processors, not just ones this task can run on"
+
+#define HELP_tac "usage: tac [FILE...]\n\nOutput lines in reverse order."
+
+#define HELP_sysctl "usage: sysctl [-aAeNnqw] [-p [FILE] | KEY[=VALUE]...]\n\nRead/write system control data (under /proc/sys).\n\n-a,A	Show all values\n-e	Don't warn about unknown keys\n-N	Don't print key values\n-n	Don't print key names\n-p	Read values from FILE (default /etc/sysctl.conf)\n-q	Don't show value after write\n-w	Only write values (object to reading)"
+
+#define HELP_switch_root "usage: switch_root [-c /dev/console] NEW_ROOT NEW_INIT...\n\nUse from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\nand exec NEW_INIT.\n\n-c	Redirect console to device in NEW_ROOT\n-h	Hang instead of exiting on failure (avoids kernel panic)"
+
+#define HELP_swapon "usage: swapon [-d] [-p priority] filename\n\nEnable swapping on a given device/file.\n\n-d	Discard freed SSD pages\n-p	Priority (highest priority areas allocated first)"
+
+#define HELP_swapoff "usage: swapoff FILE\n\nDisable swapping on a device or file."
+
+#define HELP_stat "usage: stat [-tfL] [-c FORMAT] FILE...\n\nDisplay status of files or filesystems.\n\n-c	Output specified FORMAT string instead of default\n-f	Display filesystem status instead of file status\n-L	Follow symlinks\n-t	terse (-c \"%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\")\n	      (with -f = -c \"%n %i %l %t %s %S %b %f %a %c %d\")\n\nThe valid format escape sequences for files:\n%a  Access bits (octal) |%A  Access bits (flags)|%b  Size/512\n%B  Bytes per %b (512)  |%C  Security context   |%d  Device ID (dec)\n%D  Device ID (hex)     |%f  All mode bits (hex)|%F  File type\n%g  Group ID            |%G  Group name         |%h  Hard links\n%i  Inode               |%m  Mount point        |%n  Filename\n%N  Long filename       |%o  I/O block size     |%s  Size (bytes)\n%t  Devtype major (hex) |%T  Devtype minor (hex)|%u  User ID\n%U  User name           |%x  Access time        |%X  Access unix time\n%y  Modification time   |%Y  Mod unix time      |%z  Creation time\n%Z  Creation unix time\n\nThe valid format escape sequences for filesystems:\n%a  Available blocks    |%b  Total blocks       |%c  Total inodes\n%d  Free inodes         |%f  Free blocks        |%i  File system ID\n%l  Max filename length |%n  File name          |%s  Best transfer size\n%S  Actual block size   |%t  FS type (hex)      |%T  FS type (driver name)"
+
+#define HELP_shuf "usage: shuf [-ze] [-n COUNT] [FILE...]\n\nWrite lines of input to output in random order.\n\n-z	Input/output lines are NUL terminated.\n-n	Stop after COUNT many output lines.\n-e	Echo mode: arguments are inputs to shuffle, not files to read."
+
+#define HELP_shred "usage: shred [-fuxz] [-n COUNT] [-o OFFSET] [-s SIZE] FILE...\n\nSecurely delete a file by overwriting its contents with random data.\n\n-f		Force (chmod if necessary)\n-n COUNT	Random overwrite iterations (default 1)\n-o OFFSET	Start at OFFSET\n-s SIZE		Use SIZE instead of detecting file size\n-u		Unlink (actually delete file when done)\n-x		Use exact size (default without -s rounds up to next 4k)\n-z		Zero at end\n\nNote: data journaling filesystems render this command useless, you must\noverwrite all free space (fill up disk) to erase old data on those."
+
+#define HELP_sha3sum "usage: sha3sum [-bS] [-a BITS] [FILE...]\n\nHash function du jour.\n\n-a	Produce a hash BITS long (default 224)\n-b	Brief (hash only, no filename)\n-S	Use SHAKE termination byte instead of SHA3 (ask FIPS why)"
+
+#define HELP_setsid "usage: setsid [-cdw] command [args...]\n\nRun process in a new session.\n\n-d	Detach from tty\n-c	Control tty (repeat to steal)\n-w	Wait for child (and exit with its status)"
+
+#define HELP_setfattr "usage: setfattr [-h] [-x|-n NAME] [-v VALUE] FILE...\n\nWrite POSIX extended attributes.\n\n-h	Do not dereference symlink\n-n	Set given attribute\n-x	Remove given attribute\n-v	Set value for attribute -n (default is empty)"
+
+#define HELP_rtcwake "usage: rtcwake [-aluv] [-d FILE] [-m MODE] [-s SECS] [-t UNIX]\n\nEnter the given sleep state until the given time.\n\n-a	RTC uses time specified in /etc/adjtime\n-d FILE	Device to use (default /dev/rtc)\n-l	RTC uses local time\n-m	Mode (--list-modes to see those supported by your kernel):\n	  standby  S1: default              mem     S3: suspend to RAM\n	  disk     S4: suspend to disk      off     S5: power off\n	  disable  Cancel current alarm     freeze  stop processes/processors\n	  no       just set wakeup time     on      just poll RTC for alarm\n	  show     just show current alarm\n-s SECS	Wake SECS seconds from now\n-t UNIX	Wake UNIX seconds from epoch\n-u	RTC uses UTC\n-v	Verbose"
+
+#define HELP_rmmod "usage: rmmod [-wf] MODULE...\n\nUnload the given kernel modules.\n\n-f	Force unload of a module\n-w	Wait until the module is no longer used"
+
+#define HELP_rev "usage: rev [FILE...]\n\nOutput each line reversed, when no files are given stdin is used."
+
+#define HELP_reset "usage: reset\n\nReset the terminal."
+
+#define HELP_reboot "usage: reboot/halt/poweroff [-fn] [-d DELAY]\n\nRestart, halt, or power off the system.\n\n-d	Wait DELAY before proceeding (in seconds or m/h/d suffix: -d 1.5m = 90s)\n-f	Force reboot (don't signal init, reboot directly)\n-n	Don't sync filesystems before reboot"
+
+#define HELP_realpath "usage: realpath [-LPemqsz] [--relative-base DIR] [-R DIR] FILE...\n\nDisplay the canonical absolute pathname\n\n-R Show ../path relative to DIR (--relative-to)\n-L Logical path (resolve .. before symlinks)\n-P Physical path (default)\n-e Canonical path to existing entry (fail if missing)\n-m Ignore missing entries, show where it would be\n-q Quiet (no error messages)\n-s Don't expand symlinks\n-z NUL instead of newline\n--relative-base  If path under DIR trim off prefix"
+
+#define HELP_readlink "usage: readlink [-efmnqz] FILE...\n\nWith no options, show what symlink points to, return error if not symlink.\n\nOptions for producing canonical paths (all symlinks/./.. resolved):\n\n-e	Canonical path to existing entry (fail if missing)\n-f	Full path (fail if directory missing)\n-m	Ignore missing entries, show where it would be\n-n	No trailing newline\n-q	Quiet (no error messages)\n-z	NUL instead of newline"
+
+#define HELP_readelf "usage: readelf [-AadehlnSs] [-p SECTION] [-x SECTION] [file...]\n\nDisplays information about ELF files.\n\n-A	Show architecture-specific info\n-a	Equivalent to -AdhlnSs\n-d	Show dynamic section\n-e	Headers (equivalent to -hlS)\n-h	Show ELF header\n-l	Show program headers\n-n	Show notes\n-p S	Dump strings found in named/numbered section\n-S	Show section headers\n-s	Show symbol tables (.dynsym and .symtab)\n-x S	Hex dump of named/numbered section\n\n--dyn-syms	Show just .dynsym symbol table"
+
+#define HELP_readahead "usage: readahead FILE...\n\nPreload files into disk cache."
+
+#define HELP_pwgen "usage: pwgen [-cAn0yrsBC1v] [-r CHARS] [LENGTH] [COUNT]\n\nGenerate human-readable random passwords. Default output to tty fills screen\nwith passwords to defeat shoulder surfing (pick one and clear the screen).\n\n-0	No numbers (--no-numerals)\n-1	Output one per line\n-A	No capital letters (--no-capitalize)\n-B	Avoid ambiguous characters like 0O and 1lI (--ambiguous)\n-C	Output in columns\n-c	Add capital letters (--capitalize)\n-n	Add numbers (--numerals)\n-r	Don't include the given CHARS (--remove)\n-v	No vowels.\n-y	Add punctuation (--symbols)"
+
+#define HELP_pwdx "usage: pwdx PID...\n\nPrint working directory of processes listed on command line."
+
+#define HELP_printenv "usage: printenv [-0] [env_var...]\n\nPrint environment variables.\n\n-0	Use \\0 as delimiter instead of \\n"
+
+#define HELP_pmap "usage: pmap [-pqx] PID...\n\nReport the memory map of a process or processes.\n\n-p	Show full paths\n-q	Do not show header or footer\n-x	Show the extended format"
+
+#define HELP_pivot_root "usage: pivot_root OLD NEW\n\nSwap OLD and NEW filesystems (as if by simultaneous mount --move), and\nmove all processes with chdir or chroot under OLD into NEW (including\nkernel threads) so OLD may be unmounted.\n\nThe directory NEW must exist under OLD. This doesn't work on initramfs,\nwhich can't be moved (about the same way PID 1 can't be killed; see\nswitch_root instead)."
+
+#define HELP_partprobe "usage: partprobe DEVICE...\n\nTell the kernel about partition table changes\n\nAsk the kernel to re-read the partition table on the specified devices."
+
+#define HELP_deallocvt "usage: deallocvt [NUM]\n\nDeallocate unused virtual terminals, either a specific /dev/ttyNUM, or all."
+
+#define HELP_chvt "usage: chvt NUM\n\nChange to virtual terminal number NUM. (This only works in text mode.)\n\nVirtual terminals are the Linux VGA text mode (or framebuffer) displays,\nswitched between via alt-F1, alt-F2, etc. Use ctrl-alt-F1 to switch\nfrom X11 to a virtual terminal, and alt-F6 (or F7, or F8) to get back."
+
+#define HELP_openvt "usage: openvt [-c NUM] [-sw] COMMAND...\n\nRun COMMAND on a new virtual terminal.\n\n-c NUM  Use VT NUM\n-s    Switch to the new VT\n-w    Wait for command to exit (with -s, deallocates VT on exit)"
+
+#define HELP_oneit "usage: oneit [-prn3] [-c CONSOLE] [COMMAND...]\n\nSimple init program that runs a single supplied command line with a\ncontrolling tty (so CTRL-C can kill it).\n\n-c	Which console device to use (/dev/console doesn't do CTRL-C, etc)\n-p	Power off instead of rebooting when command exits\n-r	Restart child when it exits\n-n	No reboot, just relaunch command line\n-3	Write 32 bit PID of each exiting reparented process to fd 3 of child\n	(Blocking writes, child must read to avoid eventual deadlock.)\n\nSpawns a single child process (because PID 1 has signals blocked)\nin its own session, reaps zombies until the child exits, then\nreboots the system (or powers off with -p, or restarts the child with -r).\n\nResponds to SIGUSR1 by halting the system, SIGUSR2 by powering off,\nand SIGTERM or SIGINT reboot."
+
+#define HELP_nsenter "usage: nsenter [-t pid] [-F] [-i] [-m] [-n] [-p] [-u] [-U] COMMAND...\n\nRun COMMAND in an existing (set of) namespace(s).\n\n-a	Enter all supported namespaces (--all)\n-F	don't fork, even if -p is used (--no-fork)\n-t	PID to take namespaces from    (--target)\n\nThe namespaces to switch are:\n\n-C	Control groups (--cgroup)\n-i	SysV IPC: message queues, semaphores, shared memory (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init, will fork unless -F is used (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nIf -t isn't specified, each namespace argument must provide a path\nto a namespace file, ala \"-i=/proc/$PID/ns/ipc\""
+
+#define HELP_unshare "usage: unshare [-imnpuUr] COMMAND...\n\nCreate new container namespace(s) for this process and its children, allowing\nthe new set of processes to have a different view of the system than the\nparent process.\n\n-a	Unshare all supported namespaces\n-f	Fork command in the background (--fork)\n-r	Become root (map current euid/egid to 0/0, implies -U) (--map-root-user)\n\nAvailable namespaces:\n-C	Control groups (--cgroup)\n-i	SysV IPC (message queues, semaphores, shared memory) (--ipc)\n-m	Mount/unmount tree (--mount)\n-n	Network address, sockets, routing, iptables (--net)\n-p	Process IDs and init (--pid)\n-u	Host and domain names (--uts)\n-U	UIDs, GIDs, capabilities (--user)\n\nEach namespace can take an optional argument, a persistent mountpoint usable\nby the nsenter command to add new processes to that the namespace. (Specify\nmultiple namespaces to unshare separately, ala -c -i -m because -cim is -c\nwith persistent mount \"im\".)"
+
+#define HELP_nbd_server "usage: nbd-server [-r] FILE\n\nServe a Network Block Device from FILE on stdin/out (ala inetd).\n\n-r	Read only export"
+
+#define HELP_nbd_client "usage: nbd-client [-ns] [-b BLKSZ] HOST PORT DEVICE\n\n-b	Block size (default 4096)\n-n	Do not daemonize\n-s	nbd swap support (lock server into memory)"
+
+#define HELP_mountpoint "usage: mountpoint [-qd] DIR\n       mountpoint [-qx] DEVICE\n\nCheck whether the directory or device is a mountpoint.\n\n-q	Be quiet, return zero if directory is a mountpoint\n-d	Print major/minor device number of the directory\n-x	Print major/minor device number of the block device"
+
+#define HELP_modinfo "usage: modinfo [-0] [-b basedir] [-k kernel] [-F field] [module|file...]\n\nDisplay module fields for modules specified by name or .ko path.\n\n-F  Only show the given field\n-0  Separate fields with NUL rather than newline\n-b  Use <basedir> as root for /lib/modules/\n-k  Look in given directory under /lib/modules/"
+
+#define HELP_mkswap "usage: mkswap [-L LABEL] DEVICE\n\nSet up a Linux swap area on a device or file."
+
+#define HELP_mkpasswd "usage: mkpasswd [-P FD] [-m TYPE] [-S SALT] [PASSWORD] [SALT]\n\nEncrypt PASSWORD using crypt(3), with either random or provided SALT.\n\n-P FD	Read password from file descriptor FD\n-m TYPE	Encryption method (des, md5, sha256, or sha512; default is des)"
+
+#define HELP_mix "usage: mix [-d DEV] [-c CHANNEL] [-l VOL] [-r RIGHT]\n\nList OSS sound channels (module snd-mixer-oss), or set volume(s).\n\n-c CHANNEL	Set/show volume of CHANNEL (default first channel found)\n-d DEV		Device node (default /dev/mixer)\n-l VOL		Volume level\n-r RIGHT	Volume of right stereo channel (with -r, -l sets left volume)"
+
+#define HELP_memeater "usage: memeater [-M] BYTES\n\nConsume the specified amount of memory and wait to be killed.\n\n-M	Don't mlock() the memory (let it swap out)."
+
+#define HELP_mcookie "usage: mcookie [-vV]\n\nGenerate a 128-bit strong random number.\n\n-v  show entropy source (verbose)\n-V  show version"
+
+#define HELP_makedevs "usage: makedevs [-d device_table] rootdir\n\nCreate a range of special files as specified in a device table.\n\n-d	File containing device table (default reads from stdin)\n\nEach line of the device table has the fields:\n<name> <type> <mode> <uid> <gid> <major> <minor> <start> <increment> <count>\nWhere name is the file name, and type is one of the following:\n\nb	Block device\nc	Character device\nd	Directory\nf	Regular file\np	Named pipe (fifo)\n\nOther fields specify permissions, user and group id owning the file,\nand additional fields for device special files. Use '-' for blank entries,\nunspecified fields are treated as '-'."
+
+#define HELP_lsusb "usage: lsusb [-i]\n\nList USB hosts/devices.\n\n-i	ID database (default /etc/usb.ids[.gz])"
+
+#define HELP_lspci "usage: lspci [-ekmn] [-i FILE]\n\nList PCI devices.\n\n-e	Extended (6 digit) class\n-i	ID database (default /etc/pci.ids[.gz])\n-k	Show kernel driver\n-m	Machine readable\n-n	Numeric output (-nn for both)\n-x	Hex dump of config space (64 bytes; -xxx for 256, -xxxx for 4096)"
+
+#define HELP_lsmod "usage: lsmod\n\nDisplay the currently loaded modules, their sizes and their dependencies."
+
+#define HELP_chattr "usage: chattr [-R] [-+=AacDdijsStTu] [-p PROJID] [-v VERSION] [FILE...]\n\nChange file attributes on a Linux file system.\n\n-R	Recurse\n-p	Set the file's project number\n-v	Set the file's version/generation number\n\nOperators:\n  '-' Remove attributes\n  '+' Add attributes\n  '=' Set attributes\n\nAttributes:\n  A  No atime                     a  Append only\n  C  No COW                       c  Compression\n  D  Synchronous dir updates      d  No dump\n  E  Encrypted                    e  Extents\n  F  Case-insensitive (casefold)\n  I  Indexed directory            i  Immutable\n  j  Journal data\n  N  Inline data in inode\n  P  Project hierarchy\n  S  Synchronous file updates     s  Secure delete\n  T  Top of dir hierarchy         t  No tail-merging\n  u  Allow undelete\n  V  Verity"
+
+#define HELP_lsattr "usage: lsattr [-Radlpv] [FILE...]\n\nList file attributes on a Linux file system.\nFlag letters are defined in chattr help.\n\n-R	Recursively list attributes of directories and their contents\n-a	List all files in directories, including files that start with '.'\n-d	List directories like other files, rather than listing their contents\n-l	List long flag names\n-p	List the file's project number\n-v	List the file's version/generation number"
+
+#define HELP_losetup "usage: losetup [-cdrs] [-o OFFSET] [-S SIZE] {-d DEVICE...|-j FILE|-af|{DEVICE FILE}}\n\nAssociate a loopback device with a file, or show current file (if any)\nassociated with a loop device.\n\nInstead of a device:\n-a	Iterate through all loopback devices\n-f	Find first unused loop device (may create one)\n-j FILE	Iterate through all loopback devices associated with FILE\n\nexisting:\n-c	Check capacity (file size changed)\n-d DEV	Detach loopback device\n-D	Detach all loopback devices\n\nnew:\n-s	Show device name (alias --show)\n-o OFF	Start association at offset OFF into FILE\n-r	Read only\n-S SIZE	Limit SIZE of loopback association (alias --sizelimit)"
+
+#define HELP_login "usage: login [-p] [-h host] [-f USERNAME] [USERNAME]\n\nLog in as a user, prompting for username and password if necessary.\n\n-p	Preserve environment\n-h	The name of the remote host for this login\n-f	login as USERNAME without authentication"
+
+#define HELP_linux32 "usage: linux32 [COMMAND...]\n\nTell uname -m to lie to autoconf (to build 32 bit binaries on 64 bit kernel)."
+
+#define HELP_iorenice "usage: iorenice PID [CLASS] [PRIORITY]\n\nDisplay or change I/O priority of existing process. CLASS can be\n\"rt\" for realtime, \"be\" for best effort, \"idle\" for only when idle, or\n\"none\" to leave it alone. PRIORITY can be 0-7 (0 is highest, default 4)."
+
+#define HELP_ionice "usage: ionice [-t] [-c CLASS] [-n LEVEL] [COMMAND...|-p PID]\n\nChange the I/O scheduling priority of a process. With no arguments\n(or just -p), display process' existing I/O class/priority.\n\n-c	CLASS = 1-3: 1(realtime), 2(best-effort, default), 3(when-idle)\n-n	LEVEL = 0-7: (0 is highest priority, default = 5)\n-p	Affect existing PID instead of spawning new child\n-t	Ignore failure to set I/O priority\n\nSystem default iopriority is generally -c 2 -n 4."
+
+#define HELP_insmod "usage: insmod MODULE [OPTION...]\n\nLoad the module named MODULE passing options if given."
+
+#define HELP_inotifyd "usage: inotifyd PROG FILE[:MASK] ...\n\nWhen a filesystem event matching MASK occurs to a FILE, run PROG as:\n\n  PROG EVENTS FILE [DIRFILE]\n\nIf PROG is \"-\" events are sent to stdout.\n\nThis file is:\n  a  accessed    c  modified    e  metadata change  w  closed (writable)\n  r  opened      D  deleted     M  moved            0  closed (unwritable)\n  u  unmounted   o  overflow    x  unwatchable\n\nA file in this directory is:\n  m  moved in    y  moved out   n  created          d  deleted\n\nWhen x event happens for all FILEs, inotifyd exits (after waiting for PROG)."
+
+#define HELP_i2ctransfer "usage: i2ctransfer [-fy] BUS DESC [DATA...]...\n\nMake i2c transfers. DESC is 'r' for read or 'w' for write, followed by\nthe number of bytes to read or write, followed by '@' and a 7-bit address.\nFor any message after the first, the '@' and address can be omitted to\nreuse the previous address. A 'w' DESC must be followed by the number of\nDATA bytes that was specified in the DESC.\n\n-f	Force access to busy devices\n-v	Verbose (show messages sent, not just received)\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cset "usage: i2cset [-fy] BUS CHIP ADDR VALUE... MODE\n\nWrite an i2c register. MODE is b for byte, w for 16-bit word, i for I2C block.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cget "usage: i2cget [-fy] BUS CHIP [ADDR]\n\nRead an i2c register.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdump "usage: i2cdump [-fy] BUS CHIP\n\nDump i2c registers.\n\n-f	Force access to busy devices\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_i2cdetect "usage: i2cdetect [-aqry] BUS [FIRST LAST]\nusage: i2cdetect -F BUS\nusage: i2cdetect -l\n\nDetect i2c devices.\n\n-a	All addresses (0x00-0x7f rather than 0x03-0x77 or FIRST-LAST)\n-F	Show functionality\n-l	List available buses\n-q	Probe with SMBus Quick Write (default)\n-r	Probe with SMBus Read Byte\n-y	Skip confirmation prompts (yes to all)"
+
+#define HELP_hwclock "usage: hwclock [-rswtluf]\n\nGet/set the hardware clock.\n\n-f FILE	Use specified device file instead of /dev/rtc0 (--rtc)\n-l	Hardware clock uses localtime (--localtime)\n-r	Show hardware clock time (--show)\n-s	Set system time from hardware clock (--hctosys)\n-t	Set the system time based on the current timezone (--systz)\n-u	Hardware clock uses UTC (--utc)\n-w	Set hardware clock from system time (--systohc)"
+
+#define HELP_hexedit "usage: hexedit [-r] FILE\n\nHexadecimal file editor/viewer. All changes are written to disk immediately.\n\n-r	Read only (display but don't edit)\n\nKeys:\nArrows         Move left/right/up/down by one line/column\nPgUp/PgDn      Move up/down by one page\nHome/End       Start/end of line (start/end of file with ctrl)\n0-9, a-f       Change current half-byte to hexadecimal value\n^J or :        Jump (+/- for relative offset, otherwise absolute address)\n^F or /        Find string (^G/n: next, ^D/p: previous match)\nu              Undo\nx              Toggle bw/color display\nq/^C/^Q/Esc    Quit"
+
+#define HELP_help "usage: help [-ahu] [COMMAND]\n\n-a	All commands\n-u	Usage only\n-h	HTML output\n\nShow usage information for toybox commands.\nRun \"toybox\" with no arguments for a list of available commands."
+
+#define HELP_gpioset "usage: gpioset [-l] CHIP LINE=VALUE...\n\nSet the lines on CHIP to the given values. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioget "usage: gpioget [-l] CHIP LINE...\n\nGets the values of the given lines on CHIP. Use gpiofind to convert line\nnames to numbers.\n\n-l	Active low"
+
+#define HELP_gpioinfo "usage: gpioinfo [CHIP...]\n\nShow gpio chips' lines."
+
+#define HELP_gpiofind "usage: gpiofind NAME\n\nShow the chip and line number for the given line name."
+
+#define HELP_gpiodetect "usage: gpiodetect\n\nShow all gpio chips' names, labels, and number of lines."
+
+#define HELP_getopt "usage: getopt [-aTu] [-lo OPTIONS] [-n NAME] [OPTIONS] ARG...\n\nOutputs command line with recognized OPTIONS character arguments moved to\nfront, then \"--\", then non-option arguments. Returns 1 if unknown options.\nOPTIONS followed by : take an argument, or :: for optional arguments (which\nmust be attached, ala -xblah or --long=blah).\n\n-a	Allow long options starting with a single -\n-l	Long OPTIONS (repeated or comma separated)\n-n	Command NAME for error messages\n-o	Short OPTIONS (instead of using first argument)\n-T	Test whether this is a modern getopt\n-u	Unquoted output (default if no other options set)\n\nExample:\n  $ getopt -l long:,arg:: abc command --long -b there --arg\n  --long '-b' --arg '' -- 'command' 'there'"
+
+#define HELP_fsync "usage: fsync [-d] [FILE...]\n\nFlush disk cache for FILE(s), writing cached data to storage device.\n\n-d	Skip directory info (sync file contents only)."
+
+#define HELP_fsfreeze "usage: fsfreeze {-f | -u} MOUNTPOINT\n\nFreeze or unfreeze a filesystem.\n\n-f	Freeze\n-u	Unfreeze"
+
+#define HELP_freeramdisk "usage: freeramdisk [RAM device]\n\nFree all memory allocated to specified ramdisk"
+
+#define HELP_free "usage: free [-bkmgt]\n\nDisplay the total, free and used amount of physical memory and swap space.\n\n-bkmg	Output units (default is bytes)\n-h	Human readable (K=1024)"
+
+#define HELP_fmt "usage: fmt [-w WIDTH] [FILE...]\n\nReformat input to wordwrap at a given line length, preserving existing\nindentation level, writing to stdout.\n\n-w WIDTH	Maximum characters per line (default 75)"
+
+#define HELP_flock "usage: flock [-sxun] fd\n\nManage advisory file locks.\n\n-s	Shared lock\n-x	Exclusive lock (default)\n-u	Unlock\n-n	Non-blocking: fail rather than wait for the lock"
+
+#define HELP_fallocate "usage: fallocate [-o OFFSET] -l SIZE FILE\n\nTell the filesystem to allocate space for a range in a file.\n\n-l	Number of bytes in range\n-o	Start offset of range (default 0)"
+
+#define HELP_factor "usage: factor [-hx] NUMBER...\n\nFactor integers.\n\n-h	Human readable: show repeated factors as x^n\n-x	Hexadecimal output"
+
+#define HELP_eject "usage: eject [-stT] [DEVICE]\n\nEject DEVICE or default /dev/cdrom\n\n-s	SCSI device\n-t	Close tray\n-T	Open/close tray (toggle)"
+
+#define HELP_unix2dos "usage: unix2dos [FILE...]\n\nConvert newline format from unix \"\\n\" to dos \"\\r\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_dos2unix "usage: dos2unix [FILE...]\n\nConvert newline format from dos \"\\r\\n\" to unix \"\\n\".\nIf no files listed copy from stdin, \"-\" is a synonym for stdin."
+
+#define HELP_devmem "usage: devmem ADDR [WIDTH [DATA]]\n\nRead/write physical address. WIDTH is 1, 2, 4, or 8 bytes (default 4).\nPrefix ADDR with 0x for hexadecimal, output is in same base as address."
+
+#define HELP_count "usage: count [-l]\n\n-l	Long output (total bytes, human readable, transfer rate, elapsed time)\n\nCopy stdin to stdout, displaying simple progress indicator to stderr."
+
+#define HELP_clear "Clear the screen."
+
+#define HELP_chrt "usage: chrt [-Rmofrbi] {-p PID [PRIORITY] | [PRIORITY COMMAND...]}\n\nGet/set a process' real-time scheduling policy and priority.\n\n-p	Set/query given pid (instead of running COMMAND)\n-R	Set SCHED_RESET_ON_FORK\n-m	Show min/max priorities available\n\nSet policy (default -r):\n\n  -o  SCHED_OTHER    -f  SCHED_FIFO    -r  SCHED_RR\n  -b  SCHED_BATCH    -i  SCHED_IDLE"
+
+#define HELP_chroot "usage: chroot NEWROOT [COMMAND [ARG...]]\n\nRun command within a new root directory. If no command, run /bin/sh."
+
+#define HELP_chcon "usage: chcon [-hRv] CONTEXT FILE...\n\nChange the SELinux security context of listed file[s].\n\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories\n-v	Verbose"
+
+#define HELP_bzcat "usage: bzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_bunzip2 "usage: bunzip2 [-cftkv] [FILE...]\n\nDecompress listed files (file.bz becomes file) deleting archive file(s).\nRead from stdin if no files listed.\n\n-c	Force output to stdout\n-f	Force decompression (if FILE doesn't end in .bz, replace original)\n-k	Keep input files (-c and -t imply this)\n-t	Test integrity\n-v	Verbose"
+
+#define HELP_blockdev "usage: blockdev --OPTION... BLOCKDEV...\n\nCall ioctl(s) on each listed block device\n\n--setro		Set read only\n--setrw		Set read write\n--getro		Get read only\n--getss		Get sector size\n--getbsz	Get block size\n--setbsz BYTES	Set block size\n--getsz		Get device size in 512-byte sectors\n--getsize	Get device size in sectors (deprecated)\n--getsize64	Get device size in bytes\n--getra		Get readahead in 512-byte sectors\n--setra SECTORS	Set readahead\n--flushbufs	Flush buffers\n--rereadpt	Reread partition table"
+
+#define HELP_fstype "usage: fstype DEV...\n\nPrint type of filesystem on a block device or image."
+
+#define HELP_blkid "usage: blkid [-o TYPE] [-s TAG] [-UL] DEV...\n\nPrint type, label and UUID of filesystem on a block device or image.\n\n-U	Show UUID only (or device with that UUID)\n-L	Show LABEL only (or device with that LABEL)\n-o TYPE	Output format (full, value, export)\n-s TAG	Only show matching tags (default all)"
+
+#define HELP_blkdiscard "usage: blkdiscard [-szf] [-o OFFSET] [-l LENGTH] DEVICE\n\nDiscard device sectors (permanetly deleting data). Free space can improve\nflash performance and lifetime by wear leveling and collating data.\n(Some filesystem/driver combinations can do this automatically.)\n\n-o	Start at OFFSET (--offset, default 0)\n-l	LENGTH to discard (--length, default all)\n-s	Overwrite discarded data (--secure)\n-z	Zero-fill rather than discard (--zeroout)\n-f	Disable check for mounted filesystem (--force)\n\nOFFSET and LENGTH must be aligned to the device sector size. Default\nwithout -o/-l discards the entire device. (You have been warned.)"
+
+#define HELP_base32 "usage: base32 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base32.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_base64 "usage: base64 [-di] [-w COLUMNS] [FILE...]\n\nEncode or decode in base64.\n\n-d	Decode\n-i	Ignore non-alphabetic characters\n-w	Wrap output at COLUMNS (default 76 or 0 for no wrap)"
+
+#define HELP_unicode "usage: unicode CODE[-END]...\n\nConvert between Unicode code points and UTF-8, in both directions.\nCODE can be one or more characters (show U+XXXX), hex numbers\n(show character), or dash separated range."
+
+#define HELP_ascii "usage: ascii\n\nDisplay ascii character set."
+
+#define HELP_acpi "usage: acpi [-abctV]\n\nShow status of power sources and thermal devices.\n\n-a	Show power adapters\n-b	Show batteries\n-c	Show cooling device state\n-t	Show temperatures\n-V	Show everything"
+
+#define HELP_xzcat "usage: xzcat [FILE...]\n\nDecompress listed files to stdout. Use stdin if no files listed."
+
+#define HELP_vi "usage: vi [-s SCRIPT] FILE\n\nVisual text editor. Predates keyboards with standardized cursor keys.\nIf you don't know how to use it, hit the ESC key, type :q! and press ENTER.\n\n-s	run SCRIPT of commands on FILE\n\nvi mode commands:\n\n  [count][cmd][motion]\n  cmd: c d y\n  motion: 0 b e G H h j k L l M w $ f F\n\n  [count][cmd]\n  cmd: D I J O n o p x dd yy\n\n  [cmd]\n  cmd: / ? : A a i CTRL_D CTRL_B CTRL_E CTRL_F CTRL_Y \\e \\b\n\nex mode commands:\n\n  [cmd]\n  \\b \\e \\n w wq q! 'set list' 'set nolist' d $ % g v"
+
+#define HELP_userdel "usage: userdel [-r] USER\nusage: deluser [-r] USER\n\nDelete USER from the SYSTEM\n\n-r	remove home directory"
+
+#define HELP_useradd "usage: useradd [-SDH] [-h DIR] [-s SHELL] [-G GRP] [-g NAME] [-u UID] USER [GROUP]\n\nCreate new user, or add USER to GROUP\n\n-D       Don't assign a password\n-g NAME  Real name\n-G GRP   Add user to existing group\n-h DIR   Home directory\n-H       Don't create home directory\n-s SHELL Login shell\n-S       Create a system user\n-u UID   User id"
+
+#define HELP_traceroute "usage: traceroute [-46FUIldnvr] [-f 1ST_TTL] [-m MAXTTL] [-p PORT] [-q PROBES]\n[-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-g GATEWAY] [-i IFACE] [-z PAUSE_MSEC] HOST [BYTES]\n\ntraceroute6 [-dnrv] [-m MAXTTL] [-p PORT] [-q PROBES][-s SRC_IP] [-t TOS] [-w WAIT_SEC]\n  [-i IFACE] HOST [BYTES]\n\nTrace the route to HOST\n\n-4,-6 Force IP or IPv6 name resolution\n-F    Set the don't fragment bit (supports IPV4 only)\n-U    Use UDP datagrams instead of ICMP ECHO (supports IPV4 only)\n-I    Use ICMP ECHO instead of UDP datagrams (supports IPV4 only)\n-l    Display the TTL value of the returned packet (supports IPV4 only)\n-d    Set SO_DEBUG options to socket\n-n    Print numeric addresses\n-v    verbose\n-r    Bypass routing tables, send directly to HOST\n-m    Max time-to-live (max number of hops)(RANGE 1 to 255)\n-p    Base UDP port number used in probes(default 33434)(RANGE 1 to 65535)\n-q    Number of probes per TTL (default 3)(RANGE 1 to 255)\n-s    IP address to use as the source address\n-t    Type-of-service in probe packets (default 0)(RANGE 0 to 255)\n-w    Time in seconds to wait for a response (default 3)(RANGE 0 to 86400)\n-g    Loose source route gateway (8 max) (supports IPV4 only)\n-z    Pause Time in ms (default 0)(RANGE 0 to 86400) (supports IPV4 only)\n-f    Start from the 1ST_TTL hop (instead from 1)(RANGE 1 to 255) (supports IPV4 only)\n-i    Specify a network interface to operate with"
+
+#define HELP_tr "usage: tr [-cdst] SET1 [SET2]\n\nTranslate, squeeze, or delete characters from stdin, writing to stdout\n\n-c/-C  Take complement of SET1\n-d     Delete input characters coded SET1\n-s     Squeeze multiple output characters of SET2 into one character\n-t     Truncate SET1 to length of SET2"
+
+#define HELP_tftpd "usage: tftpd [-cr] [-u USER] [DIR]\n\nTransfer file from/to tftp server.\n\n-r	read only\n-c	Allow file creation via upload\n-u	run as USER\n-l	Log to syslog (inetd mode requires this)"
+
+#define HELP_tftp "usage: tftp [OPTIONS] HOST [PORT]\n\nTransfer file from/to tftp server.\n\n-l FILE Local FILE\n-r FILE Remote FILE\n-g    Get file\n-p    Put file\n-b SIZE Transfer blocks of SIZE octets(8 <= SIZE <= 65464)"
+
+#define HELP_telnetd "Handle incoming telnet connections\n\n-l LOGIN  Exec LOGIN on connect\n-f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue\n-K Close connection as soon as login exits\n-p PORT   Port to listen on\n-b ADDR[:PORT]  Address to bind to\n-F Run in foreground\n-i Inetd mode\n-w SEC    Inetd 'wait' mode, linger time SEC\n-S Log to syslog (implied by -i or without -F and -w)"
+
+#define HELP_telnet "usage: telnet HOST [PORT]\n\nConnect to telnet server."
+
+#define HELP_tcpsvd "usage: tcpsvd [-hEv] [-c N] [-C N[:MSG]] [-b N] [-u User] [-l Name] IP Port Prog\nusage: udpsvd [-hEv] [-c N] [-u User] [-l Name] IP Port Prog\n\nCreate TCP/UDP socket, bind to IP:PORT and listen for incoming connection.\nRun PROG for each connection.\n\nIP            IP to listen on, 0 = all\nPORT          Port to listen on\nPROG ARGS     Program to run\n-l NAME       Local hostname (else looks up local hostname in DNS)\n-u USER[:GRP] Change to user/group after bind\n-c N          Handle up to N (> 0) connections simultaneously\n-b N          (TCP Only) Allow a backlog of approximately N TCP SYNs\n-C N[:MSG]    (TCP Only) Allow only up to N (> 0) connections from the same IP\n              New connections from this IP address are closed\n              immediately. MSG is written to the peer before close\n-h            Look up peer's hostname\n-E            Don't set up environment variables\n-v            Verbose"
+
+#define HELP_syslogd "usage: syslogd  [-a socket] [-O logfile] [-f config file] [-m interval]\n                [-p socket] [-s SIZE] [-b N] [-R HOST] [-l N] [-nSLKD]\n\nSystem logging utility\n\n-a      Extra unix socket for listen\n-O FILE Default log file <DEFAULT: /var/log/messages>\n-f FILE Config file <DEFAULT: /etc/syslog.conf>\n-p      Alternative unix domain socket <DEFAULT : /dev/log>\n-n      Avoid auto-backgrounding\n-S      Smaller output\n-m MARK interval <DEFAULT: 20 minutes> (RANGE: 0 to 71582787)\n-R HOST Log to IP or hostname on PORT (default PORT=514/UDP)\"\n-L      Log locally and via network (default is network only if -R)\"\n-s SIZE Max size (KB) before rotation (default:200KB, 0=off)\n-b N    rotated logs to keep (default:1, max=99, 0=purge)\n-K      Log to kernel printk buffer (use dmesg to read it)\n-l N    Log only messages more urgent than prio(default:8 max:8 min:1)\n-D      Drop duplicates"
+
+#define HELP_sulogin "usage: sulogin [-t time] [tty]\n\nSingle User Login.\n-t	Default Time for Single User Login"
+
+#define HELP_stty "usage: stty [-ag] [-F device] SETTING...\n\nGet/set terminal configuration.\n\n-F	Open device instead of stdin\n-a	Show all current settings (default differences from \"sane\")\n-g	Show all current settings usable as input to stty\n\nSpecial characters (syntax ^c or undef): intr quit erase kill eof eol eol2\nswtch start stop susp rprnt werase lnext discard\n\nControl/input/output/local settings as shown by -a, '-' prefix to disable\n\nCombo settings: cooked/raw, evenp/oddp/parity, nl, ek, sane\n\nN	set input and output speed (ispeed N or ospeed N for just one)\ncols N	set number of columns\nrows N	set number of rows\nline N	set line discipline\nmin N	set minimum chars per read\ntime N	set read timeout\nspeed	show speed only\nsize	show size only"
+
+#define HELP_strace "usage: strace [-fv] [-p PID] [-s NUM] COMMAND [ARGS...]\n\nTrace systems calls made by a process.\n\n-s	String length limit.\n-v	Dump all of large structs/arrays."
+
+#define HELP_wait "usage: wait [-n] [ID...]\n\nWait for background processes to exit, returning its exit code.\nID can be PID or job, with no IDs waits for all backgrounded processes.\n\n-n	Wait for next process to exit"
+
+#define HELP_source "usage: source FILE [ARGS...]\n\nRead FILE and execute commands. Any ARGS become positional parameters."
+
+#define HELP_shift "usage: shift [N]\n\nSkip N (default 1) positional parameters, moving $1 and friends along the list.\nDoes not affect $0."
+
+#define HELP_local "usage: local [NAME[=VALUE]...]\n\nCreate a local variable that lasts until return from this function.\nWith no arguments lists local variables in current function context.\nTODO: implement \"declare\" options."
+
+#define HELP_jobs "usage: jobs [-lnprs] [%JOB | -x COMMAND...]\n\nList running/stopped background jobs.\n\n-l Include process ID in list\n-n Show only new/changed processes\n-p Show process IDs only\n-r Show running processes\n-s Show stopped processes"
+
+#define HELP_export "usage: export [-n] [NAME[=VALUE]...]\n\nMake variables available to child processes. NAME exports existing local\nvariable(s), NAME=VALUE sets and exports.\n\n-n	Unexport. Turn listed variable(s) into local variables.\n\nWith no arguments list exported variables/attributes as \"declare\" statements."
+
+#define HELP_exec "usage: exec [-cl] [-a NAME] COMMAND...\n\n-a	set argv[0] to NAME\n-c	clear environment\n-l	prepend - to argv[0]"
+
+#define HELP_eval "usage: eval COMMAND...\n\nExecute (combined) arguments as a shell command."
+
+#define HELP_unset "usage: unset [-fvn] NAME...\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	dereference NAME and unset that"
+
+#define HELP_set "usage: set [+a] [+o OPTION] [VAR...]\n\nSet variables and shell attributes. Use + to disable and - to enable.\nNAME=VALUE arguments assign to the variable, any leftovers set $1, $2...\nWith no arguments, prints current variables.\n\n-f	NAME is a function\n-v	NAME is a variable\n-n	don't follow name reference\n\nOPTIONs:\n  history - enable command history"
+
+#define HELP_exit "usage: exit [status]\n\nExit shell.  If no return value supplied on command line, use value\nof most recent command, or 0 if none."
+
+#define HELP_declare "usage: declare [-pAailunxr] [NAME...]\n\nSet or print variable attributes and values.\n\n-p	Print variables instead of setting\n-A	Associative array\n-a	Indexed array\n-i	Integer\n-l	Lower case\n-n	Name reference (symlink)\n-r	Readonly\n-u	Uppercase\n-x	Export"
+
+#define HELP_cd "usage: cd [-PL] [-] [path]\n\nChange current directory. With no arguments, go $HOME. Sets $OLDPWD to\nprevious directory: cd - to return to $OLDPWD.\n\n-P	Physical path: resolve symlinks in path\n-L	Local path: .. trims directories off $PWD (default)"
+
+#define HELP_sh "usage: sh [-c command] [script]\n\nCommand shell.  Runs a shell script, or reads input interactively\nand responds to it. Roughly compatible with \"bash\". Run \"help\" for\nlist of built-in commands.\n\n-c	command line to execute\n-i	interactive mode (default when STDIN is a tty)\n-s	don't run script (args set $* parameters but read commands from stdin)\n\nCommand shells parse each line of input (prompting when interactive), perform\nvariable expansion and redirection, execute commands (spawning child processes\nand background jobs), and perform flow control based on the return code.\n\nParsing:\n  syntax errors\n\nInteractive prompts:\n  line continuation\n\nVariable expansion:\n  Note: can cause syntax errors at runtime\n\nRedirection:\n  HERE documents (parsing)\n  Pipelines (flow control and job control)\n\nRunning commands:\n  process state\n  builtins\n    cd [[ ]] (( ))\n    ! : [ # TODO: help for these?\n    true false help echo kill printf pwd test\n  child processes\n\nJob control:\n  &    Background process\n  Ctrl-C kill process\n  Ctrl-Z suspend process\n  bg fg jobs kill\n\nFlow control:\n;    End statement (same as newline)\n&    Background process (returns true unless syntax error)\n&&   If this fails, next command fails without running\n||   If this succeeds, next command succeeds without running\n|    Pipelines! (Can of worms...)\nfor {name [in...]}|((;;)) do; BODY; done\nif TEST; then BODY; fi\nwhile TEST; do BODY; done\ncase a in X);; esac\n[[ TEST ]]\n((MATH))\n\nJob control:\n&    Background process\nCtrl-C kill process\nCtrl-Z suspend process\nbg fg jobs kill"
+
+#define HELP_route "usage: route [-ne] [-A [inet|inet6]] [add|del TARGET [OPTIONS]]\n\nDisplay, add or delete network routes in the \"Forwarding Information Base\",\nwhich send packets out a network interface to an address.\n\n-n	Show numerical addresses (no DNS lookups)\n-e	display netstat fields\n\nAssigning an address to an interface automatically creates an appropriate\nnetwork route (\"ifconfig eth0 10.0.2.15/8\" does \"route add 10.0.0.0/8 eth0\"\nfor you), although some devices (such as loopback) won't show it in the\ntable. For machines more than one hop away, you need to specify a gateway\n(ala \"route add default gw 10.0.2.2\").\n\nThe address \"default\" is a wildcard address (0.0.0.0/0) matching all\npackets without a more specific route.\n\nAvailable OPTIONS include:\nreject   - blocking route (force match failure)\ndev NAME - force matching packets out this interface (ala \"eth0\")\nnetmask  - old way of saying things like ADDR/24\ngw ADDR  - forward packets to gateway ADDR"
+
+#define HELP_more "usage: more [FILE...]\n\nView FILE(s) (or stdin) one screenfull at a time."
+
+#define HELP_modprobe "usage: modprobe [-alrqvsDb] [-d DIR] MODULE [symbol=value][...]\n\nmodprobe utility - inserts modules and dependencies.\n\n-a  Load multiple MODULEs\n-b  Apply blacklist to module names too\n-D  Show dependencies\n-d  Load modules from DIR, option may be used multiple times\n-l  List (MODULE is a pattern)\n-q  Quiet\n-r  Remove MODULE (stacks) or do autoclean\n-s  Log to syslog\n-v  Verbose"
+
+#define HELP_mke2fs_extended "usage: mke2fs [-E stride=###] [-O option[,option]]\n\n-E stride= Set RAID stripe size (in blocks)\n-O [opts]  Specify fewer ext2 option flags (for old kernels)\n           All of these are on by default (as appropriate)\n   none         Clear default options (all but journaling)\n   dir_index    Use htree indexes for large directories\n   filetype     Store file type info in directory entry\n   has_journal  Set by -j\n   journal_dev  Set by -J device=XXX\n   sparse_super Don't allocate huge numbers of redundant superblocks"
+
+#define HELP_mke2fs_label "usage: mke2fs [-L label] [-M path] [-o string]\n\n-L         Volume label\n-M         Path to mount point\n-o         Created by"
+
+#define HELP_mke2fs_gen "usage: gene2fs [options] device filename\n\nThe [options] are the same as mke2fs."
+
+#define HELP_mke2fs_journal "usage: mke2fs [-j] [-J size=###,device=XXX]\n\n-j         Create journal (ext3)\n-J         Journal options\n           size: Number of blocks (1024-102400)\n           device: Specify an external journal"
+
+#define HELP_mke2fs "usage: mke2fs [-Fnq] [-b ###] [-N|i ###] [-m ###] device\n\nCreate an ext2 filesystem on a block device or filesystem image.\n\n-F         Force to run on a mounted device\n-n         Don't write to device\n-q         Quiet (no output)\n-b size    Block size (1024, 2048, or 4096)\n-N inodes  Allocate this many inodes\n-i bytes   Allocate one inode for every XXX bytes of device\n-m percent Reserve this percent of filesystem space for root user"
+
+#define HELP_mdev_conf "The mdev config file (/etc/mdev.conf) contains lines that look like:\nhd[a-z][0-9]* 0:3 660\n(sd[a-z]) root:disk 660 =usb_storage\n\nEach line must contain three whitespace separated fields. The first\nfield is a regular expression matching one or more device names,\nthe second and third fields are uid:gid and file permissions for\nmatching devices. Fourth field is optional. It could be used to change\ndevice name (prefix '='), path (prefix '=' and postfix '/') or create a\nsymlink (prefix '>')."
+
+#define HELP_mdev "usage: mdev [-s]\n\nCreate devices in /dev using information from /sys.\n\n-s	Scan all entries in /sys to populate /dev"
+
+#define HELP_man "usage: man [-M PATH] [-k STRING] | [SECTION] COMMAND\n\nRead manual page for system command.\n\n-k	List pages with STRING in their short description\n-M	Override $MANPATH\n\nMan pages are divided into 8 sections:\n1 commands      2 system calls  3 library functions  4 /dev files\n5 file formats  6 games         7 miscellaneous      8 system management\n\nSections are searched in the order 1 8 3 2 5 4 6 7 unless you specify a\nsection. Each section has a page called \"intro\", and there's a global\nintroduction under \"man-pages\"."
+
+#define HELP_lsof "usage: lsof [-lt] [-p PID1,PID2,...] [FILE...]\n\nList all open files belonging to all active processes, or processes using\nlisted FILE(s).\n\n-l	list uids numerically\n-p	for given comma-separated pids only (default all pids)\n-t	terse (pid only) output"
+
+#define HELP_last "usage: last [-W] [-f FILE]\n\nShow listing of last logged in users.\n\n-W      Display the information without host-column truncation\n-f FILE Read from file FILE instead of /var/log/wtmp"
+
+#define HELP_klogd "usage: klogd [-n] [-c N]\n\n-c  N   Print to console messages more urgent than prio N (1-8)\"\n-n    Run in foreground"
+
+#define HELP_ipcs "usage: ipcs [[-smq] -i shmid] | [[-asmq] [-tcplu]]\n\n-i Show specific resource\nResource specification:\n-a All (default)\n-m Shared memory segments\n-q Message queues\n-s Semaphore arrays\nOutput format:\n-c Creator\n-l Limits\n-p Pid\n-t Time\n-u Summary"
+
+#define HELP_ipcrm "usage: ipcrm [ [-q msqid] [-m shmid] [-s semid]\n          [-Q msgkey] [-M shmkey] [-S semkey] ... ]\n\n-mM Remove memory segment after last detach\n-qQ Remove message queue\n-sS Remove semaphore"
+
+#define HELP_ip "usage: ip [ OPTIONS ] OBJECT { COMMAND }\n\nShow / manipulate routing, devices, policy routing and tunnels.\n\nwhere OBJECT := {address | link | route | rule | tunnel}\nOPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }"
+
+#define HELP_init "usage: init\n\nSystem V style init.\n\nFirst program to run (as PID 1) when the system comes up, reading\n/etc/inittab to determine actions."
+
+#define HELP_hd "usage: hd [FILE...]\n\nDisplay file(s) in cannonical hex+ASCII format."
+
+#define HELP_hexdump "usage: hexdump [-bcCdovx] [-n LEN] [-s SKIP] [FILE...]\n\nDump file(s) in hexadecimal format.\n\n-n LEN	Show LEN bytes of output\n-s SKIP	Skip bytes of input\n-v	Verbose (don't combine identical lines)\n\nDisplay type:\n-b One byte octal   -c One byte character -C Canonical (hex + ASCII)\n-d Two byte decimal -o Two byte octal     -x Two byte hexadecimal (default)"
+
+#define HELP_groupdel "usage: groupdel [USER] GROUP\n\nDelete a group or remove a user from a group"
+
+#define HELP_groupadd "usage: groupadd [-S] [-g GID] [USER] GROUP\n\nAdd a user to a group, or create a new group.\n\n-g GID	Group id\n-R	Operate within chroot\n-S	Create a system group"
+
+#define HELP_gitcheckout "usage: gitcheckout <branch>\nA minimal git checkout."
+
+#define HELP_gitfetch "usage: gitfetch\nA minimal git fetch."
+
+#define HELP_gitremote "usage: gitremote URL\nA minimal git remote add origin."
+
+#define HELP_gitinit "usage: gitinit NAME\nA minimal git init."
+
+#define HELP_gitclone "usage: gitclone URL\nA minimal git clone."
+
+#define HELP_gitcompat "Enable git compatible repos instead of minimal clone downloader."
+
+#define HELP_getty "usage: getty [OPTIONS] BAUD_RATE[,BAUD_RATE]... TTY [TERMTYPE]\n\nWait for a modem to dial into serial port, adjust baud rate, call login.\n\n-h    Enable hardware RTS/CTS flow control\n-L    Set CLOCAL (ignore Carrier Detect state)\n-m    Get baud rate from modem's CONNECT status message\n-n    Don't prompt for login name\n-w    Wait for CR or LF before sending /etc/issue\n-i    Don't display /etc/issue\n-f ISSUE_FILE  Display ISSUE_FILE instead of /etc/issue\n-l LOGIN  Invoke LOGIN instead of /bin/login\n-t SEC    Terminate after SEC if no login name is read\n-I INITSTR  Send INITSTR before anything else\n-H HOST    Log HOST into the utmp file as the hostname"
+
+#define HELP_getfattr "usage: getfattr [-d] [-h] [-n NAME] FILE...\n\nRead POSIX extended attributes.\n\n-d	Show values as well as names\n-h	Do not dereference symbolic links\n-n	Show only attributes with the given name\n--only-values	Don't show names"
+
+#define HELP_fsck "usage: fsck [-ANPRTV] [-C FD] [-t FSTYPE] [FS_OPTS] [BLOCKDEV]...\n\nCheck and repair filesystems\n\n-A      Walk /etc/fstab and check all filesystems\n-N      Don't execute, just show what would be done\n-P      With -A, check filesystems in parallel\n-R      With -A, skip the root filesystem\n-T      Don't show title on startup\n-V      Verbose\n-C n    Write status information to specified file descriptor\n-t TYPE List of filesystem types to check"
+
+#define HELP_fdisk "usage: fdisk [-lu] [-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SECTSZ] DISK\n\nChange partition table\n\n-u            Start and End are in sectors (instead of cylinders)\n-l            Show partition table for each DISK, then exit\n-b size       sector size (512, 1024, 2048 or 4096)\n-C CYLINDERS  Set number of cylinders/heads/sectors\n-H HEADS\n-S SECTORS"
+
+#define HELP_expr "usage: expr ARG1 OPERATOR ARG2...\n\nEvaluate expression and print result. For example, \"expr 1 + 2\" prints \"3\".\n\nThe supported operators are (grouped from highest to lowest priority):\n\n  ( )    :    * / %    + -    != <= < >= > =    &    |\n\nEach constant and operator must be a separate command line argument.\nAll operators are infix, requiring a value on each side of the operator.\nOperators of the same priority are evaluated left to right. Parentheses\nelevate the priority of expression they contain. The & and | operators\nare logical (not bitwise).\n\nAll operators yield integers, and most operators expect integer arguments.\nComparisons may alphabetically compare strings, logical operators treat a\nblank string as false and nonblank as true, and the regex operator\n(str : pattern) yields the initial number of matching bytes. (So\n\"abc : ab\" is 2, but \"abc : bc\" is 0.)\n\nCalling expr from a command shell requires a lot of \\( or '*' escaping\nto avoid interpreting shell control characters, vs the shell's \"$((1+6/3))\"."
+
+#define HELP_dumpleases "usage: dumpleases [-r|-a] [-f LEASEFILE]\n\nDisplay DHCP leases granted by udhcpd\n-f FILE,  Lease file\n-r        Show remaining time\n-a        Show expiration time"
+
+#define HELP_diff "usage: diff [-abBdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] [-F REGEX ] FILE1 FILE2\n\n-a	Treat all files as text\n-b	Ignore changes in the amount of whitespace\n-B	Ignore changes whose lines are all blank\n-d	Try hard to find a smaller set of changes\n-F 	Show the most recent line matching the regex\n-i	Ignore case differences\n-L	Use LABEL instead of the filename in the unified header\n-N	Treat absent files as empty\n-q	Output only whether files differ\n-r	Recurse\n-S	Start with FILE when comparing directories\n-s	Report when two files are the same\n-T	Make tabs line up by prefixing a tab when necessary\n-t	Expand tabs to spaces in output\n-u	Unified diff\n-U	Output LINES lines of context\n-w	Ignore all whitespace\n\n--color     Color output   --strip-trailing-cr   Strip '\\r' from input lines\n--TYPE-line-format=FORMAT  Display TYPE (unchanged/old/new) lines using FORMAT\n  FORMAT uses printf integer escapes (ala %-2.4x) followed by LETTER: FELMNn\nSupported format specifiers are:\n* %l, the contents of the line, without the trailing newline\n* %L, the contents of the line, including the trailing newline\n* %%, the character '%'"
+
+#define HELP_dhcpd "usage: dhcpd [-46fS] [-i IFACE] [-P N] [CONFFILE]\n\n -f    Run in foreground\n -i Interface to use\n -S    Log to syslog too\n -P N  Use port N (default ipv4 67, ipv6 547)\n -4, -6    Run as a DHCPv4 or DHCPv6 server"
+
+#define HELP_dhcp6 "usage: dhcp6 [-fbnqvR] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n\n      Configure network dynamically using DHCP.\n\n    -i Interface to use (default eth0)\n    -p Create pidfile\n    -s Run PROG at DHCP events\n    -t Send up to N Solicit packets\n    -T Pause between packets (default 3 seconds)\n    -A Wait N seconds after failure (default 20)\n    -f Run in foreground\n    -b Background if lease is not obtained\n    -n Exit if lease is not obtained\n    -q Exit after obtaining lease\n    -R Release IP on exit\n    -S Log to syslog too\n    -r Request this IP address\n    -v Verbose\n\n    Signals:\n    USR1  Renew current lease\n    USR2  Release current lease"
+
+#define HELP_dhcp "usage: dhcp [-fbnqvoCRB] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n            [-H HOSTNAME] [-V VENDOR] [-x OPT:VAL] [-O OPT]\n\n     Configure network dynamically using DHCP.\n\n   -i Interface to use (default eth0)\n   -p Create pidfile\n   -s Run PROG at DHCP events (default /usr/share/dhcp/default.script)\n   -B Request broadcast replies\n   -t Send up to N discover packets\n   -T Pause between packets (default 3 seconds)\n   -A Wait N seconds after failure (default 20)\n   -f Run in foreground\n   -b Background if lease is not obtained\n   -n Exit if lease is not obtained\n   -q Exit after obtaining lease\n   -R Release IP on exit\n   -S Log to syslog too\n   -a Use arping to validate offered address\n   -O Request option OPT from server (cumulative)\n   -o Don't request any options (unless -O is given)\n   -r Request this IP address\n   -x OPT:VAL  Include option OPT in sent packets (cumulative)\n   -F Ask server to update DNS mapping for NAME\n   -H Send NAME as client hostname (default none)\n   -V VENDOR Vendor identifier (default 'toybox VERSION')\n   -C Don't send MAC as client identifier\n   -v Verbose\n\n   Signals:\n   USR1  Renew current lease\n   USR2  Release current lease"
+
+#define HELP_csplit "usage: csplit [-ks] [-f PREFIX] [-n INTEGER] file arg...\n\nSplit files into multiple files based on list of rules\n\n-k	Does not delete Files on error\n-s	No file output size messages\n-f [PREFIX] Use [PREFIX] as filename prefix instead of \"xx\"\n-n [INTEGER] Make all filename numbers [INTEGER] characters long\n\nValid Rules:\n/regexp/[INTEGER] Break file before line that regexp matches,\n%regexp%[INTEGER] Exclude untill line matches regexp\nIf a offset is specified for these rules, the break will happen [INTEGER]\nlines after the regexp match\nif a offset is specified, it will break at [INTEGER] lines after the offset\n[INTEGER] Break file at line before [INTEGER]\n{INTEGER} Repeat Previous Pattern INTEGER Number of times if INTEGER is *\nThe pattern repeats forever"
+
+#define HELP_crontab "usage: crontab [-u user] FILE\n               [-u user] [-e | -l | -r]\n               [-c dir]\n\nFiles used to schedule the execution of programs.\n\n-c crontab dir\n-e edit user's crontab\n-l list user's crontab\n-r delete user's crontab\n-u user\nFILE Replace crontab by FILE ('-': stdin)"
+
+#define HELP_crond "usage: crond [-fbS] [-l N] [-d N] [-L LOGFILE] [-c DIR]\n\nA daemon to execute scheduled commands.\n\n-b Background (default)\n-c crontab dir\n-d Set log level, log to stderr\n-f Foreground\n-l Set log level. 0 is the most verbose, default 8\n-S Log to syslog (default)\n-L Log to file"
+
+#define HELP_chsh "usage: chsh [-s SHELL] [-R CHROOT_DIR] [USER]\n\nChange user's login shell.\n\n-s	Use SHELL instead of prompting\n-R	Act on CHROOT_DIR instead of host\n\nNon-root users can only change their own shell to one listed in /etc/shells."
+
+#define HELP_brctl "usage: brctl COMMAND [BRIDGE [INTERFACE]]\n\nManage ethernet bridges\n\nCommands:\nshow                  Show a list of bridges\naddbr BRIDGE          Create BRIDGE\ndelbr BRIDGE          Delete BRIDGE\naddif BRIDGE IFACE    Add IFACE to BRIDGE\ndelif BRIDGE IFACE    Delete IFACE from BRIDGE\nsetageing BRIDGE TIME Set ageing time\nsetfd BRIDGE TIME     Set bridge forward delay\nsethello BRIDGE TIME  Set hello time\nsetmaxage BRIDGE TIME Set max message age\nsetpathcost BRIDGE PORT COST   Set path cost\nsetportprio BRIDGE PORT PRIO   Set port priority\nsetbridgeprio BRIDGE PRIO      Set bridge priority\nstp BRIDGE [1/yes/on|0/no/off] STP on/off"
+
+#define HELP_bootchartd "usage: bootchartd {start [PROG ARGS]}|stop|init\n\nRecord boot chart data into /var/log/bootlog.tgz\n\nstart: start background logging; with PROG, run PROG,\n       then kill logging with SIGUSR1\nstop:  send SIGUSR1 to all bootchartd processes\ninit:  start background logging; stop when getty/xdm is seen\n      (for init scripts)\n\nUnder PID 1: as init, then exec $bootchart_init, /init, /sbin/init"
+
+#define HELP_bc "usage: bc [-ilqsw] [file ...]\n\nbc is a command-line calculator with a Turing-complete language.\n\noptions:\n\n  -i  --interactive  force interactive mode\n  -l  --mathlib      use predefined math routines:\n\n                     s(expr)  =  sine of expr in radians\n                     c(expr)  =  cosine of expr in radians\n                     a(expr)  =  arctangent of expr, returning radians\n                     l(expr)  =  natural log of expr\n                     e(expr)  =  raises e to the power of expr\n                     j(n, x)  =  Bessel function of integer order n of x\n\n  -q  --quiet        don't print version and copyright\n  -s  --standard     error if any non-POSIX extensions are used\n  -w  --warn         warn if any non-POSIX extensions are used"
+
+#define HELP_arping "usage: arping [-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP\n\nSend ARP requests/replies\n\n-f         Quit on first ARP reply\n-q         Quiet\n-b         Keep broadcasting, don't go unicast\n-D         Duplicated address detection mode\n-U         Unsolicited ARP mode, update your neighbors\n-A         ARP answer mode, update your neighbors\n-c N       Stop after sending N ARP requests\n-w TIMEOUT Time to wait for ARP reply, seconds\n-I IFACE   Interface to use (default eth0)\n-s SRC_IP  Sender IP address\nDST_IP     Target IP address"
+
+#define HELP_arp "usage: arp\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]\n[-v]              [-i IF] -d HOSTNAME [pub]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]\n[-v]  [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub\n[-v]  [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub\n\nManipulate ARP cache.\n\n-a	Display (all) hosts\n-s	Set new ARP entry\n-d	Delete a specified entry\n-v	Verbose\n-n	Don't resolve names\n-i IFACE	Network interface\n-D	Read <hwaddr> from given device\n-A,-p AF	Protocol family\n-H HWTYPE	Hardware address type"
+
+#define HELP_xargs "usage: xargs [-0Pprt] [-snE STR] COMMAND...\n\nRun command line one or more times, appending arguments from stdin.\n\nIf COMMAND exits with 255, don't launch another even if arguments remain.\n\n-0	Each argument is NULL terminated, no whitespace or quote processing\n-E	Stop at line matching string\n-n	Max number of arguments per command\n-o	Open tty for COMMAND's stdin (default /dev/null)\n-P	Parallel processes (default 1)\n-p	Prompt for y/n from tty before running each command\n-r	Don't run with empty input (otherwise always run command once)\n-s	Size in bytes per command line\n-t	Trace, print command line to stderr"
+
+#define HELP_who "usage: who\n\nPrint information about logged in users."
+
+#define HELP_wc "usage: wc [-Llwcm] [FILE...]\n\nCount lines, words, and characters in input.\n\n-L	Show max line length\n-l	Show lines\n-w	Show words\n-c	Show bytes\n-m	Show characters\n\nBy default outputs lines, words, bytes, and filename for each\nargument (or from stdin if none). Displays only either bytes\nor characters."
+
+#define HELP_uuencode "usage: uuencode [-m] [INFILE] ENCODE_FILENAME\n\nUuencode stdin (or INFILE) to stdout, with ENCODE_FILENAME in the output.\n\n-m	Base64"
+
+#define HELP_uudecode "usage: uudecode [-o OUTFILE] [INFILE]\n\nDecode file from stdin (or INFILE).\n\n-o	Write to OUTFILE instead of filename in header"
+
+#define HELP_unlink "usage: unlink FILE\n\nDelete one file."
+
+#define HELP_uniq "usage: uniq [-cduiz] [-w MAXCHARS] [-f FIELDS] [-s CHAR] [INFILE [OUTFILE]]\n\nReport or filter out repeated lines in a file\n\n-c	Show counts before each line\n-d	Show only lines that are repeated\n-u	Show only lines that are unique\n-i	Ignore case when comparing lines\n-z	Lines end with \\0 not \\n\n-w	Compare maximum X chars per line\n-f	Ignore first X fields\n-s	Ignore first X chars"
+
+#define HELP_uname "usage: uname [-asnrvmo]\n\nPrint system information.\n\n-s	System name\n-n	Network (domain) name\n-r	Kernel Release number\n-v	Kernel Version\n-m	Machine (hardware) name\n-a	All of the above (in order)\n\n-o	Userspace type"
+
+#define HELP_arch "usage: arch\n\nPrint machine (hardware) name, same as uname -m."
+
+#define HELP_ulimit "usage: ulimit [-P PID] [-SHRacdefilmnpqrstuv] [LIMIT]\n\nPrint or set resource limits for process number PID. If no LIMIT specified\n(or read-only -ap selected) display current value (sizes in bytes).\nDefault is ulimit -P $PPID -Sf\" (show soft filesize of your shell).\n\n-P  PID to affect (default $PPID)  -a  Show all limits\n-S  Set/show soft limit            -H  Set/show hard (maximum) limit\n\n-c  Core file size (blocks)        -d  Process data segment (KiB)\n-e  Max scheduling priority        -f  File size (KiB)\n-i  Pending signal count           -l  Locked memory (KiB)\n-m  Resident Set Size (KiB)        -n  Number of open files\n-p  Pipe buffer (512 bytes)        -q  POSIX message queues\n-r  Max realtime priority          -R  Realtime latency (us)\n-s  Stack size (KiB)               -t  Total CPU time (s)\n-u  Maximum processes (this UID)   -v  Virtual memory size (KiB)"
+
+#define HELP_tty "usage: tty [-s]\n\nShow filename of terminal connected to stdin. If none print \"not a tty\"\nand exit with nonzero status.\n\n-s	Silent, exit code only"
+
+#define HELP_tsort "usage: tsort [FILE]\n\nTopological sort dependency resolver.\n\nRead pairs of input strings indicating before/after dependency relationships\nand find an ordering that respects all dependencies. On success output each\nstring once to stdout, on failure print error and output cycle pairs."
+
+#define HELP_true "usage: true\n\nReturn zero."
+
+#define HELP_touch "usage: touch [-amch] [-d DATE] [-t TIME] [-r FILE] FILE...\n\nUpdate the access and modification times of each FILE to the current time.\n\n-a	Change access time\n-m	Change modification time\n-c	Don't create file\n-h	Change symlink\n-d	Set time to DATE (in YYYY-MM-DDThh:mm:SS[.frac][tz] format)\n-t	Set time to TIME (in [[CC]YY]MMDDhhmm[.ss][frac] format)\n-r	Set time same as reference FILE"
+
+#define HELP_time "usage: time [-pv] COMMAND...\n\nRun command line and report real, user, and system time elapsed in seconds.\n(real = clock on the wall, user = cpu used by command's code,\nsystem = cpu used by OS on behalf of command.)\n\n-p	POSIX format output\n-v	Verbose"
+
+#define HELP_test "usage: test [-bcdefghkLprSsuwx PATH] [-nz STRING] [-t FD] [X ?? Y]\n\nReturn true or false by performing tests. No arguments is false, one argument\nis true if not empty string.\n\n--- Tests with a single argument (after the option):\nPATH is/has:\n  -b  block device   -f  regular file   -p  fifo           -u  setuid bit\n  -c  char device    -g  setgid         -r  readable       -w  writable\n  -d  directory      -h  symlink        -S  socket         -x  executable\n  -e  exists         -L  symlink        -s  nonzero size   -k  sticky bit\nSTRING is:\n  -n  nonzero size   -z  zero size\nFD (integer file descriptor) is:\n  -t  a TTY\n\n--- Tests with one argument on each side of an operator:\nTwo strings:\n  =  are identical   !=  differ         =~  string matches regex\nAlphabetical sort:\n  <  first is lower  >   first higher\nTwo integers:\n  -eq  equal         -gt  first > second    -lt  first < second\n  -ne  not equal     -ge  first >= second   -le  first <= second\n\n--- Modify or combine tests:\n  ! EXPR     not (swap true/false)   EXPR -a EXPR    and (are both true)\n  ( EXPR )   evaluate this first     EXPR -o EXPR    or (is either true)"
+
+#define HELP_tee "usage: tee [-ai] [FILE...]\n\nCopy stdin to each listed file, and also to stdout.\nFilename \"-\" is a synonym for stdout.\n\n-a	Append to files\n-i	Ignore SIGINT"
+
+#define HELP_tar "usage: tar [-cxt] [-fvohmjkOS] [-XTCf NAME] [--selinux] [FILE...]\n\nCreate, extract, or list files in a .tar (or compressed t?z) file.\n\nOptions:\nc  Create                x  Extract               t  Test (list)\nf  tar FILE (default -)  C  Change to DIR first   v  Verbose display\nJ  xz compression        j  bzip2 compression     z  gzip compression\no  Ignore owner          h  Follow symlinks       m  Ignore mtime\nO  Extract to stdout     X  exclude names in FILE T  include names in FILE\ns  Sort dirs (--sort)\n\n--exclude        FILENAME to exclude  --full-time         Show seconds with -tv\n--mode MODE      Adjust permissions   --owner NAME[:UID]  Set file ownership\n--mtime TIME     Override timestamps  --group NAME[:GID]  Set file group\n--sparse         Record sparse files  --selinux           Save/restore labels\n--restrict       All under one dir    --no-recursion      Skip dir contents\n--numeric-owner  Use numeric uid/gid, not user/group names\n--null           Filenames in -T FILE are null-separated, not newline\n--strip-components NUM  Ignore first NUM directory components when extracting\n--xform=SED      Modify filenames via SED expression (ala s/find/replace/g)\n-I PROG          Filter through PROG to compress or PROG -d to decompress\n\nFilename filter types. Create command line args aren't filtered, extract\ndefaults to --anchored, --exclude defaults to --wildcards-match-slash,\nuse no- prefix to disable:\n\n--anchored  Match name not path       --ignore-case       Case insensitive\n--wildcards Expand *?[] like shell    --wildcards-match-slash"
+
+#define HELP_tail "usage: tail [-n|c NUMBER] [-f|F] [-s SECONDS] [FILE...]\n\nCopy last lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Output the last NUMBER lines (default 10), +X counts from start\n-c	Output the last NUMBER bytes, +NUMBER counts from start\n-f	Follow FILE(s) by descriptor, waiting for more data to be appended\n-F	Follow FILE(s) by filename, waiting for more data, and retrying\n-s	Used with -F, sleep SECONDS between retries (default 1)"
+
+#define HELP_strings "usage: strings [-fo] [-t oxd] [-n LEN] [FILE...]\n\nDisplay printable strings in a binary file\n\n-f	Show filename\n-n	At least LEN characters form a string (default 4)\n-o	Show offset (ala -t d)\n-t	Show offset type (o=octal, d=decimal, x=hexadecimal)"
+
+#define HELP_split "usage: split [-a SUFFIX_LEN] [-b BYTES] [-l LINES] [-n PARTS] [INPUT [OUTPUT]]\n\nCopy INPUT (or stdin) data to a series of OUTPUT (or \"x\") files with\nalphabetically increasing suffix (aa, ab, ac... az, ba, bb...).\n\n-a	Suffix length (default 2)\n-b	BYTES/file (10, 10k, 10m, 10g...)\n-l	LINES/file (default 1000)\n-n	PARTS many equal length files"
+
+#define HELP_sort "usage: sort [-CMVbcdfginrsuxz] [FILE...] [-k#[,#[x]] [-t X]] [-o FILE]\n\nSort all lines of text from input files (or stdin) to stdout.\n-g	General numeric sort (double precision with nan and inf)\n-n	Numeric order (instead of alphabetical)\n-r	Reverse\n-u	Unique lines only\n\n-b	Ignore leading blanks (or trailing blanks in second part of key)\n-C	Check whether input is sorted\n-c	Warn if input is unsorted\n-d	Dictionary order (use alphanumeric and whitespace chars only)\n-f	Force uppercase (case insensitive sort)\n-i	Ignore nonprinting characters\n-k	Sort by \"key\" (see below)\n-M	Month sort (jan, feb, etc)\n-o	Output to FILE instead of stdout\n-s	Skip fallback sort (only sort with keys)\n-t	Use a key separator other than whitespace\n-x	Hexadecimal numerical sort\n-V	Version numbers (name-1.234-rc6.5b.tgz)\n-z	Zero (null) terminated lines\n\nSorting by key looks at a subset of the words on each line. -k2 uses the\nsecond word to the end of the line, -k2,2 looks at only the second word,\n-k2,4 looks from the start of the second to the end of the fourth word.\n-k2.4,5 starts from the fourth character of the second word, to the end\nof the fifth word. Negative values count from the end. Specifying multiple\nkeys uses the later keys as tie breakers, in order. A type specifier\nappended to a sort key (such as -2,2n) applies only to sorting that key."
+
+#define HELP_sleep "usage: sleep DURATION...\n\nWait before exiting.\n\nDURATION can be a decimal fraction. An optional suffix can be \"m\"\n(minutes), \"h\" (hours), \"d\" (days), or \"s\" (seconds, the default)."
+
+#define HELP_sed "usage: sed [-inrszE] [-e SCRIPT]...|SCRIPT [-f SCRIPT_FILE]... [FILE...]\n\nStream editor. Apply editing SCRIPTs to lines of input.\n\n-e	Add SCRIPT to list\n-f	Add contents of SCRIPT_FILE to list\n-i	Edit each file in place (-iEXT keeps backup file with extension EXT)\n-n	No default output (use the p command to output matched lines)\n-r	Use extended regular expression syntax\n-E	POSIX alias for -r\n-s	Treat input files separately (implied by -i)\n-z	Use \\0 rather than \\n as input line separator\n\nA SCRIPT is one or more COMMANDs separated by newlines or semicolons.\nAll -e SCRIPTs and -f SCRIPT_FILE contents are combined in order as if\nseparated by newlines. If no -e or -f then first argument is the SCRIPT.\n\nCOMMANDs apply to every line unless prefixed with an ADDRESS of the form:\n\n  [ADDRESS[,ADDRESS]][!]COMMAND\n\nADDRESS is a line number (starting at 1), a /REGULAR EXPRESSION/, or $ for\nlast line (-s or -i makes it last line of each file). One address matches one\nline, ADDRESS,ADDRESS matches from first to second inclusive. Two regexes can\nmatch multiple ranges. ADDRESS,+N ends N lines later. ! inverts the match.\n\nREGULAR EXPRESSIONS start and end with the same character (anything but\nbackslash or newline). To use the delimiter in the regex escape it with a\nbackslash, and printf escapes (\\abcefnrtv and octal, hex, and unicode) work.\nAn empty regex repeats the previous one. ADDRESS regexes require any\nfirst delimiter except / to be \\escaped to distinguish it from COMMANDs.\n\nSed reads each line of input, processes it, and writes it out or discards it\nbefore reading the next. Sed can remember one additional line in a separate\nbuffer (the h, H, g, G, and x commands), and can read the next line of input\nearly (the n and N commands), but otherwise operates on individual lines.\n\nEach COMMAND starts with a single character. Commands with no arguments are:\n\n  !  Run this command when the ADDRESS _didn't_ match.\n  {  Start new command block, continuing until a corresponding \"}\".\n     Command blocks nest and can have ADDRESSes applying to the whole block.\n  }  End command block (this COMMAND cannot have an address)\n  d  Delete this line and move on to the next one\n     (ignores remaining COMMANDs)\n  D  Delete one line of input and restart command SCRIPT (same as \"d\"\n     unless you've glued lines together with \"N\" or similar)\n  g  Get remembered line (overwriting current line)\n  G  Get remembered line (appending to current line)\n  h  Remember this line (overwriting remembered line)\n  H  Remember this line (appending to remembered line, if any)\n  l  Print line escaping \\abfrtvn, octal escape other nonprintng chars,\n     wrap lines to terminal width with \\, append $ to end of line.\n  n  Print default output and read next line over current line (quit at EOF)\n  N  Append \\n and next line of input to this line. Quit at EOF without\n     default output. Advances line counter for ADDRESS and \"=\".\n  p  Print this line\n  P  Print this line up to first newline (from \"N\")\n  q  Quit (print default output, no more commands processed or lines read)\n  x  Exchange this line with remembered line (overwrite in both directions)\n  =  Print the current line number (plus newline)\n  #  Comment, ignores rest of this line of SCRIPT (until newline)\n\nCommands that take an argument:\n\n  : LABEL    Target for jump commands\n  a TEXT     Append text to output before reading next line\n  b LABEL    Branch, jumps to :LABEL (with no LABEL to end of SCRIPT)\n  c TEXT     Delete matching ADDRESS range and output TEXT instead\n  i TEXT     Insert text (output immediately)\n  r FILE     Append contents of FILE to output before reading next line.\n  s/S/R/F    Search for regex S replace match with R using flags F. Delimiter\n             is anything but \\n or \\, escape with \\ to use in S or R. Printf\n             escapes work. Unescaped & in R becomes full matched text, \\1\n             through \\9 = parenthetical subexpression from S. \\ at end of\n             line appends next line of SCRIPT. The flags in F are:\n             [0-9]    A number N, substitute only Nth match\n             g        Global, substitute all matches\n             i/I      Ignore case when matching\n             p        Print resulting line when match found and replaced\n             w [file] Write (append) line to file when match replaced\n  t LABEL    Test, jump if s/// command matched this line since last test\n  T LABEL    Test false, jump to :LABEL only if no s/// found a match\n  w FILE     Write (append) line to file\n  y/old/new/ Change each character in 'old' to corresponding character\n             in 'new' (with standard backslash escapes, delimiter can be\n             any repeated character except \\ or \\n)\n\nThe TEXT arguments (to a c i) may end with an unescaped \"\\\" to append\nthe next line (leading whitespace is not skipped), and treat \";\" as a\nliteral character (use \"\\;\" instead)."
+
+#define HELP_rmdir "usage: rmdir [-p] [DIR...]\n\nRemove one or more directories.\n\n-p	Remove path\n--ignore-fail-on-non-empty	Ignore failures caused by non-empty directories"
+
+#define HELP_rm "usage: rm [-fiRrv] FILE...\n\nRemove each argument from the filesystem.\n\n-f	Force: remove without confirmation, no error if it doesn't exist\n-i	Interactive: prompt for confirmation\n-rR	Recursive: remove directory contents\n-v	Verbose"
+
+#define HELP_renice "usage: renice [-gpu] -n INCREMENT ID...\n\n-g	Group ids\n-p	Process ids (default)\n-u	User ids"
+
+#define HELP_pwd "usage: pwd [-L|-P]\n\nPrint working (current) directory.\n\n-L	Use shell's path from $PWD (when applicable)\n-P	Print canonical absolute path"
+
+#define HELP_pkill "usage: pkill [-fnovx] [-SIGNAL|-l SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\n-l	Send SIGNAL (default SIGTERM)\n-V	Verbose\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_pgrep "usage: pgrep [-clfnovx] [-d DELIM] [-L SIGNAL] [PATTERN] [-G GID,] [-g PGRP,] [-P PPID,] [-s SID,] [-t TERM,] [-U UID,] [-u EUID,]\n\nSearch for process(es). PATTERN is an extended regular expression checked\nagainst command names.\n\n-c	Show only count of matches\n-d	Use DELIM instead of newline\n-L	Send SIGNAL instead of printing name\n-l	Show command name\n-f	Check full command line for PATTERN\n-G	Match real Group ID(s)\n-g	Match Process Group(s) (0 is current user)\n-n	Newest match only\n-o	Oldest match only\n-P	Match Parent Process ID(s)\n-s	Match Session ID(s) (0 for current)\n-t	Match Terminal(s)\n-U	Match real User ID(s)\n-u	Match effective User ID(s)\n-v	Negate the match\n-x	Match whole command (not substring)"
+
+#define HELP_iotop "usage: iotop [-AaKObq] [-n NUMBER] [-d SECONDS] [-p PID,] [-u USER,]\n\nRank processes by I/O.\n\n-A	All I/O, not just disk\n-a	Accumulated I/O (not percentage)\n-H	Show threads\n-K	Kilobytes\n-k	Fallback sort FIELDS (default -[D]IO,-ETIME,-PID)\n-m	Maximum number of tasks to show\n-O	Only show processes doing I/O\n-o	Show FIELDS (default PID,PR,USER,[D]READ,[D]WRITE,SWAP,[D]IO,COMM)\n-s	Sort by field number (0-X, default 6)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor LEFT/RIGHT to change sort, UP/DOWN move list, space to force\nupdate, R to reverse sort, Q to exit."
+
+#define HELP_top "usage: top [-Hhbq] [-k FIELD,] [-o FIELD,] [-s SORT] [-n NUMBER] [-m LINES] [-d SECONDS] [-p PID,] [-u USER,]\n\nShow process activity in real time.\n\n-H	Show threads\n-h	Usage graphs instead of text\n-k	Fallback sort FIELDS (default -S,-%CPU,-ETIME,-PID)\n-o	Show FIELDS (def PID,USER,PR,NI,VIRT,RES,SHR,S,%CPU,%MEM,TIME+,CMDLINE)\n-O	Add FIELDS (replacing PR,NI,VIRT,RES,SHR,S from default)\n-s	Sort by field number (1-X, default 9)\n-b	Batch mode (no tty)\n-d	Delay SECONDS between each cycle (default 3)\n-m	Maximum number of tasks to show\n-n	Exit after NUMBER iterations\n-p	Show these PIDs\n-u	Show these USERs\n-q	Quiet (no header lines)\n\nCursor UP/DOWN or LEFT/RIGHT to move list, SHIFT LEFT/RIGHT to change sort,\nspace to force update, R to reverse sort, Q to exit."
+
+#define HELP_ps "usage: ps [-AadefLlnwZ] [-gG GROUP,] [-k FIELD,] [-o FIELD,] [-p PID,] [-t TTY,] [-uU USER,]\n\nList processes.\n\nWhich processes to show (-gGuUpPt selections may be comma separated lists):\n\n-A  All					-a  Has terminal not session leader\n-d  All but session leaders		-e  Synonym for -A\n-g  In GROUPs				-G  In real GROUPs (before sgid)\n-p  PIDs (--pid)			-P  Parent PIDs (--ppid)\n-s  In session IDs			-t  Attached to selected TTYs\n-T  Show threads also			-u  Owned by selected USERs\n-U  Real USERs (before suid)\n\nOutput modifiers:\n\n-k  Sort FIELDs (-FIELD to reverse)	-M  Measure/pad future field widths\n-n  Show numeric USER and GROUP		-w  Wide output (don't truncate fields)\n\nWhich FIELDs to show. (-o HELP for list, default = -o PID,TTY,TIME,CMD)\n\n-f  Full listing (-o USER:12=UID,PID,PPID,C,STIME,TTY,TIME,ARGS=CMD)\n-l  Long listing (-o F,S,UID,PID,PPID,C,PRI,NI,ADDR,SZ,WCHAN,TTY,TIME,CMD)\n-o  Output FIELDs instead of defaults, each with optional :size and =title\n-O  Add FIELDS to defaults\n-Z  Include LABEL"
+
+#define HELP_printf "usage: printf FORMAT [ARGUMENT...]\n\nFormat and print ARGUMENT(s) according to FORMAT, using C printf syntax\n(% escapes for cdeEfgGiosuxX, \\ escapes for abefnrtv0 or \\OCTAL or \\xHEX)."
+
+#define HELP_patch "usage: patch [-Rlsuv] [-d DIR] [-i FILE] [-p DEPTH] [-F FUZZ] [--dry-run] [FILE [PATCH]]\n\nApply a unified diff to one or more files.\n\n-d	Modify files in DIR\n-F	Fuzz factor (number of non-matching context lines allowed per hunk)\n-i	Input patch from FILE (default=stdin)\n-l	Loose match (ignore whitespace)\n-p	Number of '/' to strip from start of file paths (default=all)\n-R	Reverse patch\n-s	Silent except for errors\n-v	Verbose (-vv to see decisions)\n--dry-run Don't change files, just confirm patch applies\n\nOnly handles \"unified\" diff format (-u is assumed and ignored). Only\nmodifies files when all hunks to that file apply. Prints failed hunks\nto stderr, and exits with nonzero status if any hunks fail.\n\nFiles compared against /dev/null (or with a date <= the unix epoch) are\ncreated/deleted as appropriate. Default -F value is the number of\nleading/trailing context lines minus one (usually 2)."
+
+#define HELP_paste "usage: paste [-s] [-d DELIMITERS] [FILE...]\n\nMerge corresponding lines from each input file.\n\n-d	List of delimiter characters to separate fields with (default is \\t)\n-s	Sequential mode: turn each input file into one line of output"
+
+#define HELP_od "usage: od [-bcdosxv] [-j #] [-N #] [-w #] [-A doxn] [-t acdfoux[#]]\n\nDump data in octal/hex.\n\n-A	Address base (decimal, octal, hexadecimal, none)\n-j	Skip this many bytes of input\n-N	Stop dumping after this many bytes\n-t	Output type a(scii) c(har) d(ecimal) f(loat) o(ctal) u(nsigned) (he)x\n	plus optional size in bytes\n	aliases: -b=-t o1, -c=-t c, -d=-t u2, -o=-t o2, -s=-t d2, -x=-t x2\n-v	Don't collapse repeated lines together\n-w	Total line width in bytes (default 16)"
+
+#define HELP_nohup "usage: nohup COMMAND...\n\nRun a command that survives the end of its terminal.\n\nRedirect tty on stdin to /dev/null, tty on stdout to \"nohup.out\"."
+
+#define HELP_nl "usage: nl [-E] [-l #] [-b MODE] [-n STYLE] [-s SEPARATOR] [-v #] [-w WIDTH] [FILE...]\n\nNumber lines of input.\n\n-E	Use extended regex syntax (when doing -b pREGEX)\n-b	Which lines to number: a (all) t (non-empty, default) pREGEX (pattern)\n-l	Only count last of this many consecutive blank lines\n-n	Number STYLE: ln (left justified) rn (right justified) rz (zero pad)\n-s	Separator to use between number and line (instead of TAB)\n-v	Starting line number for each section (default 1)\n-w	Width of line numbers (default 6)"
+
+#define HELP_nice "usage: nice [-n PRIORITY] COMMAND...\n\nRun a command line at an increased or decreased scheduling priority.\n\nHigher numbers make a program yield more CPU time, from -20 (highest\npriority) to 19 (lowest).  By default processes inherit their parent's\nniceness (usually 0).  By default this command adds 10 to the parent's\npriority.  Only root can set a negative niceness level.\n\n-n	Add given adjustment to priority (default 10)"
+
+#define HELP_mkfifo_z "usage: mkfifo [-Z CONTEXT]\n\n-Z	Security context"
+
+#define HELP_mkfifo "usage: mkfifo [NAME...]\n\nCreate FIFOs (named pipes)."
+
+#define HELP_mkdir_z "usage: [-Z context]\n\n-Z	Set security context"
+
+#define HELP_mkdir "usage: mkdir [-vp] [-m MODE] [DIR...]\n\nCreate one or more directories.\n\n-m	Set permissions of directory to mode\n-p	Make parent directories as needed\n-v	Verbose"
+
+#define HELP_ls "usage: ls [-1ACFHLNRSUXZabcdfghilmnopqrstuwx] [--color[=auto]] [FILE...]\n\nList files\n\nwhat to show:\n-A  all files except . and ..      -a  all files including .hidden\n-b  escape nongraphic chars        -d  directory, not contents\n-F  append /dir *exe @sym |FIFO    -f  files (no sort/filter/format)\n-H  follow command line symlinks   -i  inode number\n-L  follow symlinks                -N  no escaping, even on tty\n-p  put '/' after dir names        -q  unprintable chars as '?'\n-R  recursively list in subdirs    -s  storage used (in --block-size)\n-Z  security context\n\noutput formats:\n-1  list one file per line         -C  columns (sorted vertically)\n-g  like -l but no owner           -h  human readable sizes\n-k  reset --block-size to default  -l  long (show full details)\n-m  comma separated                -ll long with nanoseconds (--full-time)\n-n  long with numeric uid/gid      -o  long without group column\n-r  reverse order                  -w  set column width\n-x  columns (horizontal sort)\n\nsort by:  (also --sort=longname,longname... ends with alphabetical)\n-c  ctime      -r  reverse    -S  size     -t  time    -u  atime    -U  none\n-X  extension  -!  dirfirst   -~  nocase\n\n--block-size N	block size (default 1024, -k resets to 1024)\n--color  =always (default)  =auto (when stdout is tty) =never\n    exe=green  suid=red  suidfile=redback  stickydir=greenback\n    device=yellow  symlink=turquoise/red  dir=blue  socket=purple\n\nLong output uses -cu for display, use -ltc/-ltu to also sort by ctime/atime."
+
+#define HELP_logger "usage: logger [-s] [-t TAG] [-p [FACILITY.]PRIORITY] [MESSAGE...]\n\nLog message (or stdin) to syslog.\n\n-s	Also write message to stderr\n-t	Use TAG instead of username to identify message source\n-p	Specify PRIORITY with optional FACILITY. Default is \"user.notice\""
+
+#define HELP_ln "usage: ln [-fnrsTv] [-t DIR] [FROM...] TO\n\nCreate a link between FROM and TO.\nOne/two/many arguments work like \"mv\" or \"cp\".\n\n-f	Force the creation of the link, even if TO already exists\n-n	Symlink at TO treated as file\n-r	Create relative symlink from -> to\n-s	Create a symbolic link\n-t	Create links in DIR\n-T	TO always treated as file, max 2 arguments\n-v	Verbose"
+
+#define HELP_link "usage: link FILE NEWLINK\n\nCreate hardlink to a file."
+
+#define HELP_killall5 "usage: killall5 [-l [SIGNAL]] [-SIGNAL|-s SIGNAL] [-o PID]...\n\nSend a signal to all processes outside current session.\n\n-l	List signal name(s) and number(s)\n-o PID	Omit PID\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_kill "usage: kill [-l [SIGNAL] | -s SIGNAL | -SIGNAL] PID...\n\nSend signal to process(es).\n\n-l	List signal name(s) and number(s)\n-s	Send SIGNAL (default SIGTERM)"
+
+#define HELP_whoami "usage: whoami\n\nPrint the current user name."
+
+#define HELP_logname "usage: logname\n\nPrint the current user name."
+
+#define HELP_groups "usage: groups [user]\n\nPrint the groups a user is in."
+
+#define HELP_id_z "usage: id [-Z]\n\n-Z	Show only security context"
+
+#define HELP_id "usage: id [-Ggnru] [USER...]\n\nPrint user and group ID.\n\n-G	Show all group IDs\n-g	Show only the effective group ID\n-n	Print names instead of numeric IDs (to be used with -Ggu)\n-r	Show real ID instead of effective ID\n-u	Show only the effective user ID"
+
+#define HELP_iconv "usage: iconv [-f FROM] [-t TO] [FILE...]\n\nConvert character encoding of files.\n\n-c	Omit invalid chars\n-f	Convert from (default UTF-8)\n-t	Convert to   (default UTF-8)"
+
+#define HELP_head "usage: head [-cn NUM] [-qv] [FILE...]\n\nCopy first lines from files to stdout. If no files listed, copy from\nstdin. Filename \"-\" is a synonym for stdin.\n\n-n	Number of lines to copy\n-c	Number of bytes to copy\n-q	Never print headers\n-v	Always print headers"
+
+#define HELP_grep "usage: grep [-abcEFHhIiLlnoqrsvwxZz] [-ABC NUM] [-m MAX] [-e REGEX]... [-MS PATTERN]... [-f REGFILE]... [FILE]...\n\nShow lines matching regular expressions. If no -e, first argument is\nregular expression to match. With no files (or \"-\" filename) read stdin.\nReturns 0 if matched, 1 if no match found, 2 for command errors.\n\n-e  Regex(es) to match.       -f  File(s) of regexes to match (1 per line).\n\nfile search:\n-r  Recurse into subdirs     -R  Recurse following symlinks\n-M  Match files (--include)  -S  Skip files (--exclude)\n-I  Ignore binary files      --exclude-dir=PATTERN  Skip directories\n\nmatch type:\n-A  Show NUM lines after     -B  Show NUM lines before match\n-C  NUM lines context (A+B)  -E  extended regex syntax\n-F  fixed (literal match)    -a  always text (not binary)\n-i  case insensitive         -m  match MAX many lines\n-v  invert match             -w  whole word (implies -E)\n-x  whole line               -z  input NUL terminated\n\ndisplay modes: (default: matched line)\n-L  filenames with no match  -Z  output is NUL terminated\n-c  count of matching lines  -l  filenames with a match\n-o  only matching part       -q  quiet (errors only)\n-s  silent (no error msg)\n\noutput prefix (default: filename if checking more than 1 file)\n-H  force filename           -b  byte offset of match\n-h  hide filename            -n  line number of match"
+
+#define HELP_getconf "usage: getconf -a [PATH] | -l | NAME [PATH]\n\nGet system configuration values. Values from pathconf(3) require a path.\n\n-a	Show all (defaults to \"/\" if no path given)\n-l	List available value names (grouped by source)"
+
+#define HELP_fold "usage: fold [-bs] [-w WIDTH] [FILE...]\n\nBreak long lines by inserting newlines.\n\n-b	Count bytes instead of utf-8 unicode columns\n-s	Wrap at whitespace when possible\n-w	Break at WIDTH columns (default 80)"
+
+#define HELP_find "usage: find [-HL] [DIR...] [<options>]\n\nSearch directories for matching files.\nDefault: search \".\", match all, -print matches.\n\n-H  Follow command line symlinks         -L  Follow all symlinks\n\nMatch filters:\n-name  PATTERN   filename with wildcards   -iname      ignore case -name\n-path  PATTERN   path name with wildcards  -ipath      ignore case -path\n-user  UNAME     belongs to user UNAME     -nouser     user ID not known\n-group GROUP     belongs to group GROUP    -nogroup    group ID not known\n-perm  [-/]MODE  permissions (-=min /=any) -prune      ignore dir contents\n-size  N[c]      512 byte blocks (c=bytes) -xdev       only this filesystem\n-links N         hardlink count            -empty      empty files and dirs\n-atime N[u]      accessed N units ago      -true       always true\n-ctime N[u]      created N units ago       -false      always false\n-mtime N[u]      modified N units ago      -executable access(X_OK) perm+ACL\n-inum  N         inode number N            -readable   access(R_OK) perm+ACL\n-context PATTERN security context          -depth      contents before dir\n-samefile FILE   hardlink to FILE          -maxdepth N at most N dirs down\n-newer    FILE   newer mtime than FILE     -mindepth N at least N dirs down\n-newerXY  FILE   X=acm time > FILE's Y=acm time (Y=t: FILE is literal time)\n-type [bcdflps]  type is (block, char, dir, file, symlink, pipe, socket)\n\nNumbers N may be prefixed by - (less than) or + (greater than). Units for\n-[acm]time are d (days, default), h (hours), m (minutes), or s (seconds).\n\nCombine matches with:\n!, -a, -o, ( )    not, and, or, group expressions\n\nActions:\n-print  Print match with newline  -print0        Print match with null\n-exec   Run command with path     -execdir       Run command in file's dir\n-ok     Ask before exec           -okdir         Ask before execdir\n-delete Remove matching file/dir  -printf FORMAT Print using format string\n-quit   Exit immediately\n\nCommands substitute \"{}\" with matched file. End with \";\" to run each file,\nor \"+\" (next argument after \"{}\") to collect and run with multiple files.\n\n-printf FORMAT characters are \\ escapes and:\n%b  512 byte blocks used\n%f  basename            %g  textual gid          %G  numeric gid\n%i  decimal inode       %l  target of symlink    %m  octal mode\n%M  ls format type/mode %p  path to file         %P  path to file minus DIR\n%s  size in bytes       %T@ mod time as unixtime\n%u  username            %U  numeric uid          %Z  security context"
+
+#define HELP_file "usage: file [-bhLs] [FILE...]\n\nExamine the given files and describe their content types.\n\n-b	Brief (no filename)\n-h	Don't follow symlinks (default)\n-L	Follow symlinks\n-s	Show block/char device contents"
+
+#define HELP_false "usage: false\n\nReturn nonzero."
+
+#define HELP_expand "usage: expand [-t TABLIST] [FILE...]\n\nExpand tabs to spaces according to tabstops.\n\n-t	TABLIST\n\nSpecify tab stops, either a single number instead of the default 8,\nor a comma separated list of increasing numbers representing tabstop\npositions (absolute, not increments) with each additional tab beyond\nthat becoming one space."
+
+#define HELP_env "usage: env [-0i] [-e FILE] [-u NAME] [NAME=VALUE...] [COMMAND...]\n\nSet the environment for command invocation, or list environment variables.\n\n-e	Execute FILE instead of argv[0] in COMMAND list\n-i	Clear existing environment\n-u NAME	Remove NAME from the environment\n-0	Use null instead of newline in output"
+
+#define HELP_echo "usage: echo [-Een] [ARG...]\n\nWrite each argument to stdout, one space between each, followed by a newline.\n\n-E	Print escape sequences literally (default)\n-e	Process the following escape sequences:\n	\\\\  Backslash		\\0NNN Octal (1-3 digit)	\\xHH Hex (1-2 digit)\n	\\a  Alert (beep/flash)	\\b  Backspace		\\c  Stop here (no \\n)\n	\\f  Form feed		\\n  Newline		\\r  Carriage return\n	\\t  Horizontal tab	\\v  Vertical tab\n-n	No trailing newline"
+
+#define HELP_du "usage: du [-d N] [-abcHKkLlmsx] [FILE...]\n\nShow disk usage, space consumed by files and directories.\n\nSize in:\n-b	Apparent bytes (directory listing size, not space used)\n-h	Human readable (e.g., 1K 243M 2G)\n-k	1024 byte blocks (default)\n-K	512 byte blocks (posix)\n-m	Megabytes\n\nWhat to show:\n-a	All files, not just directories\n-c	Cumulative total\n-d N	Only depth < N\n-H	Follow symlinks on cmdline\n-L	Follow all symlinks\n-l	Disable hardlink filter\n-s	Only total size of each argument\n-x	Don't leave this filesystem"
+
+#define HELP_dirname "usage: dirname PATH...\n\nShow directory portion of path."
+
+#define HELP_df "usage: df [-aHhikP] [-t TYPE] [FILE...]\n\nThe \"disk free\" command shows total/used/available disk space for\neach filesystem listed on the command line, or all currently mounted\nfilesystems.\n\n-a	Show all (including /proc and friends)\n-H	Human readable (k=1000)\n-h	Human readable (K=1024)\n-i	Show inodes instead of blocks\n-k	Sets units back to 1024 bytes (the default without -P)\n-P	The SUSv3 \"Pedantic\" option (512 byte blocks)\n-t TYPE	Display only filesystems of this type\n\nPedantic provides a slightly less useful output format dictated by POSIX,\nand sets the units to 512 bytes instead of the default 1024 bytes."
+
+#define HELP_dd "usage: dd [if|of=FILE] [ibs|obs|bs|count|seek|skip=N] [conv|status|iflag|oflag=FLAG[,FLAG...]]\n\nCopy/convert blocks of data from input to output, with the following\nkeyword=value modifiers (and their default values):\n\nif=FILE  Read FILE (stdin)          of=FILE  Write to FILE (stdout)\n   bs=N  Block size in bytes (512)  count=N  Stop after copying N blocks (all)\n  ibs=N  Input block size (bs=)       obs=N  Output block size (bs=)\n skip=N  Skip N input blocks (0)     seek=N  Skip N output blocks (0)\n\nEach =N value accepts the normal unit suffixes (see toybox --help).\n\nThese modifiers take a comma separated list of potential options:\n\niflag=count_bytes,skip_bytes   count=N or skip=N is in bytes not blocks\noflag=seek_bytes,append        seek=N is in bytes, append output to file\nstatus=noxfer,none             don't show transfer rate, no summary info\nconv=\n  notrunc  Don't truncate output    noerror  Continue after read errors\n  sync     Zero pad short reads     fsync    Flush output to disk at end\n  sparse   Seek past zeroed output  excl     Fail if output file exists\n  nocreat  Fail if of=FILE missing"
+
+#define HELP_date "usage: date [-u] [-I RES] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]\n\nSet/get the current date/time. With no SET shows the current date.\n\n-d	Show DATE instead of current time (convert date format)\n-D	+FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])\n-I RES	ISO 8601 with RESolution d=date/h=hours/m=minutes/s=seconds/n=ns\n-r	Use modification time of FILE instead of current date\n-s DATE	Set the system clock to DATE.\n-u	Use UTC instead of current timezone\n\nSupported input formats:\n\nMMDDhhmm[[CC]YY][.ss]     POSIX\n@UNIXTIME[.FRACTION]      seconds since midnight 1970-01-01\nYYYY-MM-DD [hh:mm[:ss]]   ISO 8601\nhh:mm[:ss]                24-hour time today\n\nAll input formats can be followed by fractional seconds, and/or a UTC\noffset such as -0800.\n\nAll input formats can be preceded by TZ=\"id\" to set the input time zone\nseparately from the output time zone. Otherwise $TZ sets both.\n\n+FORMAT specifies display format string using strftime(3) syntax:\n\n%% literal %             %n newline              %t tab\n%S seconds (00-60)       %M minute (00-59)       %m month (01-12)\n%H hour (0-23)           %I hour (01-12)         %p AM/PM\n%y short year (00-99)    %Y year                 %C century\n%a short weekday name    %A weekday name         %u day of week (1-7, 1=mon)\n%b short month name      %B month name           %Z timezone name\n%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)\n%N nanosec (output only)\n\n%U Week of year (0-53 start Sunday)   %W Week of year (0-53 start Monday)\n%V Week of year (1-53 start Monday, week < 4 days not part of this year)\n\n%F \"%Y-%m-%d\"   %R \"%H:%M\"        %T \"%H:%M:%S\"        %z  timezone (-0800)\n%D \"%m/%d/%y\"   %r \"%I:%M:%S %p\"  %h \"%b\"              %:z timezone (-08:00)\n%x locale date  %X locale time    %c locale date/time  %s  unix epoch time"
+
+#define HELP_cut "usage: cut [-Ds] [-bcCfF LIST] [-dO DELIM] [FILE...]\n\nPrint selected parts of lines from each FILE to standard output.\n\nEach selection LIST is comma separated, either numbers (counting from 1)\nor dash separated ranges (inclusive, with X- meaning to end of line and -X\nfrom start). By default selection ranges are sorted and collated, use -D\nto prevent that.\n\n-b	Select bytes (with -n round start/end down to start of utf8 char)\n-c	Select UTF-8 characters\n-C	Select unicode columns\n-d	Input delimiter (default is TAB for -f, run of whitespace for -F)\n-D	Don't sort/collate selections or match -fF lines without delimiter\n-f	Select fields (words) separated by single DELIM character\n-F	Select fields separated by DELIM regex\n-O	Output separator (default one space for -F, input delim for -f)\n-s	Skip lines without delimiters"
+
+#define HELP_cpio "usage: cpio -{o|t|i|p DEST} [-dLtuv] [--verbose] [-F FILE] [-R [USER][:GROUP] [--no-preserve-owner]\n\nCopy files into and out of a \"newc\" format cpio archive.\n\n-d	Create directories if needed\n-F FILE	Use archive FILE instead of stdin/stdout\n-i	Extract from archive into file system (stdin=archive)\n-L	Follow symlinks\n-o	Create archive (stdin=list of files, stdout=archive)\n-p DEST	Copy-pass mode, copy stdin file list to directory DEST\n-R USER	Replace owner with USER[:GROUP]\n-t	Test files (list only, stdin=archive, stdout=list of files)\n-u	Unlink existing files when extracting\n-v	Verbose\n--no-preserve-owner     Don't set ownership during extract"
+
+#define HELP_install "usage: install [-dDpsv] [-o USER] [-g GROUP] [-m MODE] [-t TARGET] [SOURCE...] [DEST]\n\nCopy files and set attributes.\n\n-d	Act like mkdir -p\n-D	Create leading directories for DEST\n-g	Make copy belong to GROUP\n-m	Set permissions to MODE\n-o	Make copy belong to USER\n-p	Preserve timestamps\n-s	Call \"strip -p\"\n-t	Copy files to TARGET dir (no DEST)\n-v	Verbose"
+
+#define HELP_mv "usage: mv [-FfinTvx] [-t TARGET] SOURCE... [DEST]\n\n-F	Delete any existing DEST first (--remove-destination)\n-f	Force copy by deleting destination file\n-i	Interactive, prompt before overwriting existing DEST\n-n	No clobber (don't overwrite DEST)\n-t	Move to TARGET dir (no DEST)\n-T	DEST always treated as file, max 2 arguments\n-v	Verbose\n-x	Atomically exchange source/dest (--swap)"
+
+#define HELP_cp "usage: cp [-aDdFfHiLlnPpRrsTuv] [--preserve=motcxa] [-t TARGET] SOURCE... [DEST]\n\nCopy files from SOURCE to DEST.  If more than one SOURCE, DEST must\nbe a directory.\n\n-a	Same as -dpr\n-D	Create leading dirs under DEST (--parents)\n-d	Don't dereference symlinks\n-F	Delete any existing DEST first (--remove-destination)\n-f	Delete destination files we can't write to\n-H	Follow symlinks listed on command line\n-i	Interactive, prompt before overwriting existing DEST\n-L	Follow all symlinks\n-l	Hard link instead of copy\n-n	No clobber (don't overwrite DEST)\n-P	Do not follow symlinks\n-p	Preserve timestamps, ownership, and mode\n-R	Recurse into subdirectories (DEST must be a directory)\n-r	Synonym for -R\n-s	Symlink instead of copy\n-T	DEST always treated as file, max 2 arguments\n-t	Copy to TARGET dir (no DEST)\n-u	Update (keep newest mtime)\n-v	Verbose\n\nArguments to --preserve are the first letter(s) of:\n\n        mode - permissions (ignore umask for rwx, copy suid and sticky bit)\n   ownership - user and group\n  timestamps - file creation, modification, and access times.\n     context - security context\n       xattr - extended attributes\n         all - all of the above"
+
+#define HELP_comm "usage: comm [-123] FILE1 FILE2\n\nRead FILE1 and FILE2, which should be ordered, and produce three text\ncolumns as output: lines only in FILE1; lines only in FILE2; and lines\nin both files. Filename \"-\" is a synonym for stdin.\n\n-1	Suppress the output column of lines unique to FILE1\n-2	Suppress the output column of lines unique to FILE2\n-3	Suppress the output column of lines duplicated in FILE1 and FILE2"
+
+#define HELP_cmp "usage: cmp [-ls] [-n LEN] FILE1 [FILE2 [SKIP1 [SKIP2]]]\n\nCompare the contents of files (vs stdin if only one given), optionally\nskipping bytes at start.\n\n-l	Show all differing bytes\n-n LEN	Compare at most LEN bytes\n-s	Silent"
+
+#define HELP_crc32 "usage: crc32 [file...]\n\nOutput crc32 checksum for each file."
+
+#define HELP_cksum "usage: cksum [-HIPLN] [FILE...]\n\nFor each file, output crc32 checksum value, length and name of file.\nIf no files listed, copy from stdin.  Filename \"-\" is a synonym for stdin.\n\n-H	Hexadecimal checksum (defaults to decimal)\n-I	Skip post-inversion\n-P	Pre-inversion\n-L	Little endian (defaults to big endian)\n-N	Do not include length in CRC calculation (or output)"
+
+#define HELP_chmod "usage: chmod [-R] MODE FILE...\n\nChange mode of listed file[s] (recursively with -R).\n\nMODE can be (comma-separated) stanzas: [ugoa][+-=][rwxstXugo]\n\nStanzas are applied in order: For each category (u = user,\ng = group, o = other, a = all three, if none specified default is a),\nset (+), clear (-), or copy (=), r = read, w = write, x = execute.\ns = u+s = suid, g+s = sgid, +t = sticky. (o+s ignored so a+s doesn't set +t)\nsuid/sgid: execute as the user/group who owns the file.\nsticky: can't delete files you don't own out of this directory\nX = x for directories or if any category already has x set.\n\nOr MODE can be an octal value up to 7777	ug uuugggooo	top +\nbit 1 = o+x, bit 1<<8 = u+w, 1<<11 = g+1	sstrwxrwxrwx	bottom\n\nExamples:\nchmod u+w file - allow owner of \"file\" to write to it.\nchmod 744 file - user can read/write/execute, everyone else read only"
+
+#define HELP_chown "see: chgrp"
+
+#define HELP_chgrp "usage: chgrp/chown [-RHLP] [-fvh] GROUP FILE...\n\nChange group of one or more files.\n\n-f	Suppress most error messages\n-h	Change symlinks instead of what they point to\n-R	Recurse into subdirectories (implies -h)\n-H	With -R change target of symlink, follow command line symlinks\n-L	With -R change target of symlink, follow all symlinks\n-P	With -R change symlink, do not follow symlinks (default)\n-v	Verbose"
+
+#define HELP_cat "usage: cat [-etuv] [FILE...]\n\nCopy (concatenate) files to stdout.  If no files listed, copy from stdin.\nFilename \"-\" is a synonym for stdin.\n\n-e	Mark each newline with $\n-t	Show tabs as ^I\n-u	Copy one byte at a time (slow)\n-v	Display nonprinting characters as escape sequences with M-x for\n	high ascii characters (>127), and ^x for other nonprinting chars"
+
+#define HELP_cal "usage: cal [-h] [[[DAY] MONTH] YEAR]\n\nPrint a calendar.\n\nWith one argument, prints all months of the specified year.\nWith two arguments, prints calendar for month and year.\nWith three arguments, highlights day within month and year.\n\n-h	Don't highlight today"
+
+#define HELP_basename "usage: basename [-a] [-s SUFFIX] NAME... | NAME [SUFFIX]\n\nReturn non-directory portion of a pathname removing suffix.\n\n-a		All arguments are names\n-s SUFFIX	Remove suffix (implies -a)"
+
diff --git a/android/mac/generated/newtoys.h b/android/mac/generated/newtoys.h
new file mode 100644
index 0000000..9281485
--- /dev/null
+++ b/android/mac/generated/newtoys.h
@@ -0,0 +1,347 @@
+USE_TOYBOX(NEWTOY(toybox, 0, TOYFLAG_STAYROOT|TOYFLAG_NOHELP))
+USE_SH(OLDTOY(-bash, sh, 0))
+USE_SH(OLDTOY(-sh, sh, 0))
+USE_SH(OLDTOY(-toysh, sh, 0))
+USE_SH(OLDTOY(., source, TOYFLAG_NOFORK))
+USE_TRUE(OLDTOY(:, true, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_TEST_GLUE(OLDTOY([, test, TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_NOHELP))
+USE_SH(OLDTOY([[, test, TOYFLAG_NOFORK|TOYFLAG_NOHELP))
+USE_ACPI(NEWTOY(acpi, "abctV", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GROUPADD(OLDTOY(addgroup, groupadd, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERADD(OLDTOY(adduser, useradd, TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_ARCH(NEWTOY(arch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARP(NEWTOY(arp, "vi:nDsdap:A:H:[+Ap][!sd]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ARPING(NEWTOY(arping, "<1>1s:I:w#<0c#<0AUDbqf[+AU][+Df]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ASCII(NEWTOY(ascii, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE32(NEWTOY(base32, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASE64(NEWTOY(base64, "diw#<0=76[!dw]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BASENAME(NEWTOY(basename, "^<1as:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(OLDTOY(bash, sh, TOYFLAG_BIN))
+USE_BC(NEWTOY(bc, "i(interactive)l(mathlib)q(quiet)s(standard)w(warn)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BLKDISCARD(NEWTOY(blkdiscard, "<1>1f(force)l(length)#<0o(offset)#<0s(secure)z(zeroout)[!sz]", TOYFLAG_BIN))
+USE_BLKID(NEWTOY(blkid, "ULo:s*[!LU]", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_BLOCKDEV(NEWTOY(blockdev, "<1>1(setro)(setrw)(getro)(getss)(getbsz)(setbsz)#<0(getsz)(getsize)(getsize64)(getra)(setra)#<0(flushbufs)(rereadpt)",TOYFLAG_SBIN))
+USE_BOOTCHARTD(NEWTOY(bootchartd, 0, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_BRCTL(NEWTOY(brctl, "<1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_BUNZIP2(NEWTOY(bunzip2, "cftkv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_BZCAT(NEWTOY(bzcat, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAL(NEWTOY(cal, ">3h", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CAT(NEWTOY(cat, "uvte", TOYFLAG_BIN))
+USE_SH(NEWTOY(cd, ">1LP[-LP]", TOYFLAG_NOFORK))
+USE_CHATTR(NEWTOY(chattr, "?p#v#R", TOYFLAG_BIN))
+USE_CHCON(NEWTOY(chcon, "<2hvR", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHGRP(NEWTOY(chgrp, "<2h(no-dereference)PLHRfv[-HLP]", TOYFLAG_BIN))
+USE_CHMOD(NEWTOY(chmod, "<2?vfR[-vf]", TOYFLAG_BIN))
+USE_CHOWN(OLDTOY(chown, chgrp, TOYFLAG_BIN))
+USE_CHROOT(NEWTOY(chroot, "^<1", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_ARGFAIL(125)))
+USE_CHRT(NEWTOY(chrt, "^mp#<0iRbrfo[!ibrfo]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CHSH(NEWTOY(chsh, ">1R:s:a", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CHVT(NEWTOY(chvt, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CKSUM(NEWTOY(cksum, "HIPLN", TOYFLAG_BIN))
+USE_CLEAR(NEWTOY(clear, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_CMP(NEWTOY(cmp, "<1>4ls(silent)(quiet)n#<1[!ls]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_COMM(NEWTOY(comm, "<2>2321", TOYFLAG_USR|TOYFLAG_BIN))
+USE_COUNT(NEWTOY(count, "<0>0l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CP(NEWTOY(cp, "<1(preserve):;D(parents)RHLPprudaslv(verbose)nF(remove-destination)fit:T[-HLPd][-niu][+Rr]", TOYFLAG_BIN))
+USE_CPIO(NEWTOY(cpio, "(ignore-devno)(renumber-inodes)(quiet)(no-preserve-owner)R(owner):md(make-directories)uLH:p|i|t|F:v(verbose)o|[!pio][!pot][!pF]", TOYFLAG_BIN))
+USE_CRC32(NEWTOY(crc32, 0, TOYFLAG_BIN))
+USE_CROND(NEWTOY(crond, "fbSl#<0=8d#<0L:c:[-bf][-LS][-ld]", TOYFLAG_USR|TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_CRONTAB(NEWTOY(crontab, "c:u:elr[!elr]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_CSPLIT(NEWTOY(csplit, "<2skf:n#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_CUT(NEWTOY(cut, "b*|c*|f*|F(regex-fields)*|C*|O(output-delimiter):d:sD(allow-duplicates)n[!cbfF]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DATE(NEWTOY(date, ">1d:D:I(iso-8601):;r:s:u(utc)[!dr]", TOYFLAG_BIN))
+USE_DD(NEWTOY(dd, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEALLOCVT(NEWTOY(deallocvt, ">1", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_SH(NEWTOY(declare, "pAailunxr", TOYFLAG_NOFORK))
+USE_GROUPDEL(OLDTOY(delgroup, groupdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USERDEL(OLDTOY(deluser, userdel, TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_DEMO_MANY_OPTIONS(NEWTOY(demo_many_options, "ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba", TOYFLAG_BIN))
+USE_DEMO_NUMBER(NEWTOY(demo_number, "D#=3<3M#<0hcdbs", TOYFLAG_BIN))
+USE_DEMO_SCANKEY(NEWTOY(demo_scankey, 0, TOYFLAG_BIN))
+USE_DEMO_UTF8TOWC(NEWTOY(demo_utf8towc, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_DEVMEM(NEWTOY(devmem, "<1>3", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_DF(NEWTOY(df, "HPkhit*a[-HPh]", TOYFLAG_BIN))
+USE_DHCP(NEWTOY(dhcp, "V:H:F:x*r:O*A#<0=20T#<0=3t#<0=3s:p:i:SBRCaovqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCP6(NEWTOY(dhcp6, "r:A#<0T#<0t#<0s:p:i:SRvqnbf", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DHCPD(NEWTOY(dhcpd, ">1P#<0>65535fi:S46[!46]", TOYFLAG_SBIN|TOYFLAG_ROOTONLY))
+USE_DIFF(NEWTOY(diff, "<2>2(unchanged-line-format):;(old-line-format):;(new-line-format):;(color)(strip-trailing-cr)B(ignore-blank-lines)d(minimal)b(ignore-space-change)ut(expand-tabs)w(ignore-all-space)i(ignore-case)T(initial-tab)s(report-identical-files)q(brief)a(text)S(starting-file):F(show-function-line):;L(label)*N(new-file)r(recursive)U(unified)#<0=3", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_DIRNAME(NEWTOY(dirname, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DMESG(NEWTOY(dmesg, "w(follow)CSTtrs#<1n#c[!Ttr][!Cc][!Sw]", TOYFLAG_BIN))
+USE_DNSDOMAINNAME(NEWTOY(dnsdomainname, ">0", TOYFLAG_BIN))
+USE_DOS2UNIX(NEWTOY(dos2unix, 0, TOYFLAG_BIN))
+USE_DU(NEWTOY(du, "d#<0=-1hmlcaHkKLsxb[-HL][-kKmh]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_DUMPLEASES(NEWTOY(dumpleases, ">0arf:[!ar]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ECHO(NEWTOY(echo, "^?Een[-eE]", TOYFLAG_BIN|TOYFLAG_MAYFORK|TOYFLAG_LINEBUF))
+USE_EGREP(OLDTOY(egrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_EJECT(NEWTOY(eject, ">1stT[!tT]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ENV(NEWTOY(env, "^e:i0u*", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_SH(NEWTOY(eval, 0, TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exec, "^cla:", TOYFLAG_NOFORK))
+USE_SH(NEWTOY(exit, 0, TOYFLAG_NOFORK))
+USE_EXPAND(NEWTOY(expand, "t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(export, "np", TOYFLAG_NOFORK))
+USE_EXPR(NEWTOY(expr, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_FACTOR(NEWTOY(factor, "?hx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALLOCATE(NEWTOY(fallocate, ">1l#|o#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FALSE(NEWTOY(false, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_FDISK(NEWTOY(fdisk, "C#<0H#<0S#<0b#<512ul", TOYFLAG_SBIN))
+USE_FGREP(OLDTOY(fgrep, grep, TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_FILE(NEWTOY(file, "<1b(brief)hLs[!hL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FIND(NEWTOY(find, "?^HL[-HL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FLOCK(NEWTOY(flock, "<1>1nsux[-sux]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FMT(NEWTOY(fmt, "w#<0=75", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FOLD(NEWTOY(fold, "bsw#<1=80", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREE(NEWTOY(free, "hgmkb[!hgmkb]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FREERAMDISK(NEWTOY(freeramdisk, "<1>1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_FSCK(NEWTOY(fsck, "?t:ANPRTVsC#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FSFREEZE(NEWTOY(fsfreeze, "<1>1f|u|[!fu]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_FSTYPE(NEWTOY(fstype, "<1", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_FSYNC(NEWTOY(fsync, "<1d", TOYFLAG_BIN))
+USE_FTPGET(NEWTOY(ftpget, "<2>3P:cp:u:vgslLmMdD[-gs][!gslLmMdD][!clL]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_FTPPUT(OLDTOY(ftpput, ftpget, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETCONF(NEWTOY(getconf, ">2al", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETENFORCE(NEWTOY(getenforce, ">0", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_GETFATTR(NEWTOY(getfattr, "(only-values)dhn:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETOPT(NEWTOY(getopt, "^a(alternative)n:(name)o:(options)l*(long)(longoptions)Tu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GETTY(NEWTOY(getty, "<2t#<0H:I:l:f:iwnmLh", TOYFLAG_SBIN))
+USE_GITCHECKOUT(NEWTOY(gitcheckout, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITCLONE(NEWTOY(gitclone, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITFETCH(NEWTOY(gitfetch, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITINIT(NEWTOY(gitinit, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GITREMOTE(NEWTOY(gitremote, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIODETECT(NEWTOY(gpiodetect, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOFIND(NEWTOY(gpiofind, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOGET(NEWTOY(gpioget, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOINFO(NEWTOY(gpioinfo, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GPIOSET(NEWTOY(gpioset, "<2l", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GREP(NEWTOY(grep, "(line-buffered)(color):;(exclude-dir)*S(exclude)*M(include)*ZzEFHIab(byte-offset)h(no-filename)ino(only-matching)rRsvwc(count)L(files-without-match)l(files-with-matches)q(quiet)(silent)e*f*C#B#A#m#x[!wx][!EF]", TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)|TOYFLAG_LINEBUF))
+USE_GROUPADD(NEWTOY(groupadd, "<1>2R:g#<0>2147483647S", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPDEL(NEWTOY(groupdel, "<1>2?", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_GROUPS(NEWTOY(groups, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_GUNZIP(NEWTOY(gunzip, "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_GZIP(NEWTOY(gzip,    "n(no-name)cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(halt, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_HD(OLDTOY(hd, hexdump, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEAD(NEWTOY(head, "?n(lines)#<0=10c(bytes)#<0qv[-nc]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HELLO(NEWTOY(hello, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_HELP(NEWTOY(help, "ahu", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_HEXDUMP(NEWTOY(hexdump, "bcCdn#<0os#<0vx[!bcCdox]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HEXEDIT(NEWTOY(hexedit, "<1>1r", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOST(NEWTOY(host, "<1>2avt:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTID(NEWTOY(hostid, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_HOSTNAME(NEWTOY(hostname, ">1bdsfF:[!bdsf]", TOYFLAG_BIN))
+USE_HTTPD(NEWTOY(httpd, ">1v", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_HWCLOCK(NEWTOY(hwclock, ">0(fast)f(rtc):u(utc)l(localtime)t(systz)s(hctosys)r(show)w(systohc)[-ul][!rtsw]", TOYFLAG_SBIN))
+USE_I2CDETECT(NEWTOY(i2cdetect, ">3aF#<0>63lqry[!qr][!Fl]", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CDUMP(NEWTOY(i2cdump, "<2>2fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CGET(NEWTOY(i2cget, "<2>3fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CSET(NEWTOY(i2cset, "<4fy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_I2CTRANSFER(NEWTOY(i2ctransfer, "<2vfy", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_ICONV(NEWTOY(iconv, "cst:f:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ID(NEWTOY(id, ">1"USE_ID_Z("Z")"nGgru[!"USE_ID_Z("Z")"Ggu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IFCONFIG(NEWTOY(ifconfig, "^?aS", TOYFLAG_SBIN))
+USE_INIT(NEWTOY(init, "", TOYFLAG_SBIN))
+USE_INOTIFYD(NEWTOY(inotifyd, "<2", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_INSMOD(NEWTOY(insmod, "<1", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_INSTALL(NEWTOY(install, "<1cdDp(preserve-timestamps)svt:m:o:g:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IONICE(NEWTOY(ionice, "^tc#<0>3=2n#<0>7=5p#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IORENICE(NEWTOY(iorenice, "<1>3", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IOTOP(NEWTOY(iotop, ">0AaKO" "Hk*o*p*u*s#<1=7d%<100=3000m#n#<1bq", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_IP(NEWTOY(ip, NULL, TOYFLAG_SBIN))
+USE_IP(OLDTOY(ipaddr, ip, TOYFLAG_SBIN))
+USE_IPCRM(NEWTOY(ipcrm, "m*M*s*S*q*Q*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IPCS(NEWTOY(ipcs, "acptulsqmi#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_IP(OLDTOY(iplink, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iproute, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iprule, ip, TOYFLAG_SBIN))
+USE_IP(OLDTOY(iptunnel, ip, TOYFLAG_SBIN))
+USE_SH(NEWTOY(jobs, "lnprs", TOYFLAG_NOFORK))
+USE_KILL(NEWTOY(kill, "?ls: ", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_KILLALL(NEWTOY(killall, "?s:ilqvw", TOYFLAG_USR|TOYFLAG_BIN))
+USE_KILLALL5(NEWTOY(killall5, "?o*ls: [!lo][!ls]", TOYFLAG_SBIN))
+USE_KLOGD(NEWTOY(klogd, "c#<1>8n", TOYFLAG_SBIN))
+USE_LAST(NEWTOY(last, "f:W", TOYFLAG_BIN))
+USE_LINK(NEWTOY(link, "<2>2", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LINUX32(NEWTOY(linux32, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_LN(NEWTOY(ln, "<1rt:Tvnfs", TOYFLAG_BIN))
+USE_LOAD_POLICY(NEWTOY(load_policy, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SH(NEWTOY(local, 0, TOYFLAG_NOFORK))
+USE_LOG(NEWTOY(log, "p:t:", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_LOGGER(NEWTOY(logger, "t:p:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGIN(NEWTOY(login, ">1f:ph:", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_LOGNAME(NEWTOY(logname, ">0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOGPATH(NEWTOY(logpath, 0, TOYFLAG_NOHELP|TOYFLAG_USR|TOYFLAG_BIN))
+USE_LOSETUP(NEWTOY(losetup, ">2S(sizelimit)#s(show)ro#j:fdcaD[!afj]", TOYFLAG_SBIN))
+USE_LS(NEWTOY(ls, "(sort):(color):;(full-time)(show-control-chars)\377(block-size)#=1024<1\241(group-directories-first)\376ZgoACFHLNRSUXabcdfhikl@mnpqrstuw#=80<0x1[-Cxm1][-Cxml][-Cxmo][-Cxmg][-cu][-ftS][-HL][-Nqb][-k\377]", TOYFLAG_BIN))
+USE_LSATTR(NEWTOY(lsattr, "ldapvR", TOYFLAG_BIN))
+USE_LSMOD(NEWTOY(lsmod, NULL, TOYFLAG_SBIN))
+USE_LSOF(NEWTOY(lsof, "lp*t", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSPCI(NEWTOY(lspci, "emkn@x@i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_LSUSB(NEWTOY(lsusb, "i:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAKEDEVS(NEWTOY(makedevs, "<1>1d:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MAN(NEWTOY(man, "k:M:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MCOOKIE(NEWTOY(mcookie, "v(verbose)V(version)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MD5SUM(NEWTOY(md5sum, "bc(check)s(status)[!bc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MDEV(NEWTOY(mdev, "s", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MEMEATER(NEWTOY(memeater, "<1>1M", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MICROCOM(NEWTOY(microcom, "<1>1s#=115200X", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MIX(NEWTOY(mix, "c:d:l#r#", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKDIR(NEWTOY(mkdir, "<1"USE_MKDIR_Z("Z:")"vp(parent)(parents)m:", TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKE2FS(NEWTOY(mke2fs, "<1>2g:Fnqm#N#i#b#", TOYFLAG_SBIN))
+USE_MKFIFO(NEWTOY(mkfifo, "<1"USE_MKFIFO_Z("Z:")"m:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKNOD(NEWTOY(mknod, "<2>4m(mode):"USE_MKNOD_Z("Z:"), TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_MKPASSWD(NEWTOY(mkpasswd, ">2S:m:P#=0<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_MKSWAP(NEWTOY(mkswap, "<1>1L:", TOYFLAG_SBIN))
+USE_MKTEMP(NEWTOY(mktemp, ">1(tmpdir);:uqd(directory)p:t", TOYFLAG_BIN))
+USE_MODINFO(NEWTOY(modinfo, "<1b:k:F:0", TOYFLAG_SBIN))
+USE_MODPROBE(NEWTOY(modprobe, "alrqvsDbd*", TOYFLAG_SBIN))
+USE_MORE(NEWTOY(more, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_MOUNT(NEWTOY(mount, "?RO:afnrvwt:o*[-rw]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_MOUNTPOINT(NEWTOY(mountpoint, "<1qdx[-dx]", TOYFLAG_BIN))
+USE_MV(NEWTOY(mv, "<1x(swap)v(verbose)nF(remove-destination)fit:T[-ni]", TOYFLAG_BIN))
+USE_NBD_CLIENT(OLDTOY(nbd-client, nbd_client, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_SERVER(OLDTOY(nbd-server, nbd_server, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NBD_CLIENT(NEWTOY(nbd_client, "<3>3b#<1>4294967295=4096ns", 0))
+USE_NBD_SERVER(NEWTOY(nbd_server, "<1>1r", 0))
+USE_NETCAT(OLDTOY(nc, netcat, TOYFLAG_USR|TOYFLAG_BIN))
+USE_NETCAT(NEWTOY(netcat, "^tElLw#<1W#<1p#<1>65535q#<1s:f:46uUnvz[!tlL][!Lw][!Lu][!46U]", TOYFLAG_BIN))
+USE_NETSTAT(NEWTOY(netstat, "pWrxwutneal", TOYFLAG_BIN))
+USE_NICE(NEWTOY(nice, "^<1n#", TOYFLAG_BIN))
+USE_NL(NEWTOY(nl, "v#=1l#w#<0=6b:n:s:E", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NOHUP(NEWTOY(nohup, "<1^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_NPROC(NEWTOY(nproc, "(all)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_NSENTER(NEWTOY(nsenter, "<1a(all)F(no-fork)t#<1(target)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_OD(NEWTOY(od, "j#vw#<1=16N#xsodcbA:t*", TOYFLAG_USR|TOYFLAG_BIN))
+USE_ONEIT(NEWTOY(oneit, "^<1nc:p3[!pn]", TOYFLAG_SBIN))
+USE_OPENVT(NEWTOY(openvt, "^<1c#<1>63sw", TOYFLAG_BIN|TOYFLAG_NEEDROOT))
+USE_PARTPROBE(NEWTOY(partprobe, "<1", TOYFLAG_SBIN))
+USE_PASSWD(NEWTOY(passwd, ">1a:dlu", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_PASTE(NEWTOY(paste, "d:s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PATCH(NEWTOY(patch, ">2(no-backup-if-mismatch)(dry-run)F#g#fulp#v(verbose)@d:i:Rs(quiet)[!sv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PGREP(NEWTOY(pgrep, "?cld:u*U*t*s*P*g*G*fnovxL:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PIDOF(NEWTOY(pidof, "so:x", TOYFLAG_BIN))
+USE_PING(NEWTOY(ping, "<1>1m#t#<0>255=64c#<0=3s#<0>4064=56i%W#<0=3w#<0qf46I:[-46]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PING(OLDTOY(ping6, ping, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_PIVOT_ROOT(NEWTOY(pivot_root, "<2>2", TOYFLAG_SBIN))
+USE_PKILL(NEWTOY(pkill,    "?Vu*U*t*s*P*g*G*fnovxl:[-no]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PMAP(NEWTOY(pmap, "<1pqx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(OLDTOY(poweroff, reboot, TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_PRINTENV(NEWTOY(printenv, "(null)0", TOYFLAG_BIN))
+USE_PRINTF(NEWTOY(printf, "<1?^", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_ULIMIT(OLDTOY(prlimit, ulimit, TOYFLAG_USR|TOYFLAG_BIN))
+USE_PS(NEWTOY(ps, "k(sort)*P(ppid)*aAdeflMno*O*p(pid)*s*t*Tu*U*g*G*wZ[!ol][+Ae][!oO]", TOYFLAG_BIN))
+USE_PWD(NEWTOY(pwd, ">0LP[-LP]", TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_PWDX(NEWTOY(pwdx, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_PWGEN(NEWTOY(pwgen, ">2r(remove):c(capitalize)n(numerals)y(symbols)s(secure)B(ambiguous)h(help)C1vA(no-capitalize)0(no-numerals)[-cA][-n0][-C1]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READAHEAD(NEWTOY(readahead, NULL, TOYFLAG_BIN))
+USE_READELF(NEWTOY(readelf, "<1(dyn-syms)Aadehlnp:SsWx:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_READLINK(NEWTOY(readlink, "<1vnf(canonicalize)emqz[-mef][-qv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REALPATH(NEWTOY(realpath, "<1(relative-base):R(relative-to):s(no-symlinks)LPemqz[-Ps][-LP][-me]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_REBOOT(NEWTOY(reboot, "d:fn", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_RENICE(NEWTOY(renice, "<1gpun#|", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESET(NEWTOY(reset, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RESTORECON(NEWTOY(restorecon, "<1DFnRrv", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_REV(NEWTOY(rev, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_RFKILL(NEWTOY(rfkill, "<1>2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_RM(NEWTOY(rm, "f(force)iRrv[-fi]", TOYFLAG_BIN))
+USE_RMDIR(NEWTOY(rmdir, "<1(ignore-fail-on-non-empty)p(parents)", TOYFLAG_BIN))
+USE_RMMOD(NEWTOY(rmmod, "<1wf", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_ROUTE(NEWTOY(route, "?neA:", TOYFLAG_SBIN))
+USE_RTCWAKE(NEWTOY(rtcwake, "(list-modes);(auto)a(device)d:(local)l(mode)m:(seconds)s#(time)t#(utc)u(verbose)v[!alu]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_RUNCON(NEWTOY(runcon, "^<2", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SED(NEWTOY(sed, "(help)(version)(tarxform)e*f*i:;nErz(null-data)s[+Er]", TOYFLAG_BIN|TOYFLAG_NOHELP))
+USE_SENDEVENT(NEWTOY(sendevent, "<4>4", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SEQ(NEWTOY(seq, "<1>3?f:s:w[!fw]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(set, 0, TOYFLAG_NOFORK))
+USE_SETENFORCE(NEWTOY(setenforce, "<1>1", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_SETFATTR(NEWTOY(setfattr, "hn:|v:x:|[!xv]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SETSID(NEWTOY(setsid, "^<1wc@d[!dc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(sh, "0^(noediting)(noprofile)(norc)sc:i", TOYFLAG_BIN))
+USE_SHA1SUM(OLDTOY(sha1sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA224SUM(OLDTOY(sha224sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA256SUM(OLDTOY(sha256sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA384SUM(OLDTOY(sha384sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA3SUM(NEWTOY(sha3sum, "bSa#<128>512=224", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHA512SUM(OLDTOY(sha512sum, md5sum, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(shift, ">1", TOYFLAG_NOFORK))
+USE_SHRED(NEWTOY(shred, "<1zxus#<1n#<1o#<0f", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SHUF(NEWTOY(shuf, "zen#<0", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON(NEWTOY(skeleton, "(walrus)(blubber):;(also):h(hlong):; g(glong): f(longf):;e@d*c#b:a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SKELETON_ALIAS(NEWTOY(skeleton_alias, "b#dq", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SLEEP(NEWTOY(sleep, "<1", TOYFLAG_BIN))
+USE_SNTP(NEWTOY(sntp, ">1M :m :Sp:t#<0=1>16asdDqr#<4>17=10[!as]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SORT(NEWTOY(sort, USE_SORT_FLOAT("g")"S:T:m" "o:k*t:" "xVbMCcszdfirun", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(2)))
+USE_SH(NEWTOY(source, "<1", TOYFLAG_NOFORK))
+USE_SPLIT(NEWTOY(split, ">2a#<1=2>9b#<1l#<1n#<1[!bl][!bn][!ln]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STAT(NEWTOY(stat, "<1c:(format)fLt", TOYFLAG_BIN))
+USE_STRACE(NEWTOY(strace, "^p#s#v", TOYFLAG_USR|TOYFLAG_SBIN))
+USE_STRINGS(NEWTOY(strings, "t:an#=4<1fo", TOYFLAG_USR|TOYFLAG_BIN))
+USE_STTY(NEWTOY(stty, "?aF:g[!ag]", TOYFLAG_BIN))
+USE_SU(NEWTOY(su, "^lmpu:g:c:s:[!lmp]", TOYFLAG_BIN|TOYFLAG_ROOTONLY))
+USE_SULOGIN(NEWTOY(sulogin, "t#<0=0", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPOFF(NEWTOY(swapoff, "<1>1av", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWAPON(NEWTOY(swapon, "<1>1p#<0>32767d", TOYFLAG_SBIN|TOYFLAG_NEEDROOT))
+USE_SWITCH_ROOT(NEWTOY(switch_root, "<2c:h", TOYFLAG_SBIN))
+USE_SYNC(NEWTOY(sync, NULL, TOYFLAG_BIN))
+USE_SYSCTL(NEWTOY(sysctl, "^neNqwpaA[!ap][!aq][!aw][+aA]", TOYFLAG_SBIN))
+USE_SYSLOGD(NEWTOY(syslogd,">0l#<1>8=8R:b#<0>99=1s#<0=200m#<0>71582787=20O:p:f:a:nSKLD", TOYFLAG_SBIN|TOYFLAG_STAYROOT))
+USE_TAC(NEWTOY(tac, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_TAIL(NEWTOY(tail, "?fFs:c(bytes)-n(lines)-[-cn][-fF]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TAR(NEWTOY(tar, "&(one-file-system)(no-ignore-case)(ignore-case)(no-anchored)(anchored)(no-wildcards)(wildcards)(no-wildcards-match-slash)(wildcards-match-slash)(show-transformed-names)(selinux)(restrict)(full-time)(no-recursion)(null)(numeric-owner)(no-same-permissions)(overwrite)(exclude)*(sort);:(mode):(mtime):(group):(owner):(to-command):~(strip-components)(strip)#~(transform)(xform)*o(no-same-owner)p(same-permissions)k(keep-old)c(create)|h(dereference)x(extract)|t(list)|v(verbose)J(xz)j(bzip2)z(gzip)S(sparse)O(to-stdout)P(absolute-names)m(touch)X(exclude-from)*T(files-from)*I(use-compress-program):C(directory):f(file):as[!txc][!jzJa]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TASKSET(NEWTOY(taskset, "<1^pa", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TCPSVD(NEWTOY(tcpsvd, "^<3c#=30<1b#=20<0C:u:l:hEv", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEE(NEWTOY(tee, "ia", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TELNET(NEWTOY(telnet, "<1>2", TOYFLAG_BIN))
+USE_TELNETD(NEWTOY(telnetd, "w#<0b:p#<0>65535=23f:l:FSKi[!wi]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TEST(NEWTOY(test, 0, TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TFTP(NEWTOY(tftp, "<1b#<8>65464r:l:g|p|[!gp]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TFTPD(NEWTOY(tftpd, "rcu:l", TOYFLAG_BIN))
+USE_TIME(NEWTOY(time, "<1^pv[-pv]", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_MAYFORK))
+USE_TIMEOUT(NEWTOY(timeout, "<2^(foreground)(preserve-status)vk:s(signal):i", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_ARGFAIL(125)))
+USE_TOP(NEWTOY(top, ">0O*h" "Hk*o*p*u*s#<1d%<100=3000m#n#<1bq[!oO]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TOUCH(NEWTOY(touch, "<1acd:fmr:t:h[!dtr]", TOYFLAG_BIN))
+USE_SH(OLDTOY(toysh, sh, TOYFLAG_BIN))
+USE_TR(NEWTOY(tr, "^<1>2Ccstd[+cC]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(NEWTOY(traceroute, "<1>2i:f#<1>255=1z#<0>86400=0g*w#<0>86400=5t#<0>255=0s:q#<1>255=3p#<1>65535=33434m#<1>255=30rvndlIUF64", TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRACEROUTE(OLDTOY(traceroute6,traceroute, TOYFLAG_STAYROOT|TOYFLAG_USR|TOYFLAG_BIN))
+USE_TRUE(NEWTOY(true, NULL, TOYFLAG_BIN|TOYFLAG_NOHELP|TOYFLAG_MAYFORK))
+USE_TRUNCATE(NEWTOY(truncate, "<1s:|c", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TS(NEWTOY(ts, "ims", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_TSORT(NEWTOY(tsort, ">1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TTY(NEWTOY(tty, "s", TOYFLAG_USR|TOYFLAG_BIN))
+USE_TUNCTL(NEWTOY(tunctl, "<1>1t|d|u:T[!td]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UCLAMPSET(NEWTOY(uclampset, "p#am#<-1>1024M#<-1>1024R", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_TCPSVD(OLDTOY(udpsvd, tcpsvd, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ULIMIT(NEWTOY(ulimit, ">1P#<1SHavutsrRqpnmlifedc[-SH][!apvutsrRqnmlifedc]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UMOUNT(NEWTOY(umount, "cndDflrat*v[!na]", TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UNAME(NEWTOY(uname, "paomvrns", TOYFLAG_BIN))
+USE_UNICODE(NEWTOY(unicode, "<1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIQ(NEWTOY(uniq, "f#s#w#zicdu", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UNIX2DOS(NEWTOY(unix2dos, 0, TOYFLAG_BIN))
+USE_UNLINK(NEWTOY(unlink, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(unset, "fvn[!fv]", TOYFLAG_NOFORK))
+USE_UNSHARE(NEWTOY(unshare, "<1^a(all)f(fork)r(map-root-user)C(cgroup):; i(ipc):; m(mount):; n(net):; p(pid):; u(uts):; U(user):; ", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_STAYROOT))
+USE_UPTIME(NEWTOY(uptime, ">0ps", TOYFLAG_USR|TOYFLAG_BIN))
+USE_USERADD(NEWTOY(useradd, "<1>2u#<0G:s:g:h:SDH", TOYFLAG_NEEDROOT|TOYFLAG_UMASK|TOYFLAG_SBIN))
+USE_USERDEL(NEWTOY(userdel, "<1>1r", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_USLEEP(NEWTOY(usleep, "<1>1", TOYFLAG_BIN))
+USE_UUDECODE(NEWTOY(uudecode, ">1o:", TOYFLAG_USR|TOYFLAG_BIN|TOYFLAG_UMASK))
+USE_UUENCODE(NEWTOY(uuencode, "<1>2m", TOYFLAG_USR|TOYFLAG_BIN))
+USE_UUIDGEN(NEWTOY(uuidgen, ">0r(random)", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VCONFIG(NEWTOY(vconfig, "<2>4", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_VI(NEWTOY(vi, ">1s:", TOYFLAG_USR|TOYFLAG_BIN))
+USE_VMSTAT(NEWTOY(vmstat, ">2n", TOYFLAG_BIN|TOYFLAG_LINEBUF))
+USE_W(NEWTOY(w, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_SH(NEWTOY(wait, "n", TOYFLAG_NOFORK))
+USE_WATCH(NEWTOY(watch, "^<1n%<100=2000tebx", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WATCHDOG(NEWTOY(watchdog, "<1>1Ft#=4<1T#=60<1", TOYFLAG_NEEDROOT|TOYFLAG_SBIN))
+USE_WC(NEWTOY(wc, "Lcmwl", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WGET(NEWTOY(wget, "<1>1(max-redirect)#<0=20d(debug)O(output-document):p(post-data):", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHICH(NEWTOY(which, "<1a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHO(NEWTOY(who, "a", TOYFLAG_USR|TOYFLAG_BIN))
+USE_WHOAMI(OLDTOY(whoami, logname, TOYFLAG_USR|TOYFLAG_BIN))
+USE_XARGS(NEWTOY(xargs, "^E:P#<0(null)=1optr(no-run-if-empty)n#<1(max-args)s#0[!0E]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XXD(NEWTOY(xxd, ">1c#<0>256l#o#g#<0=2eiprs#[!rs][!re]", TOYFLAG_USR|TOYFLAG_BIN))
+USE_XZCAT(NEWTOY(xzcat, NULL, TOYFLAG_USR|TOYFLAG_BIN))
+USE_YES(NEWTOY(yes, 0, TOYFLAG_USR|TOYFLAG_BIN))
+USE_ZCAT(NEWTOY(zcat,     "cdfkt123456789[-123456789]", TOYFLAG_USR|TOYFLAG_BIN))
diff --git a/android/mac/generated/tags.h b/android/mac/generated/tags.h
new file mode 100644
index 0000000..463e8d2
--- /dev/null
+++ b/android/mac/generated/tags.h
@@ -0,0 +1,140 @@
+#define CP_mode                                     0
+#define _CP_mode                                    (1<<0)
+#define CP_ownership                                1
+#define _CP_ownership                               (1<<1)
+#define CP_timestamps                               2
+#define _CP_timestamps                              (1<<2)
+#define CP_context                                  3
+#define _CP_context                                 (1<<3)
+#define CP_xattr                                    4
+#define _CP_xattr                                   (1<<4)
+#define DD_conv_fsync                                    0
+#define _DD_conv_fsync                                   (1<<0)
+#define DD_conv_noerror                                  1
+#define _DD_conv_noerror                                 (1<<1)
+#define DD_conv_notrunc                                  2
+#define _DD_conv_notrunc                                 (1<<2)
+#define DD_conv_sync                                     3
+#define _DD_conv_sync                                    (1<<3)
+#define DD_iflag_count_bytes                              0
+#define _DD_iflag_count_bytes                             (1<<0)
+#define DD_iflag_skip_bytes                               1
+#define _DD_iflag_skip_bytes                              (1<<1)
+#define DD_oflag_seek_bytes                               0
+#define _DD_oflag_seek_bytes                              (1<<0)
+#define PS_PID                                      0
+#define _PS_PID                                     (1<<0)
+#define PS_PPID                                     1
+#define _PS_PPID                                    (1<<1)
+#define PS_PRI                                      2
+#define _PS_PRI                                     (1<<2)
+#define PS_NI                                       3
+#define _PS_NI                                      (1<<3)
+#define PS_ADDR                                     4
+#define _PS_ADDR                                    (1<<4)
+#define PS_SZ                                       5
+#define _PS_SZ                                      (1<<5)
+#define PS_RSS                                      6
+#define _PS_RSS                                     (1<<6)
+#define PS_PGID                                     7
+#define _PS_PGID                                    (1<<7)
+#define PS_VSZ                                      8
+#define _PS_VSZ                                     (1<<8)
+#define PS_MAJFL                                    9
+#define _PS_MAJFL                                   (1<<9)
+#define PS_MINFL                                    10
+#define _PS_MINFL                                   (1<<10)
+#define PS_PR                                       11
+#define _PS_PR                                      (1<<11)
+#define PS_PSR                                      12
+#define _PS_PSR                                     (1<<12)
+#define PS_RTPRIO                                   13
+#define _PS_RTPRIO                                  (1<<13)
+#define PS_SCH                                      14
+#define _PS_SCH                                     (1<<14)
+#define PS_CPU                                      15
+#define _PS_CPU                                     (1<<15)
+#define PS_TID                                      16
+#define _PS_TID                                     (1<<16)
+#define PS_TCNT                                     17
+#define _PS_TCNT                                    (1<<17)
+#define PS_BIT                                      18
+#define _PS_BIT                                     (1<<18)
+#define PS_TTY                                      19
+#define _PS_TTY                                     (1<<19)
+#define PS_WCHAN                                    20
+#define _PS_WCHAN                                   (1<<20)
+#define PS_LABEL                                    21
+#define _PS_LABEL                                   (1<<21)
+#define PS_COMM                                     22
+#define _PS_COMM                                    (1<<22)
+#define PS_NAME                                     23
+#define _PS_NAME                                    (1<<23)
+#define PS_COMMAND                                  24
+#define _PS_COMMAND                                 (1<<24)
+#define PS_CMDLINE                                  25
+#define _PS_CMDLINE                                 (1<<25)
+#define PS_ARGS                                     26
+#define _PS_ARGS                                    (1<<26)
+#define PS_CMD                                      27
+#define _PS_CMD                                     (1<<27)
+#define PS_UID                                      28
+#define _PS_UID                                     (1<<28)
+#define PS_USER                                     29
+#define _PS_USER                                    (1<<29)
+#define PS_RUID                                     30
+#define _PS_RUID                                    (1<<30)
+#define PS_RUSER                                    31
+#define _PS_RUSER                                   (1<<31)
+#define PS_GID                                      32
+#define _PS_GID                                     (1LL<<32)
+#define PS_GROUP                                    33
+#define _PS_GROUP                                   (1LL<<33)
+#define PS_RGID                                     34
+#define _PS_RGID                                    (1LL<<34)
+#define PS_RGROUP                                   35
+#define _PS_RGROUP                                  (1LL<<35)
+#define PS_TIME                                     36
+#define _PS_TIME                                    (1LL<<36)
+#define PS_ELAPSED                                  37
+#define _PS_ELAPSED                                 (1LL<<37)
+#define PS_TIME_                                    38
+#define _PS_TIME_                                   (1LL<<38)
+#define PS_C                                        39
+#define _PS_C                                       (1LL<<39)
+#define PS__VSZ                                     40
+#define _PS__VSZ                                    (1LL<<40)
+#define PS__MEM                                     41
+#define _PS__MEM                                    (1LL<<41)
+#define PS__CPU                                     42
+#define _PS__CPU                                    (1LL<<42)
+#define PS_VIRT                                     43
+#define _PS_VIRT                                    (1LL<<43)
+#define PS_RES                                      44
+#define _PS_RES                                     (1LL<<44)
+#define PS_SHR                                      45
+#define _PS_SHR                                     (1LL<<45)
+#define PS_READ                                     46
+#define _PS_READ                                    (1LL<<46)
+#define PS_WRITE                                    47
+#define _PS_WRITE                                   (1LL<<47)
+#define PS_IO                                       48
+#define _PS_IO                                      (1LL<<48)
+#define PS_DREAD                                    49
+#define _PS_DREAD                                   (1LL<<49)
+#define PS_DWRITE                                   50
+#define _PS_DWRITE                                  (1LL<<50)
+#define PS_SWAP                                     51
+#define _PS_SWAP                                    (1LL<<51)
+#define PS_DIO                                      52
+#define _PS_DIO                                     (1LL<<52)
+#define PS_STIME                                    53
+#define _PS_STIME                                   (1LL<<53)
+#define PS_F                                        54
+#define _PS_F                                       (1LL<<54)
+#define PS_S                                        55
+#define _PS_S                                       (1LL<<55)
+#define PS_STAT                                     56
+#define _PS_STAT                                    (1LL<<56)
+#define PS_PCY                                      57
+#define _PS_PCY                                     (1LL<<57)
diff --git a/config-device b/config-device
new file mode 100644
index 0000000..cae98bf
--- /dev/null
+++ b/config-device
@@ -0,0 +1,353 @@
+#
+# Hand-maintained .config file.
+#
+
+#
+# General settings.
+#
+
+CONFIG_TOYBOX=y
+# CONFIG_TOYBOX_DEBUG is not set
+CONFIG_TOYBOX_FLOAT=y
+CONFIG_TOYBOX_FORK=y
+# CONFIG_TOYBOX_FREE is not set
+CONFIG_TOYBOX_HELP_DASHDASH=y
+CONFIG_TOYBOX_HELP=y
+CONFIG_TOYBOX_LIBCRYPTO=y
+CONFIG_TOYBOX_LIBZ=y
+# CONFIG_TOYBOX_LSM_NONE is not set
+CONFIG_TOYBOX_NORECURSE=y
+CONFIG_TOYBOX_ON_ANDROID=y
+CONFIG_TOYBOX_SELINUX=y
+# CONFIG_TOYBOX_SMACK is not set
+# CONFIG_TOYBOX_SUID is not set
+CONFIG_TOYBOX_UID_SYS=100
+CONFIG_TOYBOX_UID_USR=500
+# CONFIG_TOYBOX_ZHELP is not set
+
+#
+# Selected toys.
+#
+
+CONFIG_ACPI=y
+# CONFIG_ARCH is not set
+# CONFIG_ARPING is not set
+# CONFIG_ARP is not set
+# CONFIG_ASCII is not set
+# CONFIG_BASE32 is not set
+CONFIG_BASE64=y
+CONFIG_BASENAME=y
+# CONFIG_BC is not set
+CONFIG_BLKDISCARD=y
+CONFIG_BLKID=y
+CONFIG_BLOCKDEV=y
+# CONFIG_BOOTCHARTD is not set
+CONFIG_BRCTL=y
+# CONFIG_BUNZIP2 is not set
+# CONFIG_BZCAT is not set
+CONFIG_CAL=y
+CONFIG_CAT=y
+# CONFIG_CD is not set
+CONFIG_CHATTR=y
+CONFIG_CHCON=y
+CONFIG_CHGRP=y
+CONFIG_CHMOD=y
+CONFIG_CHOWN=y
+CONFIG_CHROOT=y
+CONFIG_CHRT=y
+# CONFIG_CHSH is not set
+# CONFIG_CHVT is not set
+CONFIG_CKSUM=y
+CONFIG_CLEAR=y
+CONFIG_CMP=y
+CONFIG_COMM=y
+# CONFIG_COUNT is not set
+CONFIG_CPIO=y
+CONFIG_CP=y
+# CONFIG_CRC32 is not set
+# CONFIG_CROND is not set
+# CONFIG_CRONTAB is not set
+# CONFIG_CSPLIT is not set
+CONFIG_CUT=y
+CONFIG_DATE=y
+CONFIG_DD=y
+# CONFIG_DEALLOCVT is not set
+# CONFIG_DEBUG_DHCP is not set
+# CONFIG_DEMO_MANY_OPTIONS is not set
+# CONFIG_DEMO_NUMBER is not set
+# CONFIG_DEMO_SCANKEY is not set
+# CONFIG_DEMO_UTF8TOWC is not set
+CONFIG_DEVMEM=y
+CONFIG_DF=y
+# CONFIG_DHCP6 is not set
+# CONFIG_DHCPD is not set
+# CONFIG_DHCP is not set
+CONFIG_DIFF=y
+CONFIG_DIRNAME=y
+CONFIG_DMESG=y
+# CONFIG_DNSDOMAINNAME is not set
+CONFIG_DOS2UNIX=y
+# CONFIG_DUMPLEASES is not set
+CONFIG_DU=y
+CONFIG_ECHO=y
+CONFIG_EGREP=y
+# CONFIG_EJECT is not set
+CONFIG_ENV=y
+# CONFIG_EXIT is not set
+CONFIG_EXPAND=y
+CONFIG_EXPR=y
+# CONFIG_FACTOR is not set
+CONFIG_FALLOCATE=y
+CONFIG_FALSE=y
+# CONFIG_FDISK is not set
+CONFIG_FGREP=y
+CONFIG_FILE=y
+CONFIG_FIND=y
+CONFIG_FLOCK=y
+CONFIG_FMT=y
+# CONFIG_FOLD is not set
+CONFIG_FREERAMDISK=y
+CONFIG_FREE=y
+# CONFIG_FSCK is not set
+CONFIG_FSFREEZE=y
+# CONFIG_FSTYPE is not set
+CONFIG_FSYNC=y
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+CONFIG_GETCONF=y
+CONFIG_GETENFORCE=y
+CONFIG_GETFATTR=y
+CONFIG_GETOPT=y
+# CONFIG_GETTY is not set
+# CONFIG_GITCHECKOUT is not set
+# CONFIG_GITCLONE is not set
+# CONFIG_GITCOMPAT is not set
+# CONFIG_GITFETCH is not set
+# CONFIG_GITINIT is not set
+# CONFIG_GITREMOTE is not set
+CONFIG_GPIODETECT=y
+CONFIG_GPIOFIND=y
+CONFIG_GPIOGET=y
+CONFIG_GPIOINFO=y
+CONFIG_GPIOSET=y
+CONFIG_GREP=y
+# CONFIG_GROUPADD is not set
+# CONFIG_GROUPDEL is not set
+CONFIG_GROUPS=y
+CONFIG_GUNZIP=y
+CONFIG_GZIP=y
+CONFIG_HEAD=y
+# CONFIG_HELLO is not set
+CONFIG_HELP=y
+# CONFIG_HEXDUMP is not set
+# CONFIG_HEXEDIT is not set
+# CONFIG_HD is not set
+# CONFIG_HOSTID is not set
+# CONFIG_HOST is not set
+CONFIG_HOSTNAME=y
+# CONFIG_HTTPD is not set
+CONFIG_HWCLOCK=y
+CONFIG_I2CDETECT=y
+CONFIG_I2CDUMP=y
+CONFIG_I2CGET=y
+CONFIG_I2CSET=y
+CONFIG_I2CTRANSFER=y
+CONFIG_ICONV=y
+CONFIG_ID=y
+CONFIG_ID_Z=y
+CONFIG_IFCONFIG=y
+# CONFIG_INIT is not set
+CONFIG_INOTIFYD=y
+CONFIG_INSMOD=y
+CONFIG_INSTALL=y
+CONFIG_IONICE=y
+CONFIG_IORENICE=y
+CONFIG_IOTOP=y
+# CONFIG_IPCRM is not set
+# CONFIG_IPCS is not set
+# CONFIG_IP is not set
+# CONFIG_KILLALL5 is not set
+CONFIG_KILLALL=y
+CONFIG_KILL=y
+# CONFIG_KLOGD is not set
+# CONFIG_KLOGD_SOURCE_RING_BUFFER is not set
+# CONFIG_LAST is not set
+# CONFIG_LINK is not set
+# CONFIG_LINUX32 is not set
+CONFIG_LN=y
+CONFIG_LOAD_POLICY=y
+CONFIG_LOGGER=y
+# CONFIG_LOGIN is not set
+CONFIG_LOGNAME=y
+# CONFIG_LOGPATH is not set
+CONFIG_LOG=y
+CONFIG_LOSETUP=y
+CONFIG_LSATTR=y
+CONFIG_LSMOD=y
+CONFIG_LSOF=y
+CONFIG_LSPCI=y
+CONFIG_LSUSB=y
+CONFIG_LS=y
+CONFIG_MAKEDEVS=y
+# CONFIG_MAN is not set
+# CONFIG_MCOOKIE is not set
+CONFIG_MD5SUM=y
+# CONFIG_MDEV_CONF is not set
+# CONFIG_MDEV is not set
+CONFIG_MEMEATER=y
+CONFIG_MICROCOM=y
+# CONFIG_MIX is not set
+CONFIG_MKDIR=y
+CONFIG_MKDIR_Z=y
+# CONFIG_MKE2FS_EXTENDED is not set
+# CONFIG_MKE2FS_GEN is not set
+# CONFIG_MKE2FS is not set
+# CONFIG_MKE2FS_JOURNAL is not set
+# CONFIG_MKE2FS_LABEL is not set
+CONFIG_MKFIFO=y
+CONFIG_MKFIFO_Z=y
+CONFIG_MKNOD=y
+CONFIG_MKNOD_Z=y
+# CONFIG_MKPASSWD is not set
+CONFIG_MKSWAP=y
+CONFIG_MKTEMP=y
+CONFIG_MODINFO=y
+CONFIG_MODPROBE=y
+CONFIG_MORE=y
+CONFIG_MOUNTPOINT=y
+CONFIG_MOUNT=y
+CONFIG_MV=y
+CONFIG_NBD_CLIENT=y
+# CONFIG_NBD_SERVER is not set
+CONFIG_NETCAT=y
+CONFIG_NETSTAT=y
+CONFIG_NICE=y
+CONFIG_NL=y
+CONFIG_NOHUP=y
+CONFIG_NPROC=y
+CONFIG_NSENTER=y
+CONFIG_OD=y
+# CONFIG_ONEIT is not set
+# CONFIG_OPENVT is not set
+CONFIG_PARTPROBE=y
+# CONFIG_PASSWD is not set
+CONFIG_PASTE=y
+CONFIG_PATCH=y
+CONFIG_PGREP=y
+CONFIG_PIDOF=y
+CONFIG_PING=y
+CONFIG_PIVOT_ROOT=y
+CONFIG_PKILL=y
+CONFIG_PMAP=y
+CONFIG_PRINTENV=y
+CONFIG_PRINTF=y
+CONFIG_PS=y
+CONFIG_PWDX=y
+CONFIG_PWD=y
+# CONFIG_PWGEN is not set
+# CONFIG_READAHEAD is not set
+CONFIG_READELF=y
+CONFIG_READLINK=y
+CONFIG_REALPATH=y
+# CONFIG_REBOOT is not set
+CONFIG_RENICE=y
+# CONFIG_RESET is not set
+CONFIG_RESTORECON=y
+CONFIG_REV=y
+CONFIG_RFKILL=y
+CONFIG_RMDIR=y
+CONFIG_RMMOD=y
+CONFIG_RM=y
+# CONFIG_ROUTE is not set
+CONFIG_RTCWAKE=y
+CONFIG_RUNCON=y
+CONFIG_SED=y
+CONFIG_SENDEVENT=y
+CONFIG_SEQ=y
+CONFIG_SETENFORCE=y
+CONFIG_SETFATTR=y
+CONFIG_SETSID=y
+CONFIG_SHA1SUM=y
+CONFIG_SHA224SUM=y
+CONFIG_SHA256SUM=y
+# CONFIG_SHA3SUM is not set
+CONFIG_SHA384SUM=y
+CONFIG_SHA512SUM=y
+# CONFIG_SH is not set
+# CONFIG_SHRED is not set
+# CONFIG_SHUF is not set
+# CONFIG_SKELETON_ALIAS is not set
+# CONFIG_SKELETON is not set
+CONFIG_SLEEP=y
+# CONFIG_SNTP is not set
+CONFIG_SORT_FLOAT=y
+CONFIG_SORT=y
+CONFIG_SPLIT=y
+CONFIG_STAT=y
+# CONFIG_STRACE is not set
+CONFIG_STRINGS=y
+CONFIG_STTY=y
+# CONFIG_SU is not set
+# CONFIG_SULOGIN is not set
+CONFIG_SWAPOFF=y
+CONFIG_SWAPON=y
+# CONFIG_SWITCH_ROOT is not set
+CONFIG_SYNC=y
+CONFIG_SYSCTL=y
+# CONFIG_SYSLOGD is not set
+CONFIG_TAC=y
+CONFIG_TAIL=y
+CONFIG_TAR=y
+CONFIG_TASKSET=y
+# CONFIG_TCPSVD is not set
+CONFIG_TEE=y
+# CONFIG_TELNETD is not set
+# CONFIG_TELNET is not set
+CONFIG_TEST=y
+CONFIG_TEST_GLUE=y
+# CONFIG_TFTPD is not set
+# CONFIG_TFTP is not set
+CONFIG_TIMEOUT=y
+CONFIG_TIME=y
+CONFIG_TOP=y
+CONFIG_TOUCH=y
+CONFIG_TRACEROUTE=y
+CONFIG_TRUE=y
+CONFIG_TRUNCATE=y
+CONFIG_TR=y
+# CONFIG_TS is not set
+# CONFIG_TSORT is not set
+CONFIG_TTY=y
+CONFIG_TUNCTL=y
+CONFIG_UCLAMPSET=y
+CONFIG_ULIMIT=y
+CONFIG_UMOUNT=y
+CONFIG_UNAME=y
+# CONFIG_UNICODE is not set
+CONFIG_UNIQ=y
+CONFIG_UNIX2DOS=y
+CONFIG_UNLINK=y
+CONFIG_UNSHARE=y
+CONFIG_UPTIME=y
+# CONFIG_USERADD is not set
+# CONFIG_USERDEL is not set
+CONFIG_USLEEP=y
+CONFIG_UUDECODE=y
+CONFIG_UUENCODE=y
+CONFIG_UUIDGEN=y
+CONFIG_VCONFIG=y
+CONFIG_VI=y
+CONFIG_VMSTAT=y
+CONFIG_WATCH=y
+# CONFIG_WATCHDOG is not set
+CONFIG_WC=y
+# CONFIG_WGET is not set
+CONFIG_WHICH=y
+CONFIG_WHOAMI=y
+# CONFIG_WHO is not set
+# CONFIG_W is not set
+CONFIG_XARGS=y
+CONFIG_XXD=y
+# CONFIG_XZCAT is not set
+CONFIG_YES=y
+CONFIG_ZCAT=y
diff --git a/config-linux b/config-linux
new file mode 100644
index 0000000..59b5745
--- /dev/null
+++ b/config-linux
@@ -0,0 +1,354 @@
+#
+# Hand-maintained .config file.
+#
+
+#
+# General settings.
+#
+
+CONFIG_TOYBOX=y
+# CONFIG_TOYBOX_DEBUG is not set
+CONFIG_TOYBOX_FLOAT=y
+CONFIG_TOYBOX_FORK=y
+# CONFIG_TOYBOX_FREE is not set
+CONFIG_TOYBOX_HELP_DASHDASH=y
+CONFIG_TOYBOX_HELP=y
+CONFIG_TOYBOX_LIBCRYPTO=y
+CONFIG_TOYBOX_LIBZ=y
+CONFIG_TOYBOX_LSM_NONE=y
+CONFIG_TOYBOX_NORECURSE=y
+# CONFIG_TOYBOX_ON_ANDROID is not set
+# CONFIG_TOYBOX_SELINUX is not set
+# CONFIG_TOYBOX_SMACK is not set
+# CONFIG_TOYBOX_SUID is not set
+CONFIG_TOYBOX_UID_SYS=100
+CONFIG_TOYBOX_UID_USR=500
+# CONFIG_TOYBOX_ZHELP is not set
+
+#
+# Selected toys.
+#
+
+# CONFIG_ACPI is not set
+# CONFIG_ARCH is not set
+# CONFIG_ARPING is not set
+# CONFIG_ARP is not set
+# CONFIG_ASCII is not set
+# CONFIG_BASE32 is not set
+# CONFIG_BASE64 is not set
+CONFIG_BASENAME=y
+# CONFIG_BC is not set
+# CONFIG_BLKDISCARD is not set
+# CONFIG_BLKID is not set
+# CONFIG_BLOCKDEV is not set
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_BRCTL is not set
+# CONFIG_BUNZIP2 is not set
+# CONFIG_BZCAT is not set
+# CONFIG_CAL is not set
+CONFIG_CAT=y
+# CONFIG_CD is not set
+# CONFIG_CHATTR is not set
+# CONFIG_CHCON is not set
+# CONFIG_CHGRP is not set
+CONFIG_CHMOD=y
+# CONFIG_CHOWN is not set
+# CONFIG_CHROOT is not set
+# CONFIG_CHRT is not set
+# CONFIG_CHSH is not set
+# CONFIG_CHVT is not set
+# CONFIG_CKSUM is not set
+# CONFIG_CLEAR is not set
+CONFIG_CMP=y
+CONFIG_COMM=y
+# CONFIG_COUNT is not set
+CONFIG_CPIO=y
+CONFIG_CP=y
+# CONFIG_CRC32 is not set
+# CONFIG_CROND is not set
+# CONFIG_CRONTAB is not set
+# CONFIG_CSPLIT is not set
+CONFIG_CUT=y
+CONFIG_DATE=y
+CONFIG_DD=y
+# CONFIG_DEALLOCVT is not set
+# CONFIG_DEBUG_DHCP is not set
+# CONFIG_DEMO_MANY_OPTIONS is not set
+# CONFIG_DEMO_NUMBER is not set
+# CONFIG_DEMO_SCANKEY is not set
+# CONFIG_DEMO_UTF8TOWC is not set
+# CONFIG_DEVMEM is not set
+# CONFIG_DF is not set
+# CONFIG_DHCP6 is not set
+# CONFIG_DHCPD is not set
+# CONFIG_DHCP is not set
+CONFIG_DIFF=y
+CONFIG_DIRNAME=y
+# CONFIG_DMESG is not set
+# CONFIG_DNSDOMAINNAME is not set
+CONFIG_DOS2UNIX=y
+# CONFIG_DUMPLEASES is not set
+CONFIG_DU=y
+CONFIG_ECHO=y
+CONFIG_EGREP=y
+# CONFIG_EJECT is not set
+CONFIG_ENV=y
+# CONFIG_EXIT is not set
+# CONFIG_EXPAND is not set
+CONFIG_EXPR=y
+# CONFIG_FACTOR is not set
+# CONFIG_FALLOCATE is not set
+# CONFIG_FALSE is not set
+# CONFIG_FDISK is not set
+CONFIG_FGREP=y
+CONFIG_FILE=y
+CONFIG_FIND=y
+CONFIG_FLOCK=y
+# CONFIG_FMT is not set
+# CONFIG_FOLD is not set
+# CONFIG_FREE is not set
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK is not set
+# CONFIG_FSFREEZE is not set
+# CONFIG_FSTYPE is not set
+# CONFIG_FSYNC is not set
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+CONFIG_GETCONF=y
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETFATTR is not set
+CONFIG_GETOPT=y
+# CONFIG_GETTY is not set
+# CONFIG_GITCHECKOUT is not set
+# CONFIG_GITCLONE is not set
+# CONFIG_GITCOMPAT is not set
+# CONFIG_GITFETCH is not set
+# CONFIG_GITINIT is not set
+# CONFIG_GITREMOTE is not set
+# CONFIG_GPIODETECT is not set
+# CONFIG_GPIOFIND is not set
+# CONFIG_GPIOGET is not set
+# CONFIG_GPIOINFO is not set
+# CONFIG_GPIOSET is not set
+CONFIG_GREP=y
+# CONFIG_GROUPADD is not set
+# CONFIG_GROUPDEL is not set
+# CONFIG_GROUPS is not set
+# CONFIG_GUNZIP is not set
+CONFIG_GZIP=y
+CONFIG_HEAD=y
+# CONFIG_HELLO is not set
+# CONFIG_HELP is not set
+# CONFIG_HEXDUMP is not set
+# CONFIG_HEXEDIT is not set
+# CONFIG_HD is not set
+# CONFIG_HOSTID is not set
+# CONFIG_HOST is not set
+CONFIG_HOSTNAME=y
+# CONFIG_HTTPD is not set
+# CONFIG_HWCLOCK is not set
+# CONFIG_I2CDETECT is not set
+# CONFIG_I2CDUMP is not set
+# CONFIG_I2CGET is not set
+# CONFIG_I2CSET is not set
+# CONFIG_I2CTRANSFER is not set
+# CONFIG_ICONV is not set
+CONFIG_ID=y
+# CONFIG_ID_Z is not set
+# CONFIG_IFCONFIG is not set
+# CONFIG_INIT is not set
+# CONFIG_INOTIFYD is not set
+# CONFIG_INSMOD is not set
+CONFIG_INSTALL=y
+# CONFIG_IONICE is not set
+# CONFIG_IORENICE is not set
+# CONFIG_IOTOP is not set
+# CONFIG_IPCRM is not set
+# CONFIG_IPCS is not set
+# CONFIG_IP is not set
+# CONFIG_KILLALL5 is not set
+# CONFIG_KILLALL is not set
+# CONFIG_KILL is not set
+# CONFIG_KLOGD is not set
+# CONFIG_KLOGD_SOURCE_RING_BUFFER is not set
+# CONFIG_LAST is not set
+# CONFIG_LINK is not set
+# CONFIG_LINUX32 is not set
+CONFIG_LN=y
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_LOGGER is not set
+# CONFIG_LOGIN is not set
+# CONFIG_LOG is not set
+# CONFIG_LOGNAME is not set
+# CONFIG_LOGPATH is not set
+# CONFIG_LOSETUP is not set
+# CONFIG_LSATTR is not set
+# CONFIG_LSMOD is not set
+# CONFIG_LSOF is not set
+# CONFIG_LSPCI is not set
+# CONFIG_LSUSB is not set
+CONFIG_LS=y
+# CONFIG_MAKEDEVS is not set
+# CONFIG_MAN is not set
+# CONFIG_MCOOKIE is not set
+CONFIG_MD5SUM=y
+# CONFIG_MDEV_CONF is not set
+# CONFIG_MDEV is not set
+# CONFIG_MEMEATER is not set
+CONFIG_MICROCOM=y
+# CONFIG_MIX is not set
+CONFIG_MKDIR=y
+# CONFIG_MKDIR_Z is not set
+# CONFIG_MKE2FS_EXTENDED is not set
+# CONFIG_MKE2FS_GEN is not set
+# CONFIG_MKE2FS is not set
+# CONFIG_MKE2FS_JOURNAL is not set
+# CONFIG_MKE2FS_LABEL is not set
+# CONFIG_MKFIFO is not set
+# CONFIG_MKFIFO_Z is not set
+# CONFIG_MKNOD is not set
+# CONFIG_MKNOD_Z is not set
+# CONFIG_MKPASSWD is not set
+# CONFIG_MKSWAP is not set
+CONFIG_MKTEMP=y
+# CONFIG_MODINFO is not set
+# CONFIG_MODPROBE is not set
+# CONFIG_MORE is not set
+# CONFIG_MOUNT is not set
+# CONFIG_MOUNTPOINT is not set
+CONFIG_MV=y
+# CONFIG_NBD_CLIENT is not set
+# CONFIG_NBD_SERVER is not set
+# CONFIG_NETCAT is not set
+# CONFIG_NETSTAT is not set
+# CONFIG_NICE is not set
+CONFIG_NL=y
+# CONFIG_NOHUP is not set
+CONFIG_NPROC=y
+# CONFIG_NSENTER is not set
+CONFIG_OD=y
+# CONFIG_ONEIT is not set
+# CONFIG_OPENVT is not set
+# CONFIG_PARTPROBE is not set
+# CONFIG_PASSWD is not set
+# CONFIG_PASSWD_SAD is not set
+CONFIG_PASTE=y
+CONFIG_PATCH=y
+CONFIG_PGREP=y
+# CONFIG_PIDOF is not set
+# CONFIG_PING is not set
+# CONFIG_PIVOT_ROOT is not set
+CONFIG_PKILL=y
+# CONFIG_PMAP is not set
+# CONFIG_PRINTENV is not set
+CONFIG_PRINTF=y
+CONFIG_PS=y
+# CONFIG_PWDX is not set
+CONFIG_PWD=y
+# CONFIG_PWGEN is not set
+# CONFIG_READAHEAD is not set
+# CONFIG_READELF is not set
+CONFIG_READLINK=y
+CONFIG_REALPATH=y
+# CONFIG_REBOOT is not set
+# CONFIG_RENICE is not set
+# CONFIG_RESET is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_REV is not set
+# CONFIG_RFKILL is not set
+CONFIG_RMDIR=y
+# CONFIG_RMMOD is not set
+CONFIG_RM=y
+# CONFIG_ROUTE is not set
+# CONFIG_RTCWAKE is not set
+# CONFIG_RUNCON is not set
+CONFIG_SED=y
+# CONFIG_SENDEVENT is not set
+CONFIG_SEQ=y
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFATTR is not set
+CONFIG_SETSID=y
+CONFIG_SHA1SUM=y
+# CONFIG_SHA224SUM is not set
+CONFIG_SHA256SUM=y
+# CONFIG_SHA3SUM is not set
+# CONFIG_SHA384SUM is not set
+CONFIG_SHA512SUM=y
+# CONFIG_SH is not set
+# CONFIG_SHRED is not set
+# CONFIG_SHUF is not set
+# CONFIG_SKELETON_ALIAS is not set
+# CONFIG_SKELETON is not set
+CONFIG_SLEEP=y
+# CONFIG_SNTP is not set
+CONFIG_SORT_FLOAT=y
+CONFIG_SORT=y
+# CONFIG_SPLIT is not set
+CONFIG_STAT=y
+# CONFIG_STRACE is not set
+# CONFIG_STRINGS is not set
+# CONFIG_STTY is not set
+# CONFIG_SU is not set
+# CONFIG_SULOGIN is not set
+# CONFIG_SWAPOFF is not set
+# CONFIG_SWAPON is not set
+# CONFIG_SWITCH_ROOT is not set
+# CONFIG_SYNC is not set
+# CONFIG_SYSCTL is not set
+# CONFIG_SYSLOGD is not set
+# CONFIG_TAC is not set
+CONFIG_TAIL=y
+CONFIG_TAR=y
+# CONFIG_TASKSET is not set
+# CONFIG_TCPSVD is not set
+CONFIG_TEE=y
+# CONFIG_TELNETD is not set
+# CONFIG_TELNET is not set
+CONFIG_TEST=y
+CONFIG_TEST_GLUE=y
+# CONFIG_TFTPD is not set
+# CONFIG_TFTP is not set
+# CONFIG_TIME is not set
+CONFIG_TIMEOUT=y
+# CONFIG_TOP is not set
+CONFIG_TOUCH=y
+# CONFIG_TRACEROUTE is not set
+CONFIG_TRUE=y
+CONFIG_TRUNCATE=y
+CONFIG_TR=y
+# CONFIG_TS is not set
+# CONFIG_TSORT is not set
+# CONFIG_TTY is not set
+# CONFIG_TUNCTL is not set
+# CONFIG_UCLAMPSET is not set
+# CONFIG_ULIMIT is not set
+# CONFIG_UMOUNT is not set
+CONFIG_UNAME=y
+# CONFIG_UNICODE is not set
+CONFIG_UNIQ=y
+CONFIG_UNIX2DOS=y
+# CONFIG_UNLINK is not set
+# CONFIG_UNSHARE is not set
+# CONFIG_UPTIME is not set
+# CONFIG_USERADD is not set
+# CONFIG_USERDEL is not set
+# CONFIG_USLEEP is not set
+# CONFIG_UUDECODE is not set
+# CONFIG_UUENCODE is not set
+# CONFIG_UUIDGEN is not set
+# CONFIG_VCONFIG is not set
+# CONFIG_VI is not set
+# CONFIG_VMSTAT is not set
+# CONFIG_WATCH is not set
+# CONFIG_WATCHDOG is not set
+CONFIG_WC=y
+# CONFIG_WGET is not set
+CONFIG_WHICH=y
+CONFIG_WHOAMI=y
+# CONFIG_WHO is not set
+# CONFIG_W is not set
+CONFIG_XARGS=y
+CONFIG_XXD=y
+# CONFIG_XZCAT is not set
+# CONFIG_YES is not set
+CONFIG_ZCAT=y
diff --git a/config-mac b/config-mac
new file mode 100644
index 0000000..b0b928e
--- /dev/null
+++ b/config-mac
@@ -0,0 +1,354 @@
+#
+# Hand-maintained .config file.
+#
+
+#
+# General settings.
+#
+
+CONFIG_TOYBOX=y
+# CONFIG_TOYBOX_DEBUG is not set
+CONFIG_TOYBOX_FLOAT=y
+CONFIG_TOYBOX_FORK=y
+# CONFIG_TOYBOX_FREE is not set
+CONFIG_TOYBOX_HELP_DASHDASH=y
+CONFIG_TOYBOX_HELP=y
+CONFIG_TOYBOX_LIBCRYPTO=y
+CONFIG_TOYBOX_LIBZ=y
+CONFIG_TOYBOX_LSM_NONE=y
+CONFIG_TOYBOX_NORECURSE=y
+# CONFIG_TOYBOX_ON_ANDROID is not set
+# CONFIG_TOYBOX_SELINUX is not set
+# CONFIG_TOYBOX_SMACK is not set
+# CONFIG_TOYBOX_SUID is not set
+CONFIG_TOYBOX_UID_SYS=100
+CONFIG_TOYBOX_UID_USR=500
+# CONFIG_TOYBOX_ZHELP is not set
+
+#
+# Selected toys.
+#
+
+# CONFIG_ACPI is not set
+# CONFIG_ARCH is not set
+# CONFIG_ARPING is not set
+# CONFIG_ARP is not set
+# CONFIG_ASCII is not set
+# CONFIG_BASE32 is not set
+# CONFIG_BASE64 is not set
+CONFIG_BASENAME=y
+# CONFIG_BC is not set
+# CONFIG_BLKDISCARD is not set
+# CONFIG_BLKID is not set
+# CONFIG_BLOCKDEV is not set
+# CONFIG_BOOTCHARTD is not set
+# CONFIG_BRCTL is not set
+# CONFIG_BUNZIP2 is not set
+# CONFIG_BZCAT is not set
+# CONFIG_CAL is not set
+CONFIG_CAT=y
+# CONFIG_CD is not set
+# CONFIG_CHATTR is not set
+# CONFIG_CHCON is not set
+# CONFIG_CHGRP is not set
+CONFIG_CHMOD=y
+# CONFIG_CHOWN is not set
+# CONFIG_CHROOT is not set
+# CONFIG_CHRT is not set
+# CONFIG_CHSH is not set
+# CONFIG_CHVT is not set
+# CONFIG_CKSUM is not set
+# CONFIG_CLEAR is not set
+CONFIG_CMP=y
+CONFIG_COMM=y
+# CONFIG_COUNT is not set
+CONFIG_CPIO=y
+CONFIG_CP=y
+# CONFIG_CRC32 is not set
+# CONFIG_CROND is not set
+# CONFIG_CRONTAB is not set
+# CONFIG_CSPLIT is not set
+CONFIG_CUT=y
+CONFIG_DATE=y
+CONFIG_DD=y
+# CONFIG_DEALLOCVT is not set
+# CONFIG_DEBUG_DHCP is not set
+# CONFIG_DEMO_MANY_OPTIONS is not set
+# CONFIG_DEMO_NUMBER is not set
+# CONFIG_DEMO_SCANKEY is not set
+# CONFIG_DEMO_UTF8TOWC is not set
+# CONFIG_DEVMEM is not set
+# CONFIG_DF is not set
+# CONFIG_DHCP6 is not set
+# CONFIG_DHCPD is not set
+# CONFIG_DHCP is not set
+CONFIG_DIFF=y
+CONFIG_DIRNAME=y
+# CONFIG_DMESG is not set
+# CONFIG_DNSDOMAINNAME is not set
+CONFIG_DOS2UNIX=y
+# CONFIG_DUMPLEASES is not set
+CONFIG_DU=y
+CONFIG_ECHO=y
+CONFIG_EGREP=y
+# CONFIG_EJECT is not set
+CONFIG_ENV=y
+# CONFIG_EXIT is not set
+# CONFIG_EXPAND is not set
+CONFIG_EXPR=y
+# CONFIG_FACTOR is not set
+# CONFIG_FALLOCATE is not set
+# CONFIG_FALSE is not set
+# CONFIG_FDISK is not set
+CONFIG_FGREP=y
+CONFIG_FILE=y
+CONFIG_FIND=y
+# CONFIG_FLOCK is not set
+# CONFIG_FMT is not set
+# CONFIG_FOLD is not set
+# CONFIG_FREE is not set
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK is not set
+# CONFIG_FSFREEZE is not set
+# CONFIG_FSTYPE is not set
+# CONFIG_FSYNC is not set
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+CONFIG_GETCONF=y
+# CONFIG_GETENFORCE is not set
+# CONFIG_GETFATTR is not set
+CONFIG_GETOPT=y
+# CONFIG_GETTY is not set
+# CONFIG_GITCHECKOUT is not set
+# CONFIG_GITCLONE is not set
+# CONFIG_GITCOMPAT is not set
+# CONFIG_GITFETCH is not set
+# CONFIG_GITINIT is not set
+# CONFIG_GITREMOTE is not set
+# CONFIG_GPIODETECT is not set
+# CONFIG_GPIOFIND is not set
+# CONFIG_GPIOGET is not set
+# CONFIG_GPIOINFO is not set
+# CONFIG_GPIOSET is not set
+CONFIG_GREP=y
+# CONFIG_GROUPADD is not set
+# CONFIG_GROUPDEL is not set
+# CONFIG_GROUPS is not set
+# CONFIG_GUNZIP is not set
+CONFIG_GZIP=y
+CONFIG_HEAD=y
+# CONFIG_HELLO is not set
+# CONFIG_HELP is not set
+# CONFIG_HEXDUMP is not set
+# CONFIG_HEXEDIT is not set
+# CONFIG_HD is not set
+# CONFIG_HOSTID is not set
+# CONFIG_HOST is not set
+CONFIG_HOSTNAME=y
+# CONFIG_HTTPD is not set
+# CONFIG_HWCLOCK is not set
+# CONFIG_I2CDETECT is not set
+# CONFIG_I2CDUMP is not set
+# CONFIG_I2CGET is not set
+# CONFIG_I2CSET is not set
+# CONFIG_I2CTRANSFER is not set
+# CONFIG_ICONV is not set
+CONFIG_ID=y
+# CONFIG_ID_Z is not set
+# CONFIG_IFCONFIG is not set
+# CONFIG_INIT is not set
+# CONFIG_INOTIFYD is not set
+# CONFIG_INSMOD is not set
+CONFIG_INSTALL=y
+# CONFIG_IONICE is not set
+# CONFIG_IORENICE is not set
+# CONFIG_IOTOP is not set
+# CONFIG_IPCRM is not set
+# CONFIG_IPCS is not set
+# CONFIG_IP is not set
+# CONFIG_KILLALL5 is not set
+# CONFIG_KILLALL is not set
+# CONFIG_KILL is not set
+# CONFIG_KLOGD is not set
+# CONFIG_KLOGD_SOURCE_RING_BUFFER is not set
+# CONFIG_LAST is not set
+# CONFIG_LINK is not set
+# CONFIG_LINUX32 is not set
+CONFIG_LN=y
+# CONFIG_LOAD_POLICY is not set
+# CONFIG_LOGGER is not set
+# CONFIG_LOGIN is not set
+# CONFIG_LOG is not set
+# CONFIG_LOGNAME is not set
+# CONFIG_LOGPATH is not set
+# CONFIG_LOSETUP is not set
+# CONFIG_LSATTR is not set
+# CONFIG_LSMOD is not set
+# CONFIG_LSOF is not set
+# CONFIG_LSPCI is not set
+# CONFIG_LSUSB is not set
+CONFIG_LS=y
+# CONFIG_MAKEDEVS is not set
+# CONFIG_MAN is not set
+# CONFIG_MCOOKIE is not set
+CONFIG_MD5SUM=y
+# CONFIG_MDEV_CONF is not set
+# CONFIG_MDEV is not set
+# CONFIG_MEMEATER is not set
+CONFIG_MICROCOM=y
+# CONFIG_MIX is not set
+CONFIG_MKDIR=y
+# CONFIG_MKDIR_Z is not set
+# CONFIG_MKE2FS_EXTENDED is not set
+# CONFIG_MKE2FS_GEN is not set
+# CONFIG_MKE2FS is not set
+# CONFIG_MKE2FS_JOURNAL is not set
+# CONFIG_MKE2FS_LABEL is not set
+# CONFIG_MKFIFO is not set
+# CONFIG_MKFIFO_Z is not set
+# CONFIG_MKNOD is not set
+# CONFIG_MKNOD_Z is not set
+# CONFIG_MKPASSWD is not set
+# CONFIG_MKSWAP is not set
+CONFIG_MKTEMP=y
+# CONFIG_MODINFO is not set
+# CONFIG_MODPROBE is not set
+# CONFIG_MORE is not set
+# CONFIG_MOUNT is not set
+# CONFIG_MOUNTPOINT is not set
+CONFIG_MV=y
+# CONFIG_NBD_CLIENT is not set
+# CONFIG_NBD_SERVER is not set
+# CONFIG_NETCAT is not set
+# CONFIG_NETSTAT is not set
+# CONFIG_NICE is not set
+CONFIG_NL=y
+# CONFIG_NOHUP is not set
+# CONFIG_NPROC is not set
+# CONFIG_NSENTER is not set
+CONFIG_OD=y
+# CONFIG_ONEIT is not set
+# CONFIG_OPENVT is not set
+# CONFIG_PARTPROBE is not set
+# CONFIG_PASSWD is not set
+# CONFIG_PASSWD_SAD is not set
+CONFIG_PASTE=y
+CONFIG_PATCH=y
+# CONFIG_PGREP is not set
+# CONFIG_PIDOF is not set
+# CONFIG_PING is not set
+# CONFIG_PIVOT_ROOT is not set
+# CONFIG_PKILL is not set
+# CONFIG_PMAP is not set
+# CONFIG_PRINTENV is not set
+CONFIG_PRINTF=y
+# CONFIG_PS is not set
+# CONFIG_PWDX is not set
+CONFIG_PWD=y
+# CONFIG_PWGEN is not set
+# CONFIG_READAHEAD is not set
+# CONFIG_READELF is not set
+CONFIG_READLINK=y
+CONFIG_REALPATH=y
+# CONFIG_REBOOT is not set
+# CONFIG_RENICE is not set
+# CONFIG_RESET is not set
+# CONFIG_RESTORECON is not set
+# CONFIG_REV is not set
+# CONFIG_RFKILL is not set
+CONFIG_RMDIR=y
+# CONFIG_RMMOD is not set
+CONFIG_RM=y
+# CONFIG_ROUTE is not set
+# CONFIG_RTCWAKE is not set
+# CONFIG_RUNCON is not set
+CONFIG_SED=y
+# CONFIG_SENDEVENT is not set
+CONFIG_SEQ=y
+# CONFIG_SETENFORCE is not set
+# CONFIG_SETFATTR is not set
+CONFIG_SETSID=y
+CONFIG_SHA1SUM=y
+# CONFIG_SHA224SUM is not set
+CONFIG_SHA256SUM=y
+# CONFIG_SHA3SUM is not set
+# CONFIG_SHA384SUM is not set
+CONFIG_SHA512SUM=y
+# CONFIG_SH is not set
+# CONFIG_SHRED is not set
+# CONFIG_SHUF is not set
+# CONFIG_SKELETON_ALIAS is not set
+# CONFIG_SKELETON is not set
+CONFIG_SLEEP=y
+# CONFIG_SNTP is not set
+CONFIG_SORT_FLOAT=y
+CONFIG_SORT=y
+# CONFIG_SPLIT is not set
+CONFIG_STAT=y
+# CONFIG_STRACE is not set
+# CONFIG_STRINGS is not set
+# CONFIG_STTY is not set
+# CONFIG_SU is not set
+# CONFIG_SULOGIN is not set
+# CONFIG_SWAPOFF is not set
+# CONFIG_SWAPON is not set
+# CONFIG_SWITCH_ROOT is not set
+# CONFIG_SYNC is not set
+# CONFIG_SYSCTL is not set
+# CONFIG_SYSLOGD is not set
+# CONFIG_TAC is not set
+CONFIG_TAIL=y
+CONFIG_TAR=y
+# CONFIG_TASKSET is not set
+# CONFIG_TCPSVD is not set
+CONFIG_TEE=y
+# CONFIG_TELNETD is not set
+# CONFIG_TELNET is not set
+CONFIG_TEST=y
+CONFIG_TEST_GLUE=y
+# CONFIG_TFTPD is not set
+# CONFIG_TFTP is not set
+# CONFIG_TIME is not set
+CONFIG_TIMEOUT=y
+# CONFIG_TOP is not set
+CONFIG_TOUCH=y
+# CONFIG_TRACEROUTE is not set
+CONFIG_TRUE=y
+CONFIG_TRUNCATE=y
+CONFIG_TR=y
+# CONFIG_TS is not set
+# CONFIG_TSORT is not set
+# CONFIG_TTY is not set
+# CONFIG_TUNCTL is not set
+# CONFIG_UCLAMPSET is not set
+# CONFIG_ULIMIT is not set
+# CONFIG_UMOUNT is not set
+CONFIG_UNAME=y
+# CONFIG_UNICODE is not set
+CONFIG_UNIQ=y
+CONFIG_UNIX2DOS=y
+# CONFIG_UNLINK is not set
+# CONFIG_UNSHARE is not set
+# CONFIG_UPTIME is not set
+# CONFIG_USERADD is not set
+# CONFIG_USERDEL is not set
+# CONFIG_USLEEP is not set
+# CONFIG_UUDECODE is not set
+# CONFIG_UUENCODE is not set
+# CONFIG_UUIDGEN is not set
+# CONFIG_VCONFIG is not set
+# CONFIG_VI is not set
+# CONFIG_VMSTAT is not set
+# CONFIG_WATCH is not set
+# CONFIG_WATCHDOG is not set
+CONFIG_WC=y
+# CONFIG_WGET is not set
+CONFIG_WHICH=y
+CONFIG_WHOAMI=y
+# CONFIG_WHO is not set
+# CONFIG_W is not set
+CONFIG_XARGS=y
+CONFIG_XXD=y
+# CONFIG_XZCAT is not set
+# CONFIG_YES is not set
+CONFIG_ZCAT=y
diff --git a/post_update.sh b/post_update.sh
new file mode 100755
index 0000000..c07d65a
--- /dev/null
+++ b/post_update.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+# $1 Path to the new version.
+# $2 Path to the old version.
+
+cd $1
+
+set -e
+
+rm -rf .config generated/ android/
+
+function generate() {
+  which=$1
+  echo -e "\n-------- $1\n"
+
+  # These are the only generated files we actually need.
+  files="config.h flags.h globals.h help.h newtoys.h tags.h"
+
+  cp config-$which .config
+  NOBUILD=1 scripts/make.sh
+  out=android/$which/generated/
+  mkdir -p $out
+  for f in $files; do cp generated/$f $out/$f ; done
+  rm -rf .config generated/
+
+  make allnoconfig KCONFIG_ALLCONFIG=config-$which
+}
+
+generate "device"
+generate "linux"
+generate "mac"
+
+rm -rf .config
diff --git a/run-tests-on-android.sh b/run-tests-on-android.sh
new file mode 100755
index 0000000..02f278f
--- /dev/null
+++ b/run-tests-on-android.sh
@@ -0,0 +1,115 @@
+#!/bin/bash
+
+#
+# Setup.
+#
+
+# Copy the toybox tests across.
+if [[ $(adb shell getprop ro.debuggable) == 1 ]]; then
+  adb shell su root rm -rf /data/local/tmp/toybox-tests/
+fi
+adb shell rm -rf /data/local/tmp/toybox-tests/
+adb shell mkdir /data/local/tmp/toybox-tests/
+adb push tests/ /data/local/tmp/toybox-tests/
+adb push scripts/runtest.sh /data/local/tmp/toybox-tests/
+
+# Make a temporary directory on the device.
+tmp_dir=`adb shell mktemp --directory /data/local/tmp/toybox-tests-tmp.XXXXXXXXXX`
+
+if tty -s; then
+  green="\033[1;32m"
+  red="\033[1;31m"
+  plain="\033[0m"
+else
+  green=""
+  red=""
+  plain=""
+fi
+
+# Force pty allocation (http://b/142798587).
+dash_t="-tt"
+
+test_toy() {
+  toy=$1
+
+  echo
+
+  location=$(adb shell "which $toy")
+  if [ -z "$location" ]; then
+    echo "-- $toy not present"
+    return
+  fi
+
+  echo "-- $toy"
+
+  implementation=$(adb shell "realpath $location")
+  non_toy=false
+  if [ "$implementation" != "/system/bin/toybox" ]; then
+    echo "-- note: $toy is *not* toybox; this does not count as a test failure"
+    non_toy=true
+  fi
+
+  adb shell $dash_t "\
+      export C=\"\$(which $toy)\"; \
+      export CMDNAME=$toy; \
+      export TESTDIR=$tmp_dir; \
+      export FILES=/data/local/tmp/toybox-tests/tests/files/ ; \
+      export LANG=en_US.UTF-8; \
+      export VERBOSE=1 ; \
+      mkdir $tmp_dir/$toy && cd $tmp_dir/$toy ; \
+      source /data/local/tmp/toybox-tests/runtest.sh ; \
+      source /data/local/tmp/toybox-tests/tests/$toy.test ; \
+      if [ "\$FAILCOUNT" -ne 0 ]; then exit 1; fi; \
+      cd .. && rm -rf $toy"
+  if [ $? -eq 0 ]; then
+    pass_count=$(($pass_count+1))
+  elif [ "$non_toy" = "true" ]; then
+    non_toy_failures="$non_toy_failures $toy"
+  else
+    if [[ "$toy" = "vi" ]]; then
+      non_toy_failures="$non_toy_failures $toy"
+    else
+      failures="$failures $toy"
+    fi
+  fi
+}
+
+#
+# Run the selected test or all tests.
+#
+
+failures=""
+pass_count=0
+if [ "$#" -eq 0 ]; then
+  # Run all the tests.
+  for t in tests/*.test; do
+    toy=`echo $t | sed 's|tests/||' | sed 's|\.test||'`
+    test_toy $toy
+  done
+else
+  # Just run the tests for the given toys.
+  for toy in "$@"; do
+    test_toy $toy
+  done
+fi
+
+#
+# Show a summary and return a meaningful exit status.
+#
+
+echo
+echo "_________________________________________________________________________"
+echo
+echo -e "${green}PASSED${plain}: $pass_count"
+for failure in $failures; do
+  echo -e "${red}FAILED${plain}: $failure"
+done
+for failure in $non_toy_failures; do
+  echo -e "${red}FAILED${plain}: $failure (ignoring)"
+done
+
+# We should have run *something*...
+if [ $pass_count -eq 0 ]; then exit 1; fi
+# And all failures are bad...
+if [ -n "$failures" ]; then exit 1; fi
+exit 0
diff --git a/toybox-gtests.cpp b/toybox-gtests.cpp
new file mode 100644
index 0000000..e704939
--- /dev/null
+++ b/toybox-gtests.cpp
@@ -0,0 +1,206 @@
+/* toybox-gtests.cpp - Wrapper around scripts/runtest.sh to run each toy test as a gtest
+ *
+ * Copyright 2023 The Android Open Source Project
+ */
+
+#include <dirent.h>
+#include <paths.h>
+#include <signal.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include <algorithm>
+#include <iostream>
+#include <functional>
+#include <memory>
+#include <stdlib.h>
+#include <string>
+#include <vector>
+
+#include <gtest/gtest.h>
+
+#include <android-base/file.h>
+#include <android-base/stringprintf.h>
+#include <android-base/strings.h>
+#include <android-base/test_utils.h>
+
+const std::string kShell =
+#ifdef __ANDROID__
+  _PATH_BSHELL;
+#else
+  // /bin/sh doesn't work when running on the host, the tests require /bin/bash
+  "/bin/bash";
+#endif
+
+static void MkdirOrFatal(std::string dir) {
+  int ret = mkdir(dir.c_str(), 0777);
+  ASSERT_EQ(ret, 0) << "Failed to make directory " << dir << ": " << strerror(errno);
+}
+
+static std::string SystemStdoutOrFatal(std::string cmd) {
+  CapturedStdout stdout_str;
+  int ret = system(cmd.c_str());
+  stdout_str.Stop();
+  EXPECT_GE(ret, 0) << "Failed to run " << cmd << ": " << strerror(errno);
+  EXPECT_EQ(ret, 0) << "Failed to run " << cmd << ": exited with status " << ret;
+  return android::base::Trim(stdout_str.str());
+}
+
+// ExecTest sets up the environemnt and then execs the toybox test scripts for a single toy.
+// It is run in a subprocess as a gtest death test.
+static void ExecTest(std::string toy,
+                     std::string toy_path,
+                     std::string test_file,
+                     std::string temp_dir)  {
+  std::string test_binary_dir = android::base::GetExecutableDirectory();
+
+  std::string working_dir = temp_dir + "/" + toy;
+  MkdirOrFatal(working_dir);
+
+#ifndef __ANDROID__
+  std::string path_env = getenv("PATH");
+  path_env = temp_dir + "/path:" + path_env;
+  setenv("PATH", path_env.c_str(), true);
+#endif
+
+  setenv("C", toy_path.c_str(), true);
+  setenv("CMDNAME", toy.c_str(), true);
+  setenv("TESTDIR", temp_dir.c_str(), true);
+  setenv("FILES", (test_binary_dir + "/tests/files").c_str(), true);
+  setenv("LANG", "en_US.UTF-8", true);
+  setenv("VERBOSE", "1", true);
+
+  std::string test_cmd = android::base::StringPrintf(
+    "cd %s && source %s/scripts/runtest.sh && source %s/tests/%s",
+    working_dir.c_str(),
+    test_binary_dir.c_str(),
+    test_binary_dir.c_str(),
+    test_file.c_str());
+
+  std::vector<const char*> args;
+  args.push_back(kShell.c_str());
+  args.push_back("-c");
+  args.push_back(test_cmd.c_str());
+  args.push_back(NULL);
+
+  // When running in atest something is configure the SIGQUIT signal as blocked, which
+  // causes some missed signals in toybox tests that leave dangling "sleep 100" processes
+  // lying around.  These processes have the gtest pipe fd open, and keep gtest from
+  // considering the death test to have exited until the sleep ends.
+  sigset_t signal_set;
+  sigemptyset(&signal_set);
+  sigaddset(&signal_set, SIGQUIT);
+  sigprocmask(SIG_UNBLOCK, &signal_set, nullptr);
+
+  execv(args[0], const_cast<char**>(args.data()));
+  FAIL() << "Failed to exec " << kShell << " -c '" << test_cmd << "'" << strerror(errno);
+}
+
+class ToyboxTest : public testing::Test {
+ public:
+  ToyboxTest(std::string toy, std::string test_file) : toy_(toy), test_file_(test_file) { }
+  void TestBody();
+ private:
+  std::string toy_;
+  std::string test_file_;
+};
+
+
+void ToyboxTest::TestBody() {
+  // This test function is run once for each toy.
+  TemporaryDir temp_dir{};
+  bool ignore_failures = false;
+
+#ifdef __ANDROID__
+  // On the device, check whether the toy exists
+  std::string toy_path = SystemStdoutOrFatal(std::string("which ") + toy_ + " || true");
+  if (toy_path.empty()) {
+    GTEST_SKIP() << toy_ << " not present";
+  }
+
+  // And whether it is uses toybox as its implementation.
+  std::string implementation = SystemStdoutOrFatal(std::string("realpath ") + toy_path);
+  if (!android::base::EndsWith(implementation, "/toybox")) {
+    std::cout << toy_ << " is *not* toybox; this does not count as a test failure";
+    // If there is no symlink for the toy on the device then run the tests but don't report
+    // failures.
+    ignore_failures = true;
+  }
+#else
+  // On the host toybox is packaged with the test so that it can be run in CI, which won't
+  // have access to the prebuilt toybox or path symlinks.  It is packaged without any toy
+  // symlinks, so a symlink is created for each test.
+
+  // Test if the toy is supported by the packaged toybox, and skip the test if not.
+  std::string toybox_path = android::base::GetExecutableDirectory() + "/toybox";
+  std::string supported_toys_str = SystemStdoutOrFatal(toybox_path);
+  std::vector<std::string> supported_toys = android::base::Split(supported_toys_str, " \n");
+  if (std::find(supported_toys.begin(), supported_toys.end(), toy_) == supported_toys.end()) {
+    GTEST_SKIP() << toy_ << " not compiled into toybox";
+  }
+
+  // Create a directory with a symlinks for all the toys that will be prepended to PATH.
+  // Some tests have interdependencies on other toys that may not be available in
+  // the host system, e.g. the tar tests depend on the file tool.
+  std::string path_dir = std::string(temp_dir.path) + "/path";
+  MkdirOrFatal(path_dir);
+  for (auto& toy : supported_toys) {
+    std::string toy_path = path_dir + "/" + toy;
+    int ret = symlink(toybox_path.c_str(), toy_path.c_str());
+    ASSERT_EQ(ret, 0) <<
+      "Failed to symlink " << toy_path << " to " << toybox_path << ": " << strerror(errno);
+  }
+  std::string toy_path = path_dir + "/" + toy_;
+#endif
+
+  pid_t pid = fork();
+  ASSERT_GE(pid, 0) << "Failed to fork";
+  if (pid > 0) {
+    // parent
+    int status = 0;
+    int ret = waitpid(pid, &status, 0);
+    ASSERT_GT(pid, 0) << "Failed to wait for child " << pid << ": " << strerror(errno);
+    ASSERT_TRUE(WIFEXITED(status));
+    if (!ignore_failures) {
+      int exit_status = WEXITSTATUS(status);
+      ASSERT_EQ(exit_status, 0);
+    }
+  } else {
+    // child
+    ExecTest(toy_, toy_path, test_file_, temp_dir.path);
+    _exit(1);
+  }
+}
+
+__attribute__((constructor)) static void initTests() {
+  // Find all the "tests/*.test" files packaged alongside the gtest.
+  std::string test_dir = android::base::GetExecutableDirectory() + "/tests";
+  std::unique_ptr<DIR, decltype(&closedir)> dir(opendir(test_dir.c_str()), closedir);
+  if (!dir) {
+    std::cerr << "Cannot open test executable directory " << test_dir;
+    exit(1);
+  }
+
+  std::vector<std::string> test_files;
+  dirent* de;
+  while ((de = readdir(dir.get())) != nullptr) {
+    std::string file = de->d_name;
+    if (android::base::EndsWith(file, ".test")) {
+      test_files.push_back(file);
+    }
+  }
+
+  std::sort(test_files.begin(), test_files.end());
+
+  // Register each test file as an individual gtest.
+  for (auto& test_file : test_files) {
+    std::string toy = test_file.substr(0, test_file.size() - strlen(".test"));
+
+    testing::RegisterTest("toybox", toy.c_str(), nullptr, nullptr, __FILE__, __LINE__,
+                          [=]() -> ToyboxTest* {
+                            return new ToyboxTest(toy, test_file);
+                          });
+  }
+}