melhorias diversas, otimizacoes e correcoes de erro