merged node.c to list.c