Adicionando comentários e algumas correções