
_armake()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -eq 1 ]; then
        COMPREPLY=( $( compgen -W '-h --help -h --help -v --version -v --version binarize build inspect unpack cat derapify keygen sign paa2img img2paa' -- $cur) )
    else
        case ${COMP_WORDS[1]} in
            binarize)
            _armake_binarize
        ;;
            build)
            _armake_build
        ;;
            inspect)
            _armake_inspect
        ;;
            unpack)
            _armake_unpack
        ;;
            cat)
            _armake_cat
        ;;
            derapify)
            _armake_derapify
        ;;
            keygen)
            _armake_keygen
        ;;
            sign)
            _armake_sign
        ;;
            paa2img)
            _armake_paa2img
        ;;
            img2paa)
            _armake_img2paa
        ;;
        esac

    fi
}

_armake_binarize()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -w --warning -i --include ' -- $cur) )
    fi
}

_armake_build()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -p --packonly -w --warning -i --include -x --exclude -k --key -s --signature -e --headerext ' -- $cur) )
    fi
}

_armake_inspect()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW ' ' -- $cur) )
    fi
}

_armake_unpack()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -i --include -x --exclude ' -- $cur) )
    fi
}

_armake_cat()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW ' ' -- $cur) )
    fi
}

_armake_derapify()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -d --indent ' -- $cur) )
    fi
}

_armake_keygen()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force ' -- $cur) )
    fi
}

_armake_sign()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -s --signature ' -- $cur) )
    fi
}

_armake_paa2img()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force ' -- $cur) )
    fi
}

_armake_img2paa()
{
    local cur
    cur="${COMP_WORDS[COMP_CWORD]}"

    if [ $COMP_CWORD -ge 2 ]; then
        COMPREPLY=( $( compgen -fW '-f --force -z --compress -t --type ' -- $cur) )
    fi
}

complete -o bashdefault -o default -o filenames -F _armake armake