NOT DONE: commiting for erik to finish implementing