messing with algorithm still