melhorias gerais no algoritmo