fazendo ajustes para uso e testes, depois deve-se refatorar