mod. DS algorithm