Adicionando código e testes.