_rattler-build() {
    local i cur prev opts cmd
    COMPREPLY=()
    if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
        cur="$2"
    else
        cur="${COMP_WORDS[COMP_CWORD]}"
    fi
    prev="$3"
    cmd=""
    opts=""

    for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
    do
        case "${cmd},${i}" in
            ",$1")
                cmd="rattler__build"
                ;;
            rattler__build,auth)
                cmd="rattler__build__auth"
                ;;
            rattler__build,build)
                cmd="rattler__build__build"
                ;;
            rattler__build,completion)
                cmd="rattler__build__completion"
                ;;
            rattler__build,create-patch)
                cmd="rattler__build__create__patch"
                ;;
            rattler__build,debug)
                cmd="rattler__build__debug"
                ;;
            rattler__build,generate-recipe)
                cmd="rattler__build__generate__recipe"
                ;;
            rattler__build,help)
                cmd="rattler__build__help"
                ;;
            rattler__build,rebuild)
                cmd="rattler__build__rebuild"
                ;;
            rattler__build,test)
                cmd="rattler__build__test"
                ;;
            rattler__build,upload)
                cmd="rattler__build__upload"
                ;;
            rattler__build__auth,help)
                cmd="rattler__build__auth__help"
                ;;
            rattler__build__auth,login)
                cmd="rattler__build__auth__login"
                ;;
            rattler__build__auth,logout)
                cmd="rattler__build__auth__logout"
                ;;
            rattler__build__auth__help,help)
                cmd="rattler__build__auth__help__help"
                ;;
            rattler__build__auth__help,login)
                cmd="rattler__build__auth__help__login"
                ;;
            rattler__build__auth__help,logout)
                cmd="rattler__build__auth__help__logout"
                ;;
            rattler__build__generate__recipe,cpan)
                cmd="rattler__build__generate__recipe__cpan"
                ;;
            rattler__build__generate__recipe,cran)
                cmd="rattler__build__generate__recipe__cran"
                ;;
            rattler__build__generate__recipe,help)
                cmd="rattler__build__generate__recipe__help"
                ;;
            rattler__build__generate__recipe,luarocks)
                cmd="rattler__build__generate__recipe__luarocks"
                ;;
            rattler__build__generate__recipe,pypi)
                cmd="rattler__build__generate__recipe__pypi"
                ;;
            rattler__build__generate__recipe__help,cpan)
                cmd="rattler__build__generate__recipe__help__cpan"
                ;;
            rattler__build__generate__recipe__help,cran)
                cmd="rattler__build__generate__recipe__help__cran"
                ;;
            rattler__build__generate__recipe__help,help)
                cmd="rattler__build__generate__recipe__help__help"
                ;;
            rattler__build__generate__recipe__help,luarocks)
                cmd="rattler__build__generate__recipe__help__luarocks"
                ;;
            rattler__build__generate__recipe__help,pypi)
                cmd="rattler__build__generate__recipe__help__pypi"
                ;;
            rattler__build__help,auth)
                cmd="rattler__build__help__auth"
                ;;
            rattler__build__help,build)
                cmd="rattler__build__help__build"
                ;;
            rattler__build__help,completion)
                cmd="rattler__build__help__completion"
                ;;
            rattler__build__help,create-patch)
                cmd="rattler__build__help__create__patch"
                ;;
            rattler__build__help,debug)
                cmd="rattler__build__help__debug"
                ;;
            rattler__build__help,generate-recipe)
                cmd="rattler__build__help__generate__recipe"
                ;;
            rattler__build__help,help)
                cmd="rattler__build__help__help"
                ;;
            rattler__build__help,rebuild)
                cmd="rattler__build__help__rebuild"
                ;;
            rattler__build__help,test)
                cmd="rattler__build__help__test"
                ;;
            rattler__build__help,upload)
                cmd="rattler__build__help__upload"
                ;;
            rattler__build__help__auth,login)
                cmd="rattler__build__help__auth__login"
                ;;
            rattler__build__help__auth,logout)
                cmd="rattler__build__help__auth__logout"
                ;;
            rattler__build__help__generate__recipe,cpan)
                cmd="rattler__build__help__generate__recipe__cpan"
                ;;
            rattler__build__help__generate__recipe,cran)
                cmd="rattler__build__help__generate__recipe__cran"
                ;;
            rattler__build__help__generate__recipe,luarocks)
                cmd="rattler__build__help__generate__recipe__luarocks"
                ;;
            rattler__build__help__generate__recipe,pypi)
                cmd="rattler__build__help__generate__recipe__pypi"
                ;;
            rattler__build__help__upload,anaconda)
                cmd="rattler__build__help__upload__anaconda"
                ;;
            rattler__build__help__upload,artifactory)
                cmd="rattler__build__help__upload__artifactory"
                ;;
            rattler__build__help__upload,conda-forge)
                cmd="rattler__build__help__upload__conda__forge"
                ;;
            rattler__build__help__upload,prefix)
                cmd="rattler__build__help__upload__prefix"
                ;;
            rattler__build__help__upload,quetz)
                cmd="rattler__build__help__upload__quetz"
                ;;
            rattler__build__help__upload,s3)
                cmd="rattler__build__help__upload__s3"
                ;;
            rattler__build__upload,anaconda)
                cmd="rattler__build__upload__anaconda"
                ;;
            rattler__build__upload,artifactory)
                cmd="rattler__build__upload__artifactory"
                ;;
            rattler__build__upload,conda-forge)
                cmd="rattler__build__upload__conda__forge"
                ;;
            rattler__build__upload,help)
                cmd="rattler__build__upload__help"
                ;;
            rattler__build__upload,prefix)
                cmd="rattler__build__upload__prefix"
                ;;
            rattler__build__upload,quetz)
                cmd="rattler__build__upload__quetz"
                ;;
            rattler__build__upload,s3)
                cmd="rattler__build__upload__s3"
                ;;
            rattler__build__upload__help,anaconda)
                cmd="rattler__build__upload__help__anaconda"
                ;;
            rattler__build__upload__help,artifactory)
                cmd="rattler__build__upload__help__artifactory"
                ;;
            rattler__build__upload__help,conda-forge)
                cmd="rattler__build__upload__help__conda__forge"
                ;;
            rattler__build__upload__help,help)
                cmd="rattler__build__upload__help__help"
                ;;
            rattler__build__upload__help,prefix)
                cmd="rattler__build__upload__help__prefix"
                ;;
            rattler__build__upload__help,quetz)
                cmd="rattler__build__upload__help__quetz"
                ;;
            rattler__build__upload__help,s3)
                cmd="rattler__build__upload__help__s3"
                ;;
            *)
                ;;
        esac
    done

    case "${cmd}" in
        rattler__build)
            opts="-v -q -h -V --verbose --quiet --log-style --wrap-log-lines --config-file --color --help --version build test rebuild upload completion generate-recipe auth debug create-patch help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth)
            opts="-v -q -h --verbose --quiet --log-style --wrap-log-lines --config-file --color --help login logout help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__help)
            opts="login logout help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__help__help)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__help__login)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__help__logout)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__login)
            opts="-v -q -h --token --username --password --conda-token --s3-access-key-id --s3-secret-access-key --s3-session-token --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <HOST>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --username)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --password)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --conda-token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --s3-access-key-id)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --s3-secret-access-key)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --s3-session-token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__auth__logout)
            opts="-v -q -h --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <HOST>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__build)
            opts="-r -c -m -v -q -h --recipe --recipe-dir --up-to --build-platform --target-platform --host-platform --channel --variant-config --ignore-recipe-variants --render-only --with-solve --keep-build --no-build-id --package-format --compression-threads --io-concurrency-limit --no-include-recipe --no-test --test --color-build-log --output-dir --use-zstd --use-bz2 --experimental --allow-insecure-host --auth-file --channel-priority --tui --skip-existing --noarch-build-platform --extra-meta --sandbox --allow-network --allow-read --allow-read-execute --allow-read-write --overwrite-default-sandbox-config --debug --continue-on-failure --error-prefix-in-binary --allow-symlinks-on-windows --exclude-newer --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --recipe)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -r)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --recipe-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --up-to)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --build-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --target-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --host-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --variant-config)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -m)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --package-format)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --compression-threads)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --io-concurrency-limit)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --test)
                    COMPREPLY=($(compgen -W "skip native native-and-emulated" -- "${cur}"))
                    return 0
                    ;;
                --output-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-insecure-host)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --auth-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel-priority)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --skip-existing)
                    COMPREPLY=($(compgen -W "none local all" -- "${cur}"))
                    return 0
                    ;;
                --noarch-build-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --extra-meta)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-read)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-read-execute)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-read-write)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --exclude-newer)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__completion)
            opts="-s -v -q -h --shell --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --shell)
                    COMPREPLY=($(compgen -W "bash elvish fish nushell powershell zsh" -- "${cur}"))
                    return 0
                    ;;
                -s)
                    COMPREPLY=($(compgen -W "bash elvish fish nushell powershell zsh" -- "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__create__patch)
            opts="-d -v -q -h --directory --name --overwrite --patch-dir --exclude --dry-run --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --directory)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -d)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --name)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --patch-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --exclude)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__debug)
            opts="-r -o -c -v -q -h --recipe --output --target-platform --host-platform --build-platform --channel --output-dir --use-zstd --use-bz2 --experimental --allow-insecure-host --auth-file --channel-priority --output-name --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --recipe)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -r)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --output)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -o)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --target-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --host-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --build-platform)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --output-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-insecure-host)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --auth-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel-priority)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --output-name)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe)
            opts="-v -q -h --verbose --quiet --log-style --wrap-log-lines --config-file --color --help pypi cran cpan luarocks help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__cpan)
            opts="-w -t -v -q -h --version --write --tree --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <PACKAGE>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --version)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__cran)
            opts="-u -t -w -v -q -h --universe --tree --write --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <PACKAGE>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --universe)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -u)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help)
            opts="pypi cran cpan luarocks help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help__cpan)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help__cran)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help__help)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help__luarocks)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__help__pypi)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__luarocks)
            opts="-w -v -q -h --write-to --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <ROCK>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --write-to)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -w)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__generate__recipe__pypi)
            opts="-w -u -t -v -q -h --version --write --use-mapping --tree --verbose --quiet --log-style --wrap-log-lines --config-file --color --help <PACKAGE>"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --version)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help)
            opts="build test rebuild upload completion generate-recipe auth debug create-patch help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__auth)
            opts="login logout"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__auth__login)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__auth__logout)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__build)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__completion)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__create__patch)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__debug)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__generate__recipe)
            opts="pypi cran cpan luarocks"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__generate__recipe__cpan)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__generate__recipe__cran)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__generate__recipe__luarocks)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__generate__recipe__pypi)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__help)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__rebuild)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__test)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload)
            opts="quetz artifactory prefix anaconda s3 conda-forge"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__anaconda)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__artifactory)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__conda__forge)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__prefix)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__quetz)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__help__upload__s3)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__rebuild)
            opts="-p -v -q -h --package-file --no-test --test --compression-threads --io-concurrency-limit --output-dir --use-zstd --use-bz2 --experimental --allow-insecure-host --auth-file --channel-priority --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --package-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -p)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --test)
                    COMPREPLY=($(compgen -W "skip native native-and-emulated" -- "${cur}"))
                    return 0
                    ;;
                --compression-threads)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --io-concurrency-limit)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --output-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-insecure-host)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --auth-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel-priority)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__test)
            opts="-c -p -v -q -h --channel --package-file --compression-threads --test-index --debug --output-dir --use-zstd --use-bz2 --experimental --allow-insecure-host --auth-file --channel-priority --verbose --quiet --log-style --wrap-log-lines --config-file --color --help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --package-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -p)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --compression-threads)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --test-index)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --output-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-insecure-host)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --auth-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel-priority)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload)
            opts="-v -q -h --output-dir --use-zstd --use-bz2 --experimental --allow-insecure-host --auth-file --channel-priority --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]... quetz artifactory prefix anaconda s3 conda-forge help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --output-dir)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --allow-insecure-host)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --auth-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel-priority)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__anaconda)
            opts="-o -c -a -u -f -v -q -h --owner --channel --api-key --url --force --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --owner)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -o)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --api-key)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -a)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -u)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__artifactory)
            opts="-u -c -t -v -q -h --url --channel --username --password --token --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -u)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --username)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --password)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -t)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__conda__forge)
            opts="-v -q -h --staging-token --feedstock --feedstock-token --staging-channel --anaconda-url --validation-endpoint --provider --dry-run --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --staging-token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --feedstock)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --feedstock-token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --staging-channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --anaconda-url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --validation-endpoint)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --provider)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help)
            opts="quetz artifactory prefix anaconda s3 conda-forge help"
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__anaconda)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__artifactory)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__conda__forge)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__help)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__prefix)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__quetz)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__help__s3)
            opts=""
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__prefix)
            opts="-u -c -a -s -v -q -h --url --channel --api-key --attestation --skip-existing --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -u)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --api-key)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -a)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --attestation)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__quetz)
            opts="-u -c -a -v -q -h --url --channel --api-key --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -u)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --api-key)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -a)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
        rattler__build__upload__s3)
            opts="-c -v -q -h --channel --endpoint-url --region --force-path-style --access-key-id --secret-access-key --session-token --verbose --quiet --log-style --wrap-log-lines --config-file --color --help [PACKAGE_FILES]..."
            if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
                COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
                return 0
            fi
            case "${prev}" in
                --channel)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                -c)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --endpoint-url)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --region)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --access-key-id)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --secret-access-key)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --session-token)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --log-style)
                    COMPREPLY=($(compgen -W "fancy json plain" -- "${cur}"))
                    return 0
                    ;;
                --wrap-log-lines)
                    COMPREPLY=($(compgen -W "true false" -- "${cur}"))
                    return 0
                    ;;
                --config-file)
                    COMPREPLY=($(compgen -f "${cur}"))
                    return 0
                    ;;
                --color)
                    COMPREPLY=($(compgen -W "always never auto" -- "${cur}"))
                    return 0
                    ;;
                *)
                    COMPREPLY=()
                    ;;
            esac
            COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
            return 0
            ;;
    esac
}

if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
    complete -F _rattler-build -o nosort -o bashdefault -o default rattler-build
else
    complete -F _rattler-build -o bashdefault -o default rattler-build
fi
