acho que esta feito, mas muito lento