discarded own linked-list implementation and using STL list.