def construct(n , U = None):
    if not U:
        U = [ (1,2,3) ] 
            + [ (None,None,None) ] * n
    if n == 0:
        return ...
    else:
        Uprec = ...
        u, v, w = ...
        u_next = u + v - w
        v_next = u - v + w
        w_next = (u - v) / w
        U += [ (u_next , v_next , w_next) ]
        return ...

print( ... )