Codigo refatorado. Teste criado.