Código da primeira parte finalizado com bugs.