def makeMultiscaleGroupAttrs(name: str, arrays: Sequence[DataArray], array_paths: Sequence[str], axis_order: str='F') -> MultiscaleGroupAttrs:
    assert (len(arrays) == len(array_paths))
    cosemArrayAttrs = tuple((COSEMArrayAttrs.fromDataArray(a) for a in arrays))
    axis_indexer = slice(None)
    if (axis_order == 'F'):
        axis_indexer = slice((- 1), None, (- 1))
    axes: Tuple[str] = arrays[0].dims[axis_indexer]
    scales = tuple((tuple(s.scale_factors)[axis_indexer] for s in arrays))
    coords_reordered = tuple((arrays[0].coords[k] for k in axes))
    units = tuple((d.units for d in coords_reordered))
    pixelResolution = N5PixelResolution(dimensions=cosemArrayAttrs[0].transform.scale[axis_indexer], unit=units[0])
    multiscales = OMEMultiscaleAttrs(datasets=[OMEScaleAttrs(path=ap, transform=attr.transform) for (ap, attr) in zip(array_paths, cosemArrayAttrs)])
    result = MultiscaleGroupAttrs(name=name, multiscales=[multiscales], axes=axes, units=units, scales=scales, pixelResolution=pixelResolution)
    return result
def makeMultiscaleGroupAttrs(name: str, arrays: Sequence[DataArray], array_paths: Sequence[str], axis_order: str='F') -> MultiscaleGroupAttrs:
    assert (len(arrays) == len(array_paths))
    cosemArrayAttrs = tuple((COSEMArrayAttrs.fromDataArray(a) for a in arrays))
    axis_indexer = slice(None)
    if (axis_order == 'F'):
        axis_indexer = slice((- 1), None, (- 1))
    axes: Tuple[str] = arrays[0].dims[axis_indexer]
    scales = tuple((tuple(s.scale_factors)[axis_indexer] for s in arrays))
    coords_reordered = tuple((arrays[0].coords[k] for k in axes))
    units = tuple((d.units for d in coords_reordered))
    pixelResolution = N5PixelResolution(dimensions=cosemArrayAttrs[0].transform.scale[axis_indexer], unit=units[0])
    multiscales = OMEMultiscaleAttrs(datasets=[OMEScaleAttrs(path=ap, transform=attr.transform) for (ap, attr) in zip(array_paths, cosemArrayAttrs)])
    result = MultiscaleGroupAttrs(name=name, multiscales=[multiscales], axes=axes, units=units, scales=scales, pixelResolution=pixelResolution)
    return result