finished list.c