code: def modf(x):
      # Not actually object dtype, just need to specify something
      tmp = elemwise(np.modf, x, dtype=object)
      left = "modf1-" + tmp.name
      right = "modf2-" + tmp.name
      ldsk = {
          (left,) + key[1:]: (getitem, key, 0)
          for key in core.flatten(tmp.__dask_keys__())
      }
      rdsk = {
          (right,) + key[1:]: (getitem, key, 1)
          for key in core.flatten(tmp.__dask_keys__())
      }
  
      a = np.ones_like(
          getattr(x, "_meta", x), shape=(1,) * x.ndim, dtype=x.dtype
      )
      l, r = np.modf(a)
  
      graph = HighLevelGraph.from_collections(
          left, ldsk, dependencies=[tmp]
      )
      L = Array(graph, left, chunks=tmp.chunks, meta=l)
      graph = HighLevelGraph.from_collections(
          right, rdsk, dependencies=[tmp]
      )
      R = Array(graph, right, chunks=tmp.chunks, meta=r)
      return L, R
  
imports: from __future__ import annotations
  from functools import partial
  from operator import getitem
  import numpy
  from dask import core
  from dask.array.core import Array, apply_infer_dtype, asarray, blockwise, elemwise
  from dask.base import is_dask_collection, normalize_function
  from dask.highlevelgraph import HighLevelGraph
  from dask.utils import derived_from, funcname
label_desc: Use image node_id 5 for calling a global function with example usage: modf(x) and returns: L,  R