added ListNode class