added linked list operations