New algorithm, better performing