trying out a new data structure, need to change update logic