versao final, funcionando