code: def _strongly_connected_components(G):
      # TODO: create utility function to convert just the indices to CSR
      # TODO: this uses a legacy PLC function (strongly_connected_components)
      N = len(G)
      indices = cp.lexsort(cp.vstack((G.dst_indices, G.src_indices)))
      dst_indices = G.dst_indices[indices]
      offsets = cp.searchsorted(
          G.src_indices,
          cp.arange(N + 1, dtype=index_dtype),
          sorter=indices,
      ).astype(index_dtype)
      labels = cp.zeros(N, dtype=index_dtype)
      plc.strongly_connected_components(
          offsets=offsets,
          indices=dst_indices,
          weights=None,
          num_verts=N,
          num_edges=dst_indices.size,
          labels=labels,
      )
      return labels
  
file_path: cugraph/python/nx-cugraph/nx_cugraph/algorithms/components/strongly_connected.py
imports: import cupy
  import networkx
  import pylibcugraph
  from nx_cugraph.convert import _to_directed_graph
  from nx_cugraph.utils import _groupby, index_dtype, networkx_algorithm, not_implemented_for
label_desc: Use image node_id 1 for calling a global function with example usage: _strongly_connected_components(G) and returns: labels