<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def share_nans(*arrs) -> tuple: """Take a list of nD arrays and return a new list of nD arrays. The new list is in the same order as the old list. If one indexed element in an old array is nan then every element for that index in all new arrays in the list is then nan. Parameters *arrs : nD arrays. Returns ------- list List of nD arrays in same order as given, with nan indicies syncronized. """

    nans = np.zeros(joint_shape(*arrs))
    for arr in arrs:
        nans *= arr
    return tuple([a + nans for a in arrs])