Versão inicial, todos os testes passando