def addListsElementWise(a, b):
    """Add corresponding elements of two lists.

    The two lists do not have to have the same length. Nonexisting elements are assumed to have a value of 0.
    A new list is constructed and returned.
    """
    if len(b) > len(a):
        a, b = b, a
    # Now len(a) >= len(b)
    r = a[:]
    for i in range(len(b)):
        r[i] += b[i]
    return r