sum_result = int("".join(l1_values[::-1])) + int("".join(l2_values[::-1]))
    sum_result = list(str(sum_result))

    ll = DoublyLinkedList()
    index = 0
    for i in range(len(sum_result) - 1, -1, -1):
        ll.addAtIndex(index, sum_result[i])
        index += 1
    return ll


if __name__ == "__main__":
    LL1 = DoublyLinkedList()
    LL1.addAtHead(2)
    LL1.addAtTail(4)
    LL1.addAtTail(9)
    print(LL1)

    LL2 = DoublyLinkedList()
    LL2.addAtHead(5)
    LL2.addAtTail(6)
    LL2.addAtTail(4)
    LL2.addAtTail(9)
    print(LL2)

    print(addingTwoNumbers(LL1, LL2))

    LL3 = DoublyLinkedList()
    LL3.addAtHead(9)
    LL3.addAtTail(9)
            if cur_l1.value <= cur_l2.value:
                ll.addAtIndex(index, cur_l1.value)
                cur_l1 = cur_l1.next
            else:
                ll.addAtIndex(index, cur_l2.value)
                cur_l2 = cur_l2.next
        elif cur_l1 and not cur_l2:
            ll.addAtIndex(index, cur_l1.value)
            cur_l1 = cur_l1.next
        elif cur_l2 and not cur_l1:
            ll.addAtIndex(index, cur_l2.value)
            cur_l2 = cur_l2.next
        index += 1
    return ll


if __name__ == "__main__":
    LL1 = DoublyLinkedList()
    LL1.addAtHead(1)
    LL1.addAtTail(2)
    LL1.addAtTail(4)
    print(LL1)

    LL2 = DoublyLinkedList()
    LL2.addAtHead(1)
    LL2.addAtTail(3)
    LL2.addAtTail(4)
    print(LL2)

    print(mergeTwoSortedLists(LL1, LL2))