Sobre o que for name in "${NAMES[@]}" itera?
for name in "${NAMES[@]}"
Apenas o texto literal NAMES.
Cada elemento do array como um item separado, preservando os espaços dentro de cada elemento.
Cada caractere do primeiro nome.
Apenas os índices numéricos do array.