ListNode swap(ListNode a) {
		if (a == null || a.next == null) {
			return a;
		} else {
			ListNode temp = a;
			ListNode temp2 = a.next.next;
			a = a.next;
			a.next = temp;
			a.next.next = temp2;
			ListNode nextNode = swap(a.next.next);
			a.next.next = nextNode;
			return a;
		}
	}