1def add_two_numbers(l1, l2):
2 dummy = ListNode(0)
3 curr = dummy
4 carry = 0
5 while l1 or l2 or carry:
6 v1 = l1.val if l1 else 0
7 v2 = l2.val if l2 else 0
8 total = v1 + v2 + carry
9 carry = total // 10
10 curr.next = ListNode(total % 10)
11 curr = curr.next
12 if l1: l1 = l1.next
13 if l2: l2 = l2.next
14 return dummy.next