selective update algorithm upgraded