fixed add and list functions