#compdef sq

autoload -U is-at-least

_sq() {
    typeset -A opt_args
    typeset -a _arguments_options
    local ret=1

    if is-at-least 5.2; then
        _arguments_options=(-s -S -C)
    else
        _arguments_options=(-s -C)
    fi

    local context curcontext="$curcontext" state line
    _arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq_commands" \
"*::: :->sq" \
&& ret=0
    case $state in
    (sq)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-command-$line[1]:"
        case $line[1] in
            (encrypt)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'*--recipient-email=[Encrypt to all certificates that can be authenticated for the specified email address]:EMAIL: ' \
'*--recipient-userid=[Encrypt to all certificates that can be authenticated for the specified User ID]:USERID: ' \
'*--recipient-cert=[Encrypt to the named certificates]:FINGERPRINT|KEYID: ' \
'*--recipient-file=[Encrypt to all certificates in CERT_RING_FILE]:CERT_RING_FILE:_files' \
'--set-metadata-time=[Set time for encrypted file as metadata]:TIME: ' \
'*--signer-file=[Sign the message using the key in KEY_FILE]:KEY_FILE:_files' \
'*--signer-key=[Sign the message using the specified key on the key store]:KEYID|FINGERPRINT: ' \
'*--with-password-file=[File containing password to encrypt the secret key material]:PASSWORD_FILE:_files' \
'--encrypt-for=[Select what kind of keys are considered for encryption.]:PURPOSE:((transport\:"Protects data in transport"
storage\:"Protects data at rest"
universal\:"Protects data in transport and at rest"))' \
'--compression=[Select compression scheme to use]:KIND:(none zip zlib bzip2)' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--set-metadata-filename[Set the filename of the encrypted file as metadata]' \
'*--with-password[Prompt to add a password to encrypt with]' \
'--use-expired-subkey[Fall back to expired encryption subkeys]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--signatures=[Set the threshold of valid signatures to N]:N: ' \
'*--signer-file=[Verify signatures using the certificates in CERT_FILE]:CERT_FILE:_files' \
'*--recipient-file=[Decrypt the message using the key in KEY_FILE]:KEY_FILE:_files' \
'*--session-key=[Decrypt an encrypted message using SESSION-KEY]:SESSION-KEY: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--dump-session-key[Print the session key to stderr]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(sign)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'(--append --detached --cleartext-signature --notarize --signer-file)--merge=[Merge signatures from the input and SIGNED-MESSAGE]:SIGNED-MESSAGE:_files' \
'*--signer-file=[Sign the message using the key in KEY_FILE]:KEY_FILE:_files' \
'*--signer-key=[Sign the message using the specified key on the key store]:KEYID|FINGERPRINT: ' \
'(--merge)*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--detached[Create a detached signature]' \
'(--detached --append --notarize --binary)--cleartext-signature[Create a cleartext signature]' \
'(--notarize)--append[Append a signature to existing signature]' \
'(--append)--notarize[Sign a message and all existing signatures]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(verify)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--detached=[Verify a detached signature]:SIG:_files' \
'--signatures=[Set the threshold of valid signatures to N]:N: ' \
'*--signer-file=[Verify signatures using the certificate in CERT_FILE]:CERT_FILE:_files' \
'*--signer-cert=[Verify signatures using the specified certificate]:FINGERPRINT|KEYID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(inspect)
_arguments "${_arguments_options[@]}" \
'()*--cert=[Read the specified certificate from the certificate store]:FINGERPRINT|KEYID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--certifications[Print third-party certifications]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(cert)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__cert_commands" \
"*::: :->cert" \
&& ret=0

    case $state in
    (cert)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-cert-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::input -- Read from FILE or stdin if omitted:_files' \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
'*--cert=[Return certificates that contain a primary key or a subkey with the specified fingerprint or key ID]:FINGERPRINT|KEYID: ' \
'*--userid=[Return certificates that have a User ID that matches exactly, including case]:USERID: ' \
'*--grep=[Return certificates that have a User ID that contains the string, case insensitively]:PATTERN: ' \
'*--email=[Return certificates that have a User ID with the specified email address, case insensitively]:EMAIL: ' \
'*--domain=[Return certificates that have a User ID with an email address from the specified domain]:DOMAIN: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'(--cert --userid --grep --email --domain)--all[Export all certificates]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::query -- Return certificates matching QUERY. This may be a subkey fingerprint or key ID, an email address, or an User ID fragment.:' \
&& ret=0
;;
(lint)
_arguments "${_arguments_options[@]}" \
'*--cert-file=[Lint the certificates in the specified file]:CERT_FILE: ' \
'(--cert-file)*--cert=[Lint the specified certificate]:FINGERPRINT|KEYID: ' \
'--output=[Write to the specified FILE.  If not specified, and the certificate was read from the certificate store, imports the modified certificate into the cert store.  If not specified, and the certificate was read from a file, writes the modified certificate to stdout.]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--quiet[Quiet; does not output any diagnostics]' \
'--fix[Attempts to fix certificates, when possible]' \
'--export-secret-keys[When fixing a certificate, the fixed certificate is exported without any secret key material.  Using this switch causes any secret key material to also be exported]' \
'--list-keys[If set, outputs a list of fingerprints, one per line, of certificates that have issues.  This output is intended for use by scripts]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__cert__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-cert-help-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(lint)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(key)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__key_commands" \
"*::: :->key" \
&& ret=0

    case $state in
    (key)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
'*--name=[Add a name as user ID to the key]:NAME: ' \
'*--email=[Add an email address as user ID to the key]:ADDRESS: ' \
'*--userid=[Add a user ID to the key]:USERID: ' \
'--cipher-suite=[Select the cryptographic algorithms for the key]:CIPHER-SUITE:(rsa2k rsa3k rsa4k cv25519)' \
'(--without-password)--new-password-file=[File containing password to encrypt the secret key material]:PASSWORD_FILE:_files' \
'--expiration=[Sets the certificate'\''s expiration time]:EXPIRATION: ' \
'--can-encrypt=[Add an encryption-capable subkey \[default\: universal\]]:PURPOSE:((transport\:"Protects data in transport"
storage\:"Protects data at rest"
universal\:"Protects data in transport and at rest"))' \
'--output=[Write the key to the specified file]:FILE: ' \
'--rev-cert=[Write the emergency revocation certificate to FILE]:FILE:_files' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--allow-non-canonical-userids[Don'\''t reject user IDs that are not in canonical form]' \
'(--name --email --userid)--no-userids[Create a key without any user IDs]' \
'--without-password[Don'\''t protect the secret key material with a password]' \
'--can-sign[Add a signing-capable subkey (default)]' \
'--cannot-sign[Don'\''t add a signing-capable subkey]' \
'--can-authenticate[Add an authentication-capable subkey (default)]' \
'--cannot-authenticate[Don'\''t add an authentication-capable subkey]' \
'--cannot-encrypt[Don'\''t add an encryption-capable subkey]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::file -- Import the keys in KEY_FILE:_files' \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
'*--cert=[Export the specified certificate with its secret key material]:FINGERPRINT|KEYID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
'--cert=[Delete the secret key material from the specified certificate]:FILE: ' \
'--cert-file=[Delete the secret key material from the specified certificate]:CERT_FILE: ' \
'(--cert)--output=[Write the stripped certificate to the specified file]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
'--cert=[Change the password of the specified certificate'\''s keys]:FILE: ' \
'--cert-file=[Change the password of the specified certificate'\''s keys]:CERT_FILE: ' \
'--new-password-file=[File containing password to encrypt the secret key material]:PASSWORD_FILE:_files' \
'(--cert)--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--clear-password[Clear the password protecting the secret key material]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--cert=[Change the certificate'\''s expiration time]:FINGERPRINT|KEYID: ' \
'--cert-file=[Change the certificate'\''s expiration time]:CERT_FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':expiration -- Define EXPIRATION for the key as ISO 8601 formatted string or custom duration.:' \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
'--cert=[The certificate to revoke]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[The certificate to revoke]:CERT_FILE: ' \
'--revoker=[The certificate that issues the revocation]:FINGERPRINT|KEYID: ' \
'(--revoker)--revoker-file=[The certificate that issues the revocation]:KEY_FILE: ' \
'*--notation=[Add a notation to the certification]:NAME: :NAME: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':reason -- The reason for the revocation:((compromised\:"The secret key material may have been compromised.  Prefer this value if you suspect that the secret key has been leaked"
superseded\:"The owner of the certificate has a new certificate.  Prefer \`compromised\` if the secret key material has been compromised even if the certificate is also being replaced!  You should include the fingerprint of the new certificate in the message"
retired\:"The certificate should not be used anymore, and there is no replacement.  This is appropriate when someone leaves an organisation.  Prefer \`compromised\` if the secret key material has been compromised even if the certificate is also being retired!  You should include how to contact the owner, or who to contact instead in the message"
unspecified\:"None of the other reasons apply.  OpenPGP implementations conservatively treat this type of revocation similar to a compromised key"))' \
':message -- A short, explanatory text:' \
&& ret=0
;;
(userid)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__key__userid_commands" \
"*::: :->userid" \
&& ret=0

    case $state in
    (userid)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-userid-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
'--cert=[Add the user ID to the specified certificate]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[Add the user ID to the specified certificate]:CERT_FILE: ' \
'*--name=[Add a name as user ID to the key]:NAME: ' \
'*--email=[Add an email address as user ID to the key]:ADDRESS: ' \
'*--userid=[Add a user ID to the key]:USERID: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--allow-non-canonical-userids[Don'\''t reject user IDs that are not in canonical form]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
'--cert=[Revoke the user ID on the specified certificate]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[Revoke the user ID on the specified certificate]:CERT_FILE: ' \
'--revoker=[The certificate that issues the revocation]:FINGERPRINT|KEYID: ' \
'(--revoker)--revoker-file=[The certificate that issues the revocation]:KEY_FILE: ' \
'--name=[Revoke the given name user ID]:NAME: ' \
'--email=[Revoke the given email address user ID]:ADDRESS: ' \
'--userid=[Revoke the given user ID]:USERID: ' \
'*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':reason -- The reason for the revocation:((retired\:"The user ID is no longer valid.  This is appropriate when someone leaves an organisation, and the organisation does not have their secret key material.  For instance, if someone was part of Debian and retires, they would use this to indicate that a Debian-specific User ID is no longer valid"
unspecified\:"None of the other reasons apply.  OpenPGP implementations conservatively treat this type of revocation similar to a compromised key"))' \
':message -- A short, explanatory text:' \
&& ret=0
;;
(strip)
_arguments "${_arguments_options[@]}" \
'--cert=[Strip the user ID on the specified certificate]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[Strip the user ID on the specified certificate]:CERT_FILE: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'*--name=[Strip the given name user ID]:NAME: ' \
'*--email=[Strip the given email address user ID]:ADDRESS: ' \
'*--userid=[Strip the given user IDs]:USERID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__userid__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-userid-help-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(strip)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(subkey)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__key__subkey_commands" \
"*::: :->subkey" \
&& ret=0

    case $state in
    (subkey)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-subkey-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
'--cert=[Add a subkey to the specified certificate]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[Add a subkey to the specified certificate]:CERT_FILE: ' \
'--cipher-suite=[Select the cryptographic algorithms for the subkey]:CIPHER-SUITE:(rsa2k rsa3k rsa4k cv25519)' \
'--expiration=[Sets the key'\''s expiration time]:EXPIRATION: ' \
'--can-encrypt=[Add an encryption-capable subkey \[default\: universal\]]:PURPOSE:((transport\:"Protects data in transport"
storage\:"Protects data at rest"
universal\:"Protects data in transport and at rest"))' \
'(--without-password)--new-password-file=[File containing password to encrypt the secret key material]:PASSWORD_FILE:_files' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--can-sign[Add a signing-capable subkey]' \
'--can-authenticate[Add an authentication-capable subkey]' \
'--without-password[Don'\''t protect the subkey'\''s secret key material with a password]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
'*--key=[Export the secret key material for the specified key, and its certificate]:FINGERPRINT|KEYID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
'--cert=[Delete secret key material from the specified certificate]:FILE: ' \
'--cert-file=[Delete secret key material from the specified certificate]:CERT_FILE: ' \
'*--key=[The keys to delete]:FINGERPRINT|KEYID: ' \
'(--cert)--output=[Write the stripped certificate to the specified file]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
'--cert=[Change the password of the specified certificate'\''s keys]:FILE: ' \
'--cert-file=[Change the password of the specified certificate'\''s keys]:CERT_FILE: ' \
'*--key=[Change the password of the specified key]:KEY: ' \
'--new-password-file=[File containing password to encrypt the secret key material]:PASSWORD_FILE:_files' \
'(--cert)--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--clear-password[Clear the password protecting the secret key material]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
'--cert=[Change the expiration time of keys on the specified certificate]:FINGERPRINT|KEYID: ' \
'--cert-file=[Change the expiration time of keys on the specified certificate]:CERT_FILE: ' \
'*--key=[Change the expiration of this subkey]:KEY: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':expiration -- Sets the key'\''s expiration time:' \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
'--cert=[Revoke the subkey on the specified certificate]:FINGERPRINT|KEYID: ' \
'(--cert)--cert-file=[Revoke the subkey on the specified certificate]:CERT_FILE: ' \
'--revoker=[The certificate that issues the revocation]:FINGERPRINT|KEYID: ' \
'(--revoker)--revoker-file=[The certificate that issues the revocation]:KEY_FILE: ' \
'*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':subkey -- The subkey to revoke:' \
':reason -- The reason for the revocation:((compromised\:"The secret key material may have been compromised.  Prefer this value if you suspect that the secret key has been leaked"
superseded\:"The owner of the certificate has a new certificate.  Prefer \`compromised\` if the secret key material has been compromised even if the certificate is also being replaced!  You should include the fingerprint of the new certificate in the message"
retired\:"The certificate should not be used anymore, and there is no replacement.  This is appropriate when someone leaves an organisation.  Prefer \`compromised\` if the secret key material has been compromised even if the certificate is also being retired!  You should include how to contact the owner, or who to contact instead in the message"
unspecified\:"None of the other reasons apply.  OpenPGP implementations conservatively treat this type of revocation similar to a compromised key"))' \
':message -- A short, explanatory text:' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__subkey__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-subkey-help-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(approvals)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__key__approvals_commands" \
"*::: :->approvals" \
&& ret=0

    case $state in
    (approvals)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-approvals-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
'*--name=[List certifications on this name user ID]:NAMES: ' \
'*--email=[List certifications on this email address user ID]:EMAILS: ' \
'*--userid=[List certifications on this user ID]:USERIDS: ' \
'--cert=[Lists attestations on the specified certificate]:CERT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--pending[List unapproved certifications]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" \
'*--name=[Change approvals on this name user ID]:NAMES: ' \
'*--email=[Change approvals on this email address user ID]:EMAILS: ' \
'*--userid=[Change approvals on this user ID]:USERIDS: ' \
'(--remove-all)*--remove-by=[Remove all prior approvals of certifications by this certifier]:FINGERPRINT|KEYID: ' \
'(--add-all)*--add-by=[Approve of all certifications by this certifier]:FINGERPRINT|KEYID: ' \
'(--add-all)--add-authenticated=[Approve of all certifications by authenticated certifiers]' \
'--cert=[Change attestations on the specified certificate]:CERT: ' \
'--cert-file=[Change attestations on the specified certificate]:CERT_FILE: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'(--add-all)--remove-all[Remove all prior approvals]' \
'(--remove-all --remove-by)--add-all[Approve of all pending certifications]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__approvals__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-approvals-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(adopt)
_arguments "${_arguments_options[@]}" \
'*--key=[Add the key or subkey KEY to the certificate]:KEY: ' \
'--expiration=[Make adopted subkeys expire at the given time]:EXPIRATION: ' \
'--cert=[Add keys to the specified certificate]:CERT_FILE: ' \
'--cert-file=[Add keys to the specified certificate]:CERT_FILE: ' \
'--output=[Write to the specified FILE]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--allow-broken-crypto[Allow adopting keys from certificates using broken cryptography]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(userid)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__help__userid_commands" \
"*::: :->userid" \
&& ret=0

    case $state in
    (userid)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-help-userid-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(strip)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(subkey)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__help__subkey_commands" \
"*::: :->subkey" \
&& ret=0

    case $state in
    (subkey)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-help-subkey-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(approvals)
_arguments "${_arguments_options[@]}" \
":: :_sq__key__help__approvals_commands" \
"*::: :->approvals" \
&& ret=0

    case $state in
    (approvals)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-key-help-approvals-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(adopt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(pki)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__pki_commands" \
"*::: :->pki" \
&& ret=0

    case $state in
    (pki)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-pki-command-$line[1]:"
        case $line[1] in
            (authenticate)
_arguments "${_arguments_options[@]}" \
'--amount=[The required amount of trust]:AMOUNT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--show-paths[Show why a binding is authenticated]' \
'--email[Changes the USERID parameter to match User IDs with the specified email address]' \
'--gossip[Treats all certificates as unreliable trust roots]' \
'--certification-network[Treats the network as a certification network]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':cert -- The fingerprint or Key ID of the certificate to authenticate:' \
':userid -- The User ID to authenticate:' \
&& ret=0
;;
(lookup)
_arguments "${_arguments_options[@]}" \
'--amount=[The required amount of trust]:AMOUNT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--show-paths[Show why a binding is authenticated]' \
'--email[Changes the USERID parameter to match User IDs with the specified email address]' \
'--gossip[Treats all certificates as unreliable trust roots]' \
'--certification-network[Treats the network as a certification network]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':userid -- The User ID to authenticate:' \
&& ret=0
;;
(identify)
_arguments "${_arguments_options[@]}" \
'--amount=[The required amount of trust]:AMOUNT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--show-paths[Show why a binding is authenticated]' \
'--gossip[Treats all certificates as unreliable trust roots]' \
'--certification-network[Treats the network as a certification network]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':cert -- The fingerprint or Key ID of the certificate to authenticate:' \
&& ret=0
;;
(certify)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--depth=[Set the trust depth]:TRUST_DEPTH: ' \
'--amount=[Set the amount of trust]:AMOUNT: ' \
'*--regex=[Add a regular expression to constrain what a trusted introducer can certify]:REGEX: ' \
'*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'--expiration=[Define EXPIRATION for the certification as ISO 8601 formatted string or custom duration.]:EXPIRATION: ' \
'--certifier=[Create the certification using KEY.]:FILE: ' \
'--certifier-file=[Create the certification using KEY-FILE.]:KEY-FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--local[Make the certification a local certification]' \
'--non-revocable[Mark the certification as being non-revocable]' \
'--email[Treat the given user ID as an email address.]' \
'--add-userid[Add the given user ID if it doesn'\''t exist.]' \
'--allow-not-alive-certifier[Don'\''t fail if the certificate making the certification is not alive.]' \
'--allow-revoked-certifier[Don'\''t fail if the certificate making the certification is revoked.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':certificate -- Certify CERTIFICATE.:' \
':userid -- Certify USERID for CERTIFICATE.:' \
&& ret=0
;;
(link)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__pki__link_commands" \
"*::: :->link" \
&& ret=0

    case $state in
    (link)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-pki-link-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
'--depth=[Set the trust depth]:TRUST_DEPTH: ' \
'*--ca=[Mark the certificate as a certification authority for a domain]:*|DOMAIN: ' \
'--amount=[Set the amount of trust]:AMOUNT: ' \
'*--regex=[Add a regular expression to constrain what a trusted introducer can certify]:REGEX: ' \
'*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'--expiration=[Define EXPIRATION for the acceptance as ISO 8601 formatted string or custom duration.]:EXPIRATION: ' \
'*--userid=[A User ID to link to the certificate.]:USERID: ' \
'*--email=[An email address to link to the certificate.]:EMAIL: ' \
'*--petname=[A User ID to link to the certificate.]:PETNAME: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'(--amount)--temporary[Temporarily accepts the binding]' \
'(--userid --email --petname)--all[Link all valid self-signed User ID to the certificate.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':certificate -- The certificate to accept.:' \
'*::pattern -- A User ID or email address to accept.:' \
&& ret=0
;;
(retract)
_arguments "${_arguments_options[@]}" \
'*--notation=[Add a notation to the certification.]:NAME: :NAME: ' \
'*--userid=[A User ID to unlink from the certificate.]:USERID: ' \
'*--email=[An email address to unlink from the certificate.]:email: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':certificate -- The certificate whose acceptance is being retracted.:' \
'*::pattern -- A User ID or email address to unlink from the certificate.:' \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--ca[Only lists bindings linked as CAs.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__pki__link__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-pki-link-help-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(retract)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" \
'--amount=[The required amount of trust]:AMOUNT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--show-paths[Show why a binding is authenticated]' \
'--email[Changes the USERID parameter to match User IDs with the specified email address]' \
'--gossip[Treats all certificates as unreliable trust roots]' \
'--certification-network[Treats the network as a certification network]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::pattern -- A pattern to select the bindings to authenticate:' \
&& ret=0
;;
(path)
_arguments "${_arguments_options[@]}" \
'--amount=[The required amount of trust]:AMOUNT: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--gossip[Treats all certificates as unreliable trust roots]' \
'--certification-network[Treats the network as a certification network]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::elements -- A path consists of one or more certificates (designated by their fingerprint or Key ID) and ending in the User ID that is being authenticated:' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__pki__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-pki-help-command-$line[1]:"
        case $line[1] in
            (authenticate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(lookup)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(identify)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(certify)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(link)
_arguments "${_arguments_options[@]}" \
":: :_sq__pki__help__link_commands" \
"*::: :->link" \
&& ret=0

    case $state in
    (link)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-pki-help-link-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(retract)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(path)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(autocrypt)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__autocrypt_commands" \
"*::: :->autocrypt" \
&& ret=0

    case $state in
    (autocrypt)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-autocrypt-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
'*--recipient-file=[Decrypt the message using the key in KEY_FILE]:KEY_FILE:_files' \
'*--session-key=[Decrypt an encrypted message using SESSION-KEY]:SESSION-KEY: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(decode)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(encode-sender)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--email=[Set the address \[default\: primary userid\]]:ADDRESS: ' \
'--prefer-encrypt=[Set the prefer-encrypt attribute]:PREFER-ENCRYPT:(nopreference mutual)' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__autocrypt__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-autocrypt-help-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decode)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(encode-sender)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(network)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__network_commands" \
"*::: :->network" \
&& ret=0

    case $state in
    (network)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
'*--server=[Set the key server to use.  Can be given multiple times.]:URI: ' \
'--output=[Write to FILE (or stdout when omitted) instead of importing into the certificate store]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'()--all[Fetch updates for all known certificates]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::query -- Retrieve certificate(s) using QUERY. This may be a fingerprint, a KeyID, an email address, or a https URL.:' \
&& ret=0
;;
(keyserver)
_arguments "${_arguments_options[@]}" \
'*--server=[Set the key server to use.  Can be given multiple times.]:URI: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__network__keyserver_commands" \
"*::: :->keyserver" \
&& ret=0

    case $state in
    (keyserver)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-keyserver-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE (or stdout when omitted) instead of importing into the certificate store]:FILE: ' \
'*--server=[Set the key server to use.  Can be given multiple times.]:URI: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'()--all[Fetch updates for all known certificates]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::query -- Retrieve certificate(s) using QUERY. This may be a fingerprint, a KeyID, or an email address.:' \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
'()--cert=[Publish the given cert]:FINGERPRINT|KEYID: ' \
'*--server=[Set the key server to use.  Can be given multiple times.]:URI: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--require-all[Require that all publish operations succeed and return an error otherwise.  By default we only require that one publish operation succeeds.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__keyserver__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-keyserver-help-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(wkd)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__network__wkd_commands" \
"*::: :->wkd" \
&& ret=0

    case $state in
    (wkd)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-wkd-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE (or stdout when omitted) instead of importing into the certificate store]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'()--all[Fetch updates for all known certificates]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::addresses -- Retrieve certificate(s) for ADDRESS:' \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
'--create=[Create the WKD hierarchy if it does not exist yet]' \
'*--cert=[Insert the given cert into the WKD]:FINGERPRINT: ' \
'--rsync=[Path to the local rsync command to use]' \
'--domain=[Generate a WKD for a fully qualified domain name for email]:FQDN: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':destination -- WKD location on the server, passed to rsync(1):' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__wkd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-wkd-help-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(dane)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__network__dane_commands" \
"*::: :->dane" \
&& ret=0

    case $state in
    (dane)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-dane-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE (or stdout when omitted) instead of importing into the certificate store]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'()--all[Fetch updates for all known certificates]' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::addresses -- Retrieve certificate(s) for ADDRESS:' \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
'--ttl=[Set the TTL (maximum cache duration) of the resource records]:DURATION: ' \
'--size-limit=[Try to shrink the certificates to this size]:BYTES: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--generic[Emit generic resource records \[default\: OPENPGPKEY records\]]' \
'--skip[Skip expired certificates and those that do not have User IDs for given domain.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':domain -- Generate DANE records for this domain name:' \
'::input -- Emit records for certificates from CERT-RING (or stdin if omitted):' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__dane__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-dane-help-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-help-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(keyserver)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__help__keyserver_commands" \
"*::: :->keyserver" \
&& ret=0

    case $state in
    (keyserver)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-help-keyserver-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(wkd)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__help__wkd_commands" \
"*::: :->wkd" \
&& ret=0

    case $state in
    (wkd)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-help-wkd-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(dane)
_arguments "${_arguments_options[@]}" \
":: :_sq__network__help__dane_commands" \
"*::: :->dane" \
&& ret=0

    case $state in
    (dane)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-network-help-dane-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(toolbox)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__toolbox_commands" \
"*::: :->toolbox" \
&& ret=0

    case $state in
    (toolbox)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-command-$line[1]:"
        case $line[1] in
            (keyring)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__toolbox__keyring_commands" \
"*::: :->keyring" \
&& ret=0

    case $state in
    (keyring)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-keyring-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--all-userids[List all user ids]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
'--prefix=[Write to files with PREFIX \[defaults\: \`FILE-\` if FILE is set, or \`output-\` if read from stdin\]]:PREFIX: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(merge)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::input -- Read from FILE or stdin if omitted:_files' \
&& ret=0
;;
(filter)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'*--userid=[Match on USERID]:USERID: ' \
'*--name=[Match on NAME]:NAME: ' \
'*--email=[Match on email ADDRESS]:ADDRESS: ' \
'*--domain=[Match on email domain FQDN]:FQDN: ' \
'*--handle=[Match on (sub)key fingerprints and key ids]:FINGERPRINT|KEYID: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--prune-certs[Remove certificate components not matching the filter]' \
'--binary[Emit binary data]' \
'--to-cert[Convert any keys in the input to certificates.  Converting a key to a certificate removes secret key material from the key thereby turning it into a certificate.]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::input -- Read from FILE or stdin if omitted:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__toolbox__keyring__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-keyring-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(merge)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(filter)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(extract-cert)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(packet)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_sq__toolbox__packet_commands" \
"*::: :->packet" \
&& ret=0

    case $state in
    (packet)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-packet-command-$line[1]:"
        case $line[1] in
            (dump)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'*--session-key=[Decrypt an encrypted message using SESSION-KEY]:SESSION-KEY: ' \
'*--recipient-file=[Decrypt the message using the key in KEY_FILE]:KEY_FILE:_files' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--mpis[Print cryptographic artifacts]' \
'--hex[Print a hexdump]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'*--recipient-file=[Decrypt the message using the key in KEY_FILE]:KEY_FILE:_files' \
'*--session-key=[Decrypt an encrypted message using SESSION-KEY]:SESSION-KEY: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--dump-session-key[Print the session key to stderr]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
'--prefix=[Write to files with PREFIX \[defaults\: \`FILE-\` if FILE is set, or \`output-\` if read from stdin\]]:PREFIX: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(join)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'(--binary)--label=[Select the kind of armor header]:LABEL:(auto message cert key sig file)' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--binary[Emit binary data]' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::input -- Read from FILE or stdin if omitted:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__toolbox__packet__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-packet-help-command-$line[1]:"
        case $line[1] in
            (dump)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(join)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(armor)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--label=[Select the kind of armor header]:LABEL:(auto message cert key sig file)' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(dearmor)
_arguments "${_arguments_options[@]}" \
'--output=[Write to FILE or stdout if omitted]:FILE: ' \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::input -- Read from FILE or stdin if FILE is '\''-'\'':' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__toolbox__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-help-command-$line[1]:"
        case $line[1] in
            (keyring)
_arguments "${_arguments_options[@]}" \
":: :_sq__toolbox__help__keyring_commands" \
"*::: :->keyring" \
&& ret=0

    case $state in
    (keyring)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-help-keyring-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(merge)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(filter)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(extract-cert)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(packet)
_arguments "${_arguments_options[@]}" \
":: :_sq__toolbox__help__packet_commands" \
"*::: :->packet" \
&& ret=0

    case $state in
    (packet)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-toolbox-help-packet-command-$line[1]:"
        case $line[1] in
            (dump)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(join)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(armor)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(dearmor)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(version)
_arguments "${_arguments_options[@]}" \
'--home=[Set the home directory.]:HOME:_files' \
'(--no-key-store)--key-store=[Override the key store server and its data]:PATH:_files' \
'(--no-cert-store)--cert-store=[Specify the location of the certificate store]:PATH:_files' \
'--pep-cert-store=[Specify the location of a pEp certificate store]:PATH:_files' \
'*--keyring=[Specify the location of a keyring to use]:PATH:_files' \
'*--known-notation=[Add NOTATION to the list of known notations]:NOTATION: ' \
'--time=[Set the reference time as ISO 8601 formatted timestamp]:TIME: ' \
'*--trust-root=[Consider the specified certificate to be a trust root]:FINGERPRINT|KEYID: ' \
'*--password-file=[Seed the password cache with the specified password]:FILE:_files' \
'--force[Overwrite existing files]' \
'--no-key-store[Disable the use of the key store.]' \
'--no-cert-store[Disable the use of a certificate store]' \
'-v[Be more verbose.]' \
'--verbose[Be more verbose.]' \
'--batch[Prevents any kind of prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
":: :_sq__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-command-$line[1]:"
        case $line[1] in
            (encrypt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(sign)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(verify)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(inspect)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(cert)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__cert_commands" \
"*::: :->cert" \
&& ret=0

    case $state in
    (cert)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-cert-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(lint)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(key)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__key_commands" \
"*::: :->key" \
&& ret=0

    case $state in
    (key)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-key-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(userid)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__key__userid_commands" \
"*::: :->userid" \
&& ret=0

    case $state in
    (userid)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-key-userid-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(strip)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(subkey)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__key__subkey_commands" \
"*::: :->subkey" \
&& ret=0

    case $state in
    (subkey)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-key-subkey-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(password)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(expire)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(revoke)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(approvals)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__key__approvals_commands" \
"*::: :->approvals" \
&& ret=0

    case $state in
    (approvals)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-key-approvals-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(adopt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(pki)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__pki_commands" \
"*::: :->pki" \
&& ret=0

    case $state in
    (pki)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-pki-command-$line[1]:"
        case $line[1] in
            (authenticate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(lookup)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(identify)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(certify)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(link)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__pki__link_commands" \
"*::: :->link" \
&& ret=0

    case $state in
    (link)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-pki-link-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(retract)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(path)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(autocrypt)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__autocrypt_commands" \
"*::: :->autocrypt" \
&& ret=0

    case $state in
    (autocrypt)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-autocrypt-command-$line[1]:"
        case $line[1] in
            (import)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decode)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(encode-sender)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(network)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__network_commands" \
"*::: :->network" \
&& ret=0

    case $state in
    (network)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-network-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(keyserver)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__network__keyserver_commands" \
"*::: :->keyserver" \
&& ret=0

    case $state in
    (keyserver)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-network-keyserver-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(wkd)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__network__wkd_commands" \
"*::: :->wkd" \
&& ret=0

    case $state in
    (wkd)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-network-wkd-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(publish)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(dane)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__network__dane_commands" \
"*::: :->dane" \
&& ret=0

    case $state in
    (dane)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-network-dane-command-$line[1]:"
        case $line[1] in
            (fetch)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(toolbox)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__toolbox_commands" \
"*::: :->toolbox" \
&& ret=0

    case $state in
    (toolbox)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-toolbox-command-$line[1]:"
        case $line[1] in
            (keyring)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__toolbox__keyring_commands" \
"*::: :->keyring" \
&& ret=0

    case $state in
    (keyring)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-toolbox-keyring-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(merge)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(filter)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(extract-cert)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(packet)
_arguments "${_arguments_options[@]}" \
":: :_sq__help__toolbox__packet_commands" \
"*::: :->packet" \
&& ret=0

    case $state in
    (packet)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:sq-help-toolbox-packet-command-$line[1]:"
        case $line[1] in
            (dump)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(decrypt)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(split)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(join)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(armor)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(dearmor)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
(version)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
}

(( $+functions[_sq_commands] )) ||
_sq_commands() {
    local commands; commands=(
'encrypt:Encrypt a message' \
'decrypt:Decrypt a message' \
'sign:Sign messages or data files' \
'verify:Verify signed messages or detached signatures' \
'inspect:Inspect data, like file(1)' \
'cert:Manage certificates' \
'key:Manage keys' \
'pki:Authenticate certs using the Web of Trust' \
'autocrypt:Communicate certificates using Autocrypt' \
'network:Retrieve and publish certificates over the network' \
'toolbox:Tools for developers, maintainers, and forensic specialists' \
'version:Detailed version and output version information' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__add_commands] )) ||
_sq__help__key__subkey__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey add commands' commands "$@"
}
(( $+functions[_sq__help__key__userid__add_commands] )) ||
_sq__help__key__userid__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key userid add commands' commands "$@"
}
(( $+functions[_sq__help__pki__link__add_commands] )) ||
_sq__help__pki__link__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki link add commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__add_commands] )) ||
_sq__key__help__subkey__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey add commands' commands "$@"
}
(( $+functions[_sq__key__help__userid__add_commands] )) ||
_sq__key__help__userid__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help userid add commands' commands "$@"
}
(( $+functions[_sq__key__subkey__add_commands] )) ||
_sq__key__subkey__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey add commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__add_commands] )) ||
_sq__key__subkey__help__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help add commands' commands "$@"
}
(( $+functions[_sq__key__userid__add_commands] )) ||
_sq__key__userid__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid add commands' commands "$@"
}
(( $+functions[_sq__key__userid__help__add_commands] )) ||
_sq__key__userid__help__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid help add commands' commands "$@"
}
(( $+functions[_sq__pki__help__link__add_commands] )) ||
_sq__pki__help__link__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help link add commands' commands "$@"
}
(( $+functions[_sq__pki__link__add_commands] )) ||
_sq__pki__link__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link add commands' commands "$@"
}
(( $+functions[_sq__pki__link__help__add_commands] )) ||
_sq__pki__link__help__add_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link help add commands' commands "$@"
}
(( $+functions[_sq__help__key__adopt_commands] )) ||
_sq__help__key__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key adopt commands' commands "$@"
}
(( $+functions[_sq__key__adopt_commands] )) ||
_sq__key__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'sq key adopt commands' commands "$@"
}
(( $+functions[_sq__key__help__adopt_commands] )) ||
_sq__key__help__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help adopt commands' commands "$@"
}
(( $+functions[_sq__help__key__approvals_commands] )) ||
_sq__help__key__approvals_commands() {
    local commands; commands=(
'list:Lists third-party certifications' \
'update:Approves of third-party certifications' \
    )
    _describe -t commands 'sq help key approvals commands' commands "$@"
}
(( $+functions[_sq__key__approvals_commands] )) ||
_sq__key__approvals_commands() {
    local commands; commands=(
'list:Lists third-party certifications' \
'update:Approves of third-party certifications' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key approvals commands' commands "$@"
}
(( $+functions[_sq__key__help__approvals_commands] )) ||
_sq__key__help__approvals_commands() {
    local commands; commands=(
'list:Lists third-party certifications' \
'update:Approves of third-party certifications' \
    )
    _describe -t commands 'sq key help approvals commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__armor_commands] )) ||
_sq__help__toolbox__armor_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox armor commands' commands "$@"
}
(( $+functions[_sq__toolbox__armor_commands] )) ||
_sq__toolbox__armor_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox armor commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__armor_commands] )) ||
_sq__toolbox__help__armor_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help armor commands' commands "$@"
}
(( $+functions[_sq__help__pki__authenticate_commands] )) ||
_sq__help__pki__authenticate_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki authenticate commands' commands "$@"
}
(( $+functions[_sq__pki__authenticate_commands] )) ||
_sq__pki__authenticate_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki authenticate commands' commands "$@"
}
(( $+functions[_sq__pki__help__authenticate_commands] )) ||
_sq__pki__help__authenticate_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help authenticate commands' commands "$@"
}
(( $+functions[_sq__autocrypt_commands] )) ||
_sq__autocrypt_commands() {
    local commands; commands=(
'import:Import Autocrypt-encoded certificates' \
'decode:Read Autocrypt-encoded certificates' \
'encode-sender:Encode a certificate into an Autocrypt header' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq autocrypt commands' commands "$@"
}
(( $+functions[_sq__help__autocrypt_commands] )) ||
_sq__help__autocrypt_commands() {
    local commands; commands=(
'import:Import Autocrypt-encoded certificates' \
'decode:Read Autocrypt-encoded certificates' \
'encode-sender:Encode a certificate into an Autocrypt header' \
    )
    _describe -t commands 'sq help autocrypt commands' commands "$@"
}
(( $+functions[_sq__cert_commands] )) ||
_sq__cert_commands() {
    local commands; commands=(
'import:Import certificates into the local certificate store' \
'export:Export certificates from the local certificate store' \
'lint:Check certificates for issues' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq cert commands' commands "$@"
}
(( $+functions[_sq__help__cert_commands] )) ||
_sq__help__cert_commands() {
    local commands; commands=(
'import:Import certificates into the local certificate store' \
'export:Export certificates from the local certificate store' \
'lint:Check certificates for issues' \
    )
    _describe -t commands 'sq help cert commands' commands "$@"
}
(( $+functions[_sq__help__pki__certify_commands] )) ||
_sq__help__pki__certify_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki certify commands' commands "$@"
}
(( $+functions[_sq__pki__certify_commands] )) ||
_sq__pki__certify_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki certify commands' commands "$@"
}
(( $+functions[_sq__pki__help__certify_commands] )) ||
_sq__pki__help__certify_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help certify commands' commands "$@"
}
(( $+functions[_sq__help__network__dane_commands] )) ||
_sq__help__network__dane_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using DANE' \
'generate:Generate DANE records for the given domain and certs' \
    )
    _describe -t commands 'sq help network dane commands' commands "$@"
}
(( $+functions[_sq__network__dane_commands] )) ||
_sq__network__dane_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using DANE' \
'generate:Generate DANE records for the given domain and certs' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network dane commands' commands "$@"
}
(( $+functions[_sq__network__help__dane_commands] )) ||
_sq__network__help__dane_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using DANE' \
'generate:Generate DANE records for the given domain and certs' \
    )
    _describe -t commands 'sq network help dane commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__dearmor_commands] )) ||
_sq__help__toolbox__dearmor_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox dearmor commands' commands "$@"
}
(( $+functions[_sq__toolbox__dearmor_commands] )) ||
_sq__toolbox__dearmor_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox dearmor commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__dearmor_commands] )) ||
_sq__toolbox__help__dearmor_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help dearmor commands' commands "$@"
}
(( $+functions[_sq__autocrypt__decode_commands] )) ||
_sq__autocrypt__decode_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt decode commands' commands "$@"
}
(( $+functions[_sq__autocrypt__help__decode_commands] )) ||
_sq__autocrypt__help__decode_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt help decode commands' commands "$@"
}
(( $+functions[_sq__help__autocrypt__decode_commands] )) ||
_sq__help__autocrypt__decode_commands() {
    local commands; commands=()
    _describe -t commands 'sq help autocrypt decode commands' commands "$@"
}
(( $+functions[_sq__decrypt_commands] )) ||
_sq__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq decrypt commands' commands "$@"
}
(( $+functions[_sq__help__decrypt_commands] )) ||
_sq__help__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq help decrypt commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__packet__decrypt_commands] )) ||
_sq__help__toolbox__packet__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox packet decrypt commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__packet__decrypt_commands] )) ||
_sq__toolbox__help__packet__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help packet decrypt commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__decrypt_commands] )) ||
_sq__toolbox__packet__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet decrypt commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help__decrypt_commands] )) ||
_sq__toolbox__packet__help__decrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet help decrypt commands' commands "$@"
}
(( $+functions[_sq__help__key__delete_commands] )) ||
_sq__help__key__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key delete commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__delete_commands] )) ||
_sq__help__key__subkey__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey delete commands' commands "$@"
}
(( $+functions[_sq__key__delete_commands] )) ||
_sq__key__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq key delete commands' commands "$@"
}
(( $+functions[_sq__key__help__delete_commands] )) ||
_sq__key__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help delete commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__delete_commands] )) ||
_sq__key__help__subkey__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey delete commands' commands "$@"
}
(( $+functions[_sq__key__subkey__delete_commands] )) ||
_sq__key__subkey__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey delete commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__delete_commands] )) ||
_sq__key__subkey__help__delete_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help delete commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__packet__dump_commands] )) ||
_sq__help__toolbox__packet__dump_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox packet dump commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__packet__dump_commands] )) ||
_sq__toolbox__help__packet__dump_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help packet dump commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__dump_commands] )) ||
_sq__toolbox__packet__dump_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet dump commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help__dump_commands] )) ||
_sq__toolbox__packet__help__dump_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet help dump commands' commands "$@"
}
(( $+functions[_sq__autocrypt__encode-sender_commands] )) ||
_sq__autocrypt__encode-sender_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt encode-sender commands' commands "$@"
}
(( $+functions[_sq__autocrypt__help__encode-sender_commands] )) ||
_sq__autocrypt__help__encode-sender_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt help encode-sender commands' commands "$@"
}
(( $+functions[_sq__help__autocrypt__encode-sender_commands] )) ||
_sq__help__autocrypt__encode-sender_commands() {
    local commands; commands=()
    _describe -t commands 'sq help autocrypt encode-sender commands' commands "$@"
}
(( $+functions[_sq__encrypt_commands] )) ||
_sq__encrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq encrypt commands' commands "$@"
}
(( $+functions[_sq__help__encrypt_commands] )) ||
_sq__help__encrypt_commands() {
    local commands; commands=()
    _describe -t commands 'sq help encrypt commands' commands "$@"
}
(( $+functions[_sq__help__key__expire_commands] )) ||
_sq__help__key__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key expire commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__expire_commands] )) ||
_sq__help__key__subkey__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey expire commands' commands "$@"
}
(( $+functions[_sq__key__expire_commands] )) ||
_sq__key__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq key expire commands' commands "$@"
}
(( $+functions[_sq__key__help__expire_commands] )) ||
_sq__key__help__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help expire commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__expire_commands] )) ||
_sq__key__help__subkey__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey expire commands' commands "$@"
}
(( $+functions[_sq__key__subkey__expire_commands] )) ||
_sq__key__subkey__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey expire commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__expire_commands] )) ||
_sq__key__subkey__help__expire_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help expire commands' commands "$@"
}
(( $+functions[_sq__cert__export_commands] )) ||
_sq__cert__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert export commands' commands "$@"
}
(( $+functions[_sq__cert__help__export_commands] )) ||
_sq__cert__help__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert help export commands' commands "$@"
}
(( $+functions[_sq__help__cert__export_commands] )) ||
_sq__help__cert__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq help cert export commands' commands "$@"
}
(( $+functions[_sq__help__key__export_commands] )) ||
_sq__help__key__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key export commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__export_commands] )) ||
_sq__help__key__subkey__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey export commands' commands "$@"
}
(( $+functions[_sq__key__export_commands] )) ||
_sq__key__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq key export commands' commands "$@"
}
(( $+functions[_sq__key__help__export_commands] )) ||
_sq__key__help__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help export commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__export_commands] )) ||
_sq__key__help__subkey__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey export commands' commands "$@"
}
(( $+functions[_sq__key__subkey__export_commands] )) ||
_sq__key__subkey__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey export commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__export_commands] )) ||
_sq__key__subkey__help__export_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help export commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__extract-cert_commands] )) ||
_sq__help__toolbox__extract-cert_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox extract-cert commands' commands "$@"
}
(( $+functions[_sq__toolbox__extract-cert_commands] )) ||
_sq__toolbox__extract-cert_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox extract-cert commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__extract-cert_commands] )) ||
_sq__toolbox__help__extract-cert_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help extract-cert commands' commands "$@"
}
(( $+functions[_sq__help__network__dane__fetch_commands] )) ||
_sq__help__network__dane__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network dane fetch commands' commands "$@"
}
(( $+functions[_sq__help__network__fetch_commands] )) ||
_sq__help__network__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network fetch commands' commands "$@"
}
(( $+functions[_sq__help__network__keyserver__fetch_commands] )) ||
_sq__help__network__keyserver__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network keyserver fetch commands' commands "$@"
}
(( $+functions[_sq__help__network__wkd__fetch_commands] )) ||
_sq__help__network__wkd__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network wkd fetch commands' commands "$@"
}
(( $+functions[_sq__network__dane__fetch_commands] )) ||
_sq__network__dane__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network dane fetch commands' commands "$@"
}
(( $+functions[_sq__network__dane__help__fetch_commands] )) ||
_sq__network__dane__help__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network dane help fetch commands' commands "$@"
}
(( $+functions[_sq__network__fetch_commands] )) ||
_sq__network__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network fetch commands' commands "$@"
}
(( $+functions[_sq__network__help__dane__fetch_commands] )) ||
_sq__network__help__dane__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help dane fetch commands' commands "$@"
}
(( $+functions[_sq__network__help__fetch_commands] )) ||
_sq__network__help__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help fetch commands' commands "$@"
}
(( $+functions[_sq__network__help__keyserver__fetch_commands] )) ||
_sq__network__help__keyserver__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help keyserver fetch commands' commands "$@"
}
(( $+functions[_sq__network__help__wkd__fetch_commands] )) ||
_sq__network__help__wkd__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help wkd fetch commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__fetch_commands] )) ||
_sq__network__keyserver__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network keyserver fetch commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__help__fetch_commands] )) ||
_sq__network__keyserver__help__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network keyserver help fetch commands' commands "$@"
}
(( $+functions[_sq__network__wkd__fetch_commands] )) ||
_sq__network__wkd__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network wkd fetch commands' commands "$@"
}
(( $+functions[_sq__network__wkd__help__fetch_commands] )) ||
_sq__network__wkd__help__fetch_commands() {
    local commands; commands=()
    _describe -t commands 'sq network wkd help fetch commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__keyring__filter_commands] )) ||
_sq__help__toolbox__keyring__filter_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox keyring filter commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__keyring__filter_commands] )) ||
_sq__toolbox__help__keyring__filter_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help keyring filter commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__filter_commands] )) ||
_sq__toolbox__keyring__filter_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring filter commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help__filter_commands] )) ||
_sq__toolbox__keyring__help__filter_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring help filter commands' commands "$@"
}
(( $+functions[_sq__help__key__generate_commands] )) ||
_sq__help__key__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key generate commands' commands "$@"
}
(( $+functions[_sq__help__network__dane__generate_commands] )) ||
_sq__help__network__dane__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network dane generate commands' commands "$@"
}
(( $+functions[_sq__key__generate_commands] )) ||
_sq__key__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq key generate commands' commands "$@"
}
(( $+functions[_sq__key__help__generate_commands] )) ||
_sq__key__help__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help generate commands' commands "$@"
}
(( $+functions[_sq__network__dane__generate_commands] )) ||
_sq__network__dane__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq network dane generate commands' commands "$@"
}
(( $+functions[_sq__network__dane__help__generate_commands] )) ||
_sq__network__dane__help__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq network dane help generate commands' commands "$@"
}
(( $+functions[_sq__network__help__dane__generate_commands] )) ||
_sq__network__help__dane__generate_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help dane generate commands' commands "$@"
}
(( $+functions[_sq__autocrypt__help_commands] )) ||
_sq__autocrypt__help_commands() {
    local commands; commands=(
'import:Import Autocrypt-encoded certificates' \
'decode:Read Autocrypt-encoded certificates' \
'encode-sender:Encode a certificate into an Autocrypt header' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq autocrypt help commands' commands "$@"
}
(( $+functions[_sq__autocrypt__help__help_commands] )) ||
_sq__autocrypt__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt help help commands' commands "$@"
}
(( $+functions[_sq__cert__help_commands] )) ||
_sq__cert__help_commands() {
    local commands; commands=(
'import:Import certificates into the local certificate store' \
'export:Export certificates from the local certificate store' \
'lint:Check certificates for issues' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq cert help commands' commands "$@"
}
(( $+functions[_sq__cert__help__help_commands] )) ||
_sq__cert__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert help help commands' commands "$@"
}
(( $+functions[_sq__help_commands] )) ||
_sq__help_commands() {
    local commands; commands=(
'encrypt:Encrypt a message' \
'decrypt:Decrypt a message' \
'sign:Sign messages or data files' \
'verify:Verify signed messages or detached signatures' \
'inspect:Inspect data, like file(1)' \
'cert:Manage certificates' \
'key:Manage keys' \
'pki:Authenticate certs using the Web of Trust' \
'autocrypt:Communicate certificates using Autocrypt' \
'network:Retrieve and publish certificates over the network' \
'toolbox:Tools for developers, maintainers, and forensic specialists' \
'version:Detailed version and output version information' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq help commands' commands "$@"
}
(( $+functions[_sq__help__help_commands] )) ||
_sq__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq help help commands' commands "$@"
}
(( $+functions[_sq__key__approvals__help_commands] )) ||
_sq__key__approvals__help_commands() {
    local commands; commands=(
'list:Lists third-party certifications' \
'update:Approves of third-party certifications' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key approvals help commands' commands "$@"
}
(( $+functions[_sq__key__approvals__help__help_commands] )) ||
_sq__key__approvals__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq key approvals help help commands' commands "$@"
}
(( $+functions[_sq__key__help_commands] )) ||
_sq__key__help_commands() {
    local commands; commands=(
'list:List keys managed by the key store' \
'generate:Generate a new key' \
'import:Import keys into the key store' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change expiration times' \
'revoke:Revoke a certificate' \
'userid:Manage User IDs' \
'subkey:Manage subkeys' \
'approvals:Manages certification approvals' \
'adopt:Bind keys from one certificate to another' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key help commands' commands "$@"
}
(( $+functions[_sq__key__help__help_commands] )) ||
_sq__key__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help help commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help_commands] )) ||
_sq__key__subkey__help_commands() {
    local commands; commands=(
'add:Add a new subkey to a certificate' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change a subkey'\''s expiration time' \
'revoke:Revoke a subkey' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key subkey help commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__help_commands] )) ||
_sq__key__subkey__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help help commands' commands "$@"
}
(( $+functions[_sq__key__userid__help_commands] )) ||
_sq__key__userid__help_commands() {
    local commands; commands=(
'add:Add a user ID' \
'revoke:Revoke a user ID' \
'strip:Strip a user ID' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key userid help commands' commands "$@"
}
(( $+functions[_sq__key__userid__help__help_commands] )) ||
_sq__key__userid__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid help help commands' commands "$@"
}
(( $+functions[_sq__network__dane__help_commands] )) ||
_sq__network__dane__help_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using DANE' \
'generate:Generate DANE records for the given domain and certs' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network dane help commands' commands "$@"
}
(( $+functions[_sq__network__dane__help__help_commands] )) ||
_sq__network__dane__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq network dane help help commands' commands "$@"
}
(( $+functions[_sq__network__help_commands] )) ||
_sq__network__help_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using all supported network services' \
'keyserver:Retrieve and publishes certificates via key servers' \
'wkd:Retrieve and publishes certificates via Web Key Directories' \
'dane:Retrieve and publishes certificates via DANE' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network help commands' commands "$@"
}
(( $+functions[_sq__network__help__help_commands] )) ||
_sq__network__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help help commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__help_commands] )) ||
_sq__network__keyserver__help_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from key servers' \
'publish:Publish certificates on key servers' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network keyserver help commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__help__help_commands] )) ||
_sq__network__keyserver__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq network keyserver help help commands' commands "$@"
}
(( $+functions[_sq__network__wkd__help_commands] )) ||
_sq__network__wkd__help_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from a Web Key Directory' \
'publish:Publish certificates in a Web Key Directory' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network wkd help commands' commands "$@"
}
(( $+functions[_sq__network__wkd__help__help_commands] )) ||
_sq__network__wkd__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq network wkd help help commands' commands "$@"
}
(( $+functions[_sq__pki__help_commands] )) ||
_sq__pki__help_commands() {
    local commands; commands=(
'authenticate:Authenticate a binding' \
'lookup:Lookup the certificates associated with a User ID' \
'identify:Identify a certificate' \
'certify:Certify a User ID for a Certificate' \
'link:Manage authenticated certificate and User ID links' \
'list:List all authenticated bindings (User ID and certificate pairs)' \
'path:Verify the specified path' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq pki help commands' commands "$@"
}
(( $+functions[_sq__pki__help__help_commands] )) ||
_sq__pki__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help help commands' commands "$@"
}
(( $+functions[_sq__pki__link__help_commands] )) ||
_sq__pki__link__help_commands() {
    local commands; commands=(
'add:Link a certificate and a User ID' \
'retract:Retract links' \
'list:List links' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq pki link help commands' commands "$@"
}
(( $+functions[_sq__pki__link__help__help_commands] )) ||
_sq__pki__link__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link help help commands' commands "$@"
}
(( $+functions[_sq__toolbox__help_commands] )) ||
_sq__toolbox__help_commands() {
    local commands; commands=(
'keyring:Manage collections of keys or certs' \
'extract-cert:Convert a key to a cert' \
'packet:Low-level packet manipulation' \
'armor:Convert binary to ASCII' \
'dearmor:Convert ASCII to binary' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox help commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__help_commands] )) ||
_sq__toolbox__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help help commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help_commands] )) ||
_sq__toolbox__keyring__help_commands() {
    local commands; commands=(
'list:List keys in a keyring' \
'split:Split a keyring into individual keys' \
'merge:Merge keys or keyrings into a single keyring' \
'filter:Join keys into a keyring applying a filter' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox keyring help commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help__help_commands] )) ||
_sq__toolbox__keyring__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring help help commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help_commands] )) ||
_sq__toolbox__packet__help_commands() {
    local commands; commands=(
'dump:List packets' \
'decrypt:Unwrap an encryption container' \
'split:Split a message into packets' \
'join:Join packets split across files' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox packet help commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help__help_commands] )) ||
_sq__toolbox__packet__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet help help commands' commands "$@"
}
(( $+functions[_sq__help__pki__identify_commands] )) ||
_sq__help__pki__identify_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki identify commands' commands "$@"
}
(( $+functions[_sq__pki__help__identify_commands] )) ||
_sq__pki__help__identify_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help identify commands' commands "$@"
}
(( $+functions[_sq__pki__identify_commands] )) ||
_sq__pki__identify_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki identify commands' commands "$@"
}
(( $+functions[_sq__autocrypt__help__import_commands] )) ||
_sq__autocrypt__help__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt help import commands' commands "$@"
}
(( $+functions[_sq__autocrypt__import_commands] )) ||
_sq__autocrypt__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq autocrypt import commands' commands "$@"
}
(( $+functions[_sq__cert__help__import_commands] )) ||
_sq__cert__help__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert help import commands' commands "$@"
}
(( $+functions[_sq__cert__import_commands] )) ||
_sq__cert__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert import commands' commands "$@"
}
(( $+functions[_sq__help__autocrypt__import_commands] )) ||
_sq__help__autocrypt__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq help autocrypt import commands' commands "$@"
}
(( $+functions[_sq__help__cert__import_commands] )) ||
_sq__help__cert__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq help cert import commands' commands "$@"
}
(( $+functions[_sq__help__key__import_commands] )) ||
_sq__help__key__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key import commands' commands "$@"
}
(( $+functions[_sq__key__help__import_commands] )) ||
_sq__key__help__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help import commands' commands "$@"
}
(( $+functions[_sq__key__import_commands] )) ||
_sq__key__import_commands() {
    local commands; commands=()
    _describe -t commands 'sq key import commands' commands "$@"
}
(( $+functions[_sq__help__inspect_commands] )) ||
_sq__help__inspect_commands() {
    local commands; commands=()
    _describe -t commands 'sq help inspect commands' commands "$@"
}
(( $+functions[_sq__inspect_commands] )) ||
_sq__inspect_commands() {
    local commands; commands=()
    _describe -t commands 'sq inspect commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__packet__join_commands] )) ||
_sq__help__toolbox__packet__join_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox packet join commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__packet__join_commands] )) ||
_sq__toolbox__help__packet__join_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help packet join commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help__join_commands] )) ||
_sq__toolbox__packet__help__join_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet help join commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__join_commands] )) ||
_sq__toolbox__packet__join_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet join commands' commands "$@"
}
(( $+functions[_sq__help__key_commands] )) ||
_sq__help__key_commands() {
    local commands; commands=(
'list:List keys managed by the key store' \
'generate:Generate a new key' \
'import:Import keys into the key store' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change expiration times' \
'revoke:Revoke a certificate' \
'userid:Manage User IDs' \
'subkey:Manage subkeys' \
'approvals:Manages certification approvals' \
'adopt:Bind keys from one certificate to another' \
    )
    _describe -t commands 'sq help key commands' commands "$@"
}
(( $+functions[_sq__key_commands] )) ||
_sq__key_commands() {
    local commands; commands=(
'list:List keys managed by the key store' \
'generate:Generate a new key' \
'import:Import keys into the key store' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change expiration times' \
'revoke:Revoke a certificate' \
'userid:Manage User IDs' \
'subkey:Manage subkeys' \
'approvals:Manages certification approvals' \
'adopt:Bind keys from one certificate to another' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__keyring_commands] )) ||
_sq__help__toolbox__keyring_commands() {
    local commands; commands=(
'list:List keys in a keyring' \
'split:Split a keyring into individual keys' \
'merge:Merge keys or keyrings into a single keyring' \
'filter:Join keys into a keyring applying a filter' \
    )
    _describe -t commands 'sq help toolbox keyring commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__keyring_commands] )) ||
_sq__toolbox__help__keyring_commands() {
    local commands; commands=(
'list:List keys in a keyring' \
'split:Split a keyring into individual keys' \
'merge:Merge keys or keyrings into a single keyring' \
'filter:Join keys into a keyring applying a filter' \
    )
    _describe -t commands 'sq toolbox help keyring commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring_commands] )) ||
_sq__toolbox__keyring_commands() {
    local commands; commands=(
'list:List keys in a keyring' \
'split:Split a keyring into individual keys' \
'merge:Merge keys or keyrings into a single keyring' \
'filter:Join keys into a keyring applying a filter' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox keyring commands' commands "$@"
}
(( $+functions[_sq__help__network__keyserver_commands] )) ||
_sq__help__network__keyserver_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from key servers' \
'publish:Publish certificates on key servers' \
    )
    _describe -t commands 'sq help network keyserver commands' commands "$@"
}
(( $+functions[_sq__network__help__keyserver_commands] )) ||
_sq__network__help__keyserver_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from key servers' \
'publish:Publish certificates on key servers' \
    )
    _describe -t commands 'sq network help keyserver commands' commands "$@"
}
(( $+functions[_sq__network__keyserver_commands] )) ||
_sq__network__keyserver_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from key servers' \
'publish:Publish certificates on key servers' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network keyserver commands' commands "$@"
}
(( $+functions[_sq__help__pki__link_commands] )) ||
_sq__help__pki__link_commands() {
    local commands; commands=(
'add:Link a certificate and a User ID' \
'retract:Retract links' \
'list:List links' \
    )
    _describe -t commands 'sq help pki link commands' commands "$@"
}
(( $+functions[_sq__pki__help__link_commands] )) ||
_sq__pki__help__link_commands() {
    local commands; commands=(
'add:Link a certificate and a User ID' \
'retract:Retract links' \
'list:List links' \
    )
    _describe -t commands 'sq pki help link commands' commands "$@"
}
(( $+functions[_sq__pki__link_commands] )) ||
_sq__pki__link_commands() {
    local commands; commands=(
'add:Link a certificate and a User ID' \
'retract:Retract links' \
'list:List links' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq pki link commands' commands "$@"
}
(( $+functions[_sq__cert__help__lint_commands] )) ||
_sq__cert__help__lint_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert help lint commands' commands "$@"
}
(( $+functions[_sq__cert__lint_commands] )) ||
_sq__cert__lint_commands() {
    local commands; commands=()
    _describe -t commands 'sq cert lint commands' commands "$@"
}
(( $+functions[_sq__help__cert__lint_commands] )) ||
_sq__help__cert__lint_commands() {
    local commands; commands=()
    _describe -t commands 'sq help cert lint commands' commands "$@"
}
(( $+functions[_sq__help__key__approvals__list_commands] )) ||
_sq__help__key__approvals__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key approvals list commands' commands "$@"
}
(( $+functions[_sq__help__key__list_commands] )) ||
_sq__help__key__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key list commands' commands "$@"
}
(( $+functions[_sq__help__pki__link__list_commands] )) ||
_sq__help__pki__link__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki link list commands' commands "$@"
}
(( $+functions[_sq__help__pki__list_commands] )) ||
_sq__help__pki__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki list commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__keyring__list_commands] )) ||
_sq__help__toolbox__keyring__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox keyring list commands' commands "$@"
}
(( $+functions[_sq__key__approvals__help__list_commands] )) ||
_sq__key__approvals__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq key approvals help list commands' commands "$@"
}
(( $+functions[_sq__key__approvals__list_commands] )) ||
_sq__key__approvals__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq key approvals list commands' commands "$@"
}
(( $+functions[_sq__key__help__approvals__list_commands] )) ||
_sq__key__help__approvals__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help approvals list commands' commands "$@"
}
(( $+functions[_sq__key__help__list_commands] )) ||
_sq__key__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help list commands' commands "$@"
}
(( $+functions[_sq__key__list_commands] )) ||
_sq__key__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq key list commands' commands "$@"
}
(( $+functions[_sq__pki__help__link__list_commands] )) ||
_sq__pki__help__link__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help link list commands' commands "$@"
}
(( $+functions[_sq__pki__help__list_commands] )) ||
_sq__pki__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help list commands' commands "$@"
}
(( $+functions[_sq__pki__link__help__list_commands] )) ||
_sq__pki__link__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link help list commands' commands "$@"
}
(( $+functions[_sq__pki__link__list_commands] )) ||
_sq__pki__link__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link list commands' commands "$@"
}
(( $+functions[_sq__pki__list_commands] )) ||
_sq__pki__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki list commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__keyring__list_commands] )) ||
_sq__toolbox__help__keyring__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help keyring list commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help__list_commands] )) ||
_sq__toolbox__keyring__help__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring help list commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__list_commands] )) ||
_sq__toolbox__keyring__list_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring list commands' commands "$@"
}
(( $+functions[_sq__help__pki__lookup_commands] )) ||
_sq__help__pki__lookup_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki lookup commands' commands "$@"
}
(( $+functions[_sq__pki__help__lookup_commands] )) ||
_sq__pki__help__lookup_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help lookup commands' commands "$@"
}
(( $+functions[_sq__pki__lookup_commands] )) ||
_sq__pki__lookup_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki lookup commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__keyring__merge_commands] )) ||
_sq__help__toolbox__keyring__merge_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox keyring merge commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__keyring__merge_commands] )) ||
_sq__toolbox__help__keyring__merge_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help keyring merge commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help__merge_commands] )) ||
_sq__toolbox__keyring__help__merge_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring help merge commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__merge_commands] )) ||
_sq__toolbox__keyring__merge_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring merge commands' commands "$@"
}
(( $+functions[_sq__help__network_commands] )) ||
_sq__help__network_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using all supported network services' \
'keyserver:Retrieve and publishes certificates via key servers' \
'wkd:Retrieve and publishes certificates via Web Key Directories' \
'dane:Retrieve and publishes certificates via DANE' \
    )
    _describe -t commands 'sq help network commands' commands "$@"
}
(( $+functions[_sq__network_commands] )) ||
_sq__network_commands() {
    local commands; commands=(
'fetch:Retrieve certificates using all supported network services' \
'keyserver:Retrieve and publishes certificates via key servers' \
'wkd:Retrieve and publishes certificates via Web Key Directories' \
'dane:Retrieve and publishes certificates via DANE' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__packet_commands] )) ||
_sq__help__toolbox__packet_commands() {
    local commands; commands=(
'dump:List packets' \
'decrypt:Unwrap an encryption container' \
'split:Split a message into packets' \
'join:Join packets split across files' \
    )
    _describe -t commands 'sq help toolbox packet commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__packet_commands] )) ||
_sq__toolbox__help__packet_commands() {
    local commands; commands=(
'dump:List packets' \
'decrypt:Unwrap an encryption container' \
'split:Split a message into packets' \
'join:Join packets split across files' \
    )
    _describe -t commands 'sq toolbox help packet commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet_commands] )) ||
_sq__toolbox__packet_commands() {
    local commands; commands=(
'dump:List packets' \
'decrypt:Unwrap an encryption container' \
'split:Split a message into packets' \
'join:Join packets split across files' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox packet commands' commands "$@"
}
(( $+functions[_sq__help__key__password_commands] )) ||
_sq__help__key__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key password commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__password_commands] )) ||
_sq__help__key__subkey__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey password commands' commands "$@"
}
(( $+functions[_sq__key__help__password_commands] )) ||
_sq__key__help__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help password commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__password_commands] )) ||
_sq__key__help__subkey__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey password commands' commands "$@"
}
(( $+functions[_sq__key__password_commands] )) ||
_sq__key__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq key password commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__password_commands] )) ||
_sq__key__subkey__help__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help password commands' commands "$@"
}
(( $+functions[_sq__key__subkey__password_commands] )) ||
_sq__key__subkey__password_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey password commands' commands "$@"
}
(( $+functions[_sq__help__pki__path_commands] )) ||
_sq__help__pki__path_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki path commands' commands "$@"
}
(( $+functions[_sq__pki__help__path_commands] )) ||
_sq__pki__help__path_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help path commands' commands "$@"
}
(( $+functions[_sq__pki__path_commands] )) ||
_sq__pki__path_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki path commands' commands "$@"
}
(( $+functions[_sq__help__pki_commands] )) ||
_sq__help__pki_commands() {
    local commands; commands=(
'authenticate:Authenticate a binding' \
'lookup:Lookup the certificates associated with a User ID' \
'identify:Identify a certificate' \
'certify:Certify a User ID for a Certificate' \
'link:Manage authenticated certificate and User ID links' \
'list:List all authenticated bindings (User ID and certificate pairs)' \
'path:Verify the specified path' \
    )
    _describe -t commands 'sq help pki commands' commands "$@"
}
(( $+functions[_sq__pki_commands] )) ||
_sq__pki_commands() {
    local commands; commands=(
'authenticate:Authenticate a binding' \
'lookup:Lookup the certificates associated with a User ID' \
'identify:Identify a certificate' \
'certify:Certify a User ID for a Certificate' \
'link:Manage authenticated certificate and User ID links' \
'list:List all authenticated bindings (User ID and certificate pairs)' \
'path:Verify the specified path' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq pki commands' commands "$@"
}
(( $+functions[_sq__help__network__keyserver__publish_commands] )) ||
_sq__help__network__keyserver__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network keyserver publish commands' commands "$@"
}
(( $+functions[_sq__help__network__wkd__publish_commands] )) ||
_sq__help__network__wkd__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq help network wkd publish commands' commands "$@"
}
(( $+functions[_sq__network__help__keyserver__publish_commands] )) ||
_sq__network__help__keyserver__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help keyserver publish commands' commands "$@"
}
(( $+functions[_sq__network__help__wkd__publish_commands] )) ||
_sq__network__help__wkd__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network help wkd publish commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__help__publish_commands] )) ||
_sq__network__keyserver__help__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network keyserver help publish commands' commands "$@"
}
(( $+functions[_sq__network__keyserver__publish_commands] )) ||
_sq__network__keyserver__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network keyserver publish commands' commands "$@"
}
(( $+functions[_sq__network__wkd__help__publish_commands] )) ||
_sq__network__wkd__help__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network wkd help publish commands' commands "$@"
}
(( $+functions[_sq__network__wkd__publish_commands] )) ||
_sq__network__wkd__publish_commands() {
    local commands; commands=()
    _describe -t commands 'sq network wkd publish commands' commands "$@"
}
(( $+functions[_sq__help__pki__link__retract_commands] )) ||
_sq__help__pki__link__retract_commands() {
    local commands; commands=()
    _describe -t commands 'sq help pki link retract commands' commands "$@"
}
(( $+functions[_sq__pki__help__link__retract_commands] )) ||
_sq__pki__help__link__retract_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki help link retract commands' commands "$@"
}
(( $+functions[_sq__pki__link__help__retract_commands] )) ||
_sq__pki__link__help__retract_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link help retract commands' commands "$@"
}
(( $+functions[_sq__pki__link__retract_commands] )) ||
_sq__pki__link__retract_commands() {
    local commands; commands=()
    _describe -t commands 'sq pki link retract commands' commands "$@"
}
(( $+functions[_sq__help__key__revoke_commands] )) ||
_sq__help__key__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key revoke commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey__revoke_commands] )) ||
_sq__help__key__subkey__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key subkey revoke commands' commands "$@"
}
(( $+functions[_sq__help__key__userid__revoke_commands] )) ||
_sq__help__key__userid__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key userid revoke commands' commands "$@"
}
(( $+functions[_sq__key__help__revoke_commands] )) ||
_sq__key__help__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help revoke commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey__revoke_commands] )) ||
_sq__key__help__subkey__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help subkey revoke commands' commands "$@"
}
(( $+functions[_sq__key__help__userid__revoke_commands] )) ||
_sq__key__help__userid__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help userid revoke commands' commands "$@"
}
(( $+functions[_sq__key__revoke_commands] )) ||
_sq__key__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key revoke commands' commands "$@"
}
(( $+functions[_sq__key__subkey__help__revoke_commands] )) ||
_sq__key__subkey__help__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey help revoke commands' commands "$@"
}
(( $+functions[_sq__key__subkey__revoke_commands] )) ||
_sq__key__subkey__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key subkey revoke commands' commands "$@"
}
(( $+functions[_sq__key__userid__help__revoke_commands] )) ||
_sq__key__userid__help__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid help revoke commands' commands "$@"
}
(( $+functions[_sq__key__userid__revoke_commands] )) ||
_sq__key__userid__revoke_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid revoke commands' commands "$@"
}
(( $+functions[_sq__help__sign_commands] )) ||
_sq__help__sign_commands() {
    local commands; commands=()
    _describe -t commands 'sq help sign commands' commands "$@"
}
(( $+functions[_sq__sign_commands] )) ||
_sq__sign_commands() {
    local commands; commands=()
    _describe -t commands 'sq sign commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__keyring__split_commands] )) ||
_sq__help__toolbox__keyring__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox keyring split commands' commands "$@"
}
(( $+functions[_sq__help__toolbox__packet__split_commands] )) ||
_sq__help__toolbox__packet__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq help toolbox packet split commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__keyring__split_commands] )) ||
_sq__toolbox__help__keyring__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help keyring split commands' commands "$@"
}
(( $+functions[_sq__toolbox__help__packet__split_commands] )) ||
_sq__toolbox__help__packet__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox help packet split commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__help__split_commands] )) ||
_sq__toolbox__keyring__help__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring help split commands' commands "$@"
}
(( $+functions[_sq__toolbox__keyring__split_commands] )) ||
_sq__toolbox__keyring__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox keyring split commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__help__split_commands] )) ||
_sq__toolbox__packet__help__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet help split commands' commands "$@"
}
(( $+functions[_sq__toolbox__packet__split_commands] )) ||
_sq__toolbox__packet__split_commands() {
    local commands; commands=()
    _describe -t commands 'sq toolbox packet split commands' commands "$@"
}
(( $+functions[_sq__help__key__userid__strip_commands] )) ||
_sq__help__key__userid__strip_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key userid strip commands' commands "$@"
}
(( $+functions[_sq__key__help__userid__strip_commands] )) ||
_sq__key__help__userid__strip_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help userid strip commands' commands "$@"
}
(( $+functions[_sq__key__userid__help__strip_commands] )) ||
_sq__key__userid__help__strip_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid help strip commands' commands "$@"
}
(( $+functions[_sq__key__userid__strip_commands] )) ||
_sq__key__userid__strip_commands() {
    local commands; commands=()
    _describe -t commands 'sq key userid strip commands' commands "$@"
}
(( $+functions[_sq__help__key__subkey_commands] )) ||
_sq__help__key__subkey_commands() {
    local commands; commands=(
'add:Add a new subkey to a certificate' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change a subkey'\''s expiration time' \
'revoke:Revoke a subkey' \
    )
    _describe -t commands 'sq help key subkey commands' commands "$@"
}
(( $+functions[_sq__key__help__subkey_commands] )) ||
_sq__key__help__subkey_commands() {
    local commands; commands=(
'add:Add a new subkey to a certificate' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change a subkey'\''s expiration time' \
'revoke:Revoke a subkey' \
    )
    _describe -t commands 'sq key help subkey commands' commands "$@"
}
(( $+functions[_sq__key__subkey_commands] )) ||
_sq__key__subkey_commands() {
    local commands; commands=(
'add:Add a new subkey to a certificate' \
'export:Export keys from the key store' \
'delete:Delete a certificate'\''s secret key material' \
'password:Change the password protecting secret key material' \
'expire:Change a subkey'\''s expiration time' \
'revoke:Revoke a subkey' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key subkey commands' commands "$@"
}
(( $+functions[_sq__help__toolbox_commands] )) ||
_sq__help__toolbox_commands() {
    local commands; commands=(
'keyring:Manage collections of keys or certs' \
'extract-cert:Convert a key to a cert' \
'packet:Low-level packet manipulation' \
'armor:Convert binary to ASCII' \
'dearmor:Convert ASCII to binary' \
    )
    _describe -t commands 'sq help toolbox commands' commands "$@"
}
(( $+functions[_sq__toolbox_commands] )) ||
_sq__toolbox_commands() {
    local commands; commands=(
'keyring:Manage collections of keys or certs' \
'extract-cert:Convert a key to a cert' \
'packet:Low-level packet manipulation' \
'armor:Convert binary to ASCII' \
'dearmor:Convert ASCII to binary' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq toolbox commands' commands "$@"
}
(( $+functions[_sq__help__key__approvals__update_commands] )) ||
_sq__help__key__approvals__update_commands() {
    local commands; commands=()
    _describe -t commands 'sq help key approvals update commands' commands "$@"
}
(( $+functions[_sq__key__approvals__help__update_commands] )) ||
_sq__key__approvals__help__update_commands() {
    local commands; commands=()
    _describe -t commands 'sq key approvals help update commands' commands "$@"
}
(( $+functions[_sq__key__approvals__update_commands] )) ||
_sq__key__approvals__update_commands() {
    local commands; commands=()
    _describe -t commands 'sq key approvals update commands' commands "$@"
}
(( $+functions[_sq__key__help__approvals__update_commands] )) ||
_sq__key__help__approvals__update_commands() {
    local commands; commands=()
    _describe -t commands 'sq key help approvals update commands' commands "$@"
}
(( $+functions[_sq__help__key__userid_commands] )) ||
_sq__help__key__userid_commands() {
    local commands; commands=(
'add:Add a user ID' \
'revoke:Revoke a user ID' \
'strip:Strip a user ID' \
    )
    _describe -t commands 'sq help key userid commands' commands "$@"
}
(( $+functions[_sq__key__help__userid_commands] )) ||
_sq__key__help__userid_commands() {
    local commands; commands=(
'add:Add a user ID' \
'revoke:Revoke a user ID' \
'strip:Strip a user ID' \
    )
    _describe -t commands 'sq key help userid commands' commands "$@"
}
(( $+functions[_sq__key__userid_commands] )) ||
_sq__key__userid_commands() {
    local commands; commands=(
'add:Add a user ID' \
'revoke:Revoke a user ID' \
'strip:Strip a user ID' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq key userid commands' commands "$@"
}
(( $+functions[_sq__help__verify_commands] )) ||
_sq__help__verify_commands() {
    local commands; commands=()
    _describe -t commands 'sq help verify commands' commands "$@"
}
(( $+functions[_sq__verify_commands] )) ||
_sq__verify_commands() {
    local commands; commands=()
    _describe -t commands 'sq verify commands' commands "$@"
}
(( $+functions[_sq__help__version_commands] )) ||
_sq__help__version_commands() {
    local commands; commands=()
    _describe -t commands 'sq help version commands' commands "$@"
}
(( $+functions[_sq__version_commands] )) ||
_sq__version_commands() {
    local commands; commands=()
    _describe -t commands 'sq version commands' commands "$@"
}
(( $+functions[_sq__help__network__wkd_commands] )) ||
_sq__help__network__wkd_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from a Web Key Directory' \
'publish:Publish certificates in a Web Key Directory' \
    )
    _describe -t commands 'sq help network wkd commands' commands "$@"
}
(( $+functions[_sq__network__help__wkd_commands] )) ||
_sq__network__help__wkd_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from a Web Key Directory' \
'publish:Publish certificates in a Web Key Directory' \
    )
    _describe -t commands 'sq network help wkd commands' commands "$@"
}
(( $+functions[_sq__network__wkd_commands] )) ||
_sq__network__wkd_commands() {
    local commands; commands=(
'fetch:Retrieve certificates from a Web Key Directory' \
'publish:Publish certificates in a Web Key Directory' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'sq network wkd commands' commands "$@"
}

if [ "$funcstack[1]" = "_sq" ]; then
    _sq "$@"
else
    compdef _sq sq
fi
