<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def to_latlon(array, domain, axis = 'lon'):
 """Broadcasts a 1D axis dependent array across another axis. :param array input_array: the 1D array used for broadcasting :param domain: the domain associated with that array :param axis: the axis that the input array will be broadcasted across [default: 'lon'] :return: Field with the same shape as the domain :Example: :: (3, 4, 1) Field([[[ 237.], [[ 417.], [[ 237.], [ 237.], [ 417.], [ 237.], [ 237.], [ 417.], [ 237.], [ 237.]], [ 417.]], [ 237.]]]) """

    #  if array is latitude dependent (has the same shape as lat)
    axis, array, depth = np.meshgrid(domain.axes[axis].points, array,
                                    domain.axes['depth'].points)
    if axis == 'lat':
    #  if array is longitude dependent (has the same shape as lon)
        np.swapaxes(array,1,0)
    return Field(array, domain=domain)