adicionando logica e explicacoes