fixing functions, need to add copy, merge, and remove