def _validate_point(point, ds, start=False):
    if (not iterable(point)):
        raise RuntimeError('Input point must be array-like')
    if (not isinstance(point, YTArray)):
        point = ds.arr(point, 'code_length')
    if (len(point.shape) != 1):
        raise RuntimeError('Input point must be a 1D array')
    if (point.shape[0] < ds.dimensionality):
        raise RuntimeError('Input point must have an element for each dimension')
    if (point.shape[0] < 3):
        if start:
            val = 0
        else:
            val = 1
        point = (np.append(point.d, ([val] * (3 - ds.dimensionality))) * point.uq)
    return point
def _validate_point(point, ds, start=False):
    if (not iterable(point)):
        raise RuntimeError('Input point must be array-like')
    if (not isinstance(point, YTArray)):
        point = ds.arr(point, 'code_length')
    if (len(point.shape) != 1):
        raise RuntimeError('Input point must be a 1D array')
    if (point.shape[0] < ds.dimensionality):
        raise RuntimeError('Input point must have an element for each dimension')
    if (point.shape[0] < 3):
        if start:
            val = 0
        else:
            val = 1
        point = (np.append(point.d, ([val] * (3 - ds.dimensionality))) * point.uq)
    return point