Funciona caso base. Falta testes e exceções.