completed list1 functions
completed list2 functions