def METHOD_NAME(filename, lazy=False, mmap_mode="c", endianess="<", **kwds):
    """
    File reader for the MRCZ format for tomographic data.
    Parameters
    ----------
    %s
    %s
    %s
    %s
    **kwds : dict, optional
        The keyword arguments are passed to :py:func:`mrcz.readMRC`.
    %s
    Examples
    --------
    >>> from rsciio.mrcz import file_reader
    >>> new_signal = file_reader('file.mrcz')
    """
    _logger.debug("Reading MRCZ file: %s" % filename)
    if mmap_mode != "c":
        # Note also that MRCZ does not support memory-mapping of compressed data.
        # Perhaps we could use the zarr package for that
        raise ValueError("MRCZ supports only C-ordering memory-maps")
    mrcz_endian = "le" if endianess == "<" else "be"
    data, mrcz_header = _mrcz.readMRC(
        filename, endian=mrcz_endian, useMemmap=lazy, pixelunits="nm", **kwds
    )
    # Create the axis objects for each axis
    names = ["y", "x", "z"]
    navigate = [False, False, True]
    axes = [
        {
            "size": data.shape[hsIndex],
            "index_in_array": hsIndex,
            "name": names[index],
            "scale": mrcz_header["pixelsize"][hsIndex],
            "offset": 0.0,
            "units": mrcz_header["pixelunits"],
            "navigate": nav,
        }
        for index, (hsIndex, nav) in enumerate(zip(_READ_ORDER, navigate))
    ]
    axes.insert(0, axes.pop(2))  # re-order the axes
    metadata = mrcz_header.copy()
    # Remove non-standard fields
    for popTarget in _POP_FROM_HEADER:
        metadata.pop(popTarget)
    dictionary = {
        "data": data,
        "axes": axes,
        "metadata": metadata,
        "original_metadata": {"mrcz_header": mrcz_header},
        "mapping": mapping,
    }
    return [
        dictionary,
    ]