code: def rollaxis(a, axis, start=0):
      n = a.ndim
      axis = normalize_axis_index(axis, n)
      if start < 0:
          start += n
      msg = "'%s' arg requires %d <= %s < %d, but %d was passed in"
      if not (0 <= start < n + 1):
          raise ValueError(msg % ("start", -n, "start", n + 1, start))
      if axis < start:
          # it's been removed
          start -= 1
      if axis == start:
          return a[...]
      axes = list(range(0, n))
      axes.remove(axis)
      axes.insert(start, axis)
      return a.transpose(axes)
  
file_path: dask/dask/array/numpy_compat.py
imports: from __future__ import annotations
  import warnings
  import numpy
  from packaging.version import parse
  from dask.utils import derived_from
label_desc: Use image node_id 2 for calling a global function with example usage: rollaxis(a, axis, start) and returns: a, a