Melhor identacao e inclusao de codigo perdido

Identei algumas funcoes do jeito que estava antes e botei uma parte do codigo que se perdeu em algum commit.