Mais documentação e alterações no código