code: def numpy_to_dist(a):
      result = DistArray(a.shape)
      for index in np.ndindex(*result.num_blocks):
          lower = DistArray.compute_block_lower(index, a.shape)
          upper = DistArray.compute_block_upper(index, a.shape)
          idx = tuple(slice(l, u) for (l, u) in zip(lower, upper))
          result.object_refs[index] = ray.put(a[idx])
      return result
  
imports: import numpy
  import ray
  import ray.experimental.array.remote
label_desc: Use image node_id 2 for calling a global function with example usage: numpy_to_dist(a) and returns: result