adicionado comentários e melhorias na visualização do código