@lower_builtin(numpy.ndindex, types.BaseTuple)
def make_array_ndindex(context, builder, sig, args):
    ndim = sig.return_type.ndim
    if ndim > 0:
        idxty = sig.args[0].dtype
        tup = args[0]

        shape = cgutils.unpack_tuple(builder, tup, ndim)
        shape = [context.cast(builder, idx, idxty, types.intp)
                 for idx in shape]
    else:
        shape = []

    nditercls = make_ndindex_cls(types.NumpyNdIndexType(len(shape)))
    nditer = nditercls(context, builder)
    nditer.init_specific(context, builder, shape)

    res = nditer._getvalue()
    return impl_ret_borrowed(context, builder, sig.return_type, res)
plot the coverage over kmers
dataset/ETHPy150Open numba/numba/numba/targets/arrayobj.py/make_array_ndindex--crossover with--dataset/ETHPy150Open CGATOxford/cgat/obsolete/pipeline_genomeassembly.py/plotCoverageHistogram