Adicionado comentários e complementando mais um pouco as funções auxiliares de criação