code: def _build_doc(
      func_name,
      desc,
      arg_names,
      arg_types,
      arg_desc,
      key_var_num_args=None,
      ret_type=None,
  ):
      """Build docstring for imperative functions."""
      param_str = _build_param_doc(arg_names, arg_types, arg_desc)
      # if key_var_num_args:
      #     desc += '\nThis function support variable length of positional input.'
      doc_str = (
          f"{desc}\n\n"
          + f"{param_str}\n"
          + "out : NDArray, optional\n"
          + "    The output NDArray to hold the result.\n\n"
          + "Returns\n"
          + "-------\n"
          + "out : NDArray or list of NDArrays\n"
          + "    The output of this function."
      )
      extra_doc = "\n" + "\n".join(
          [
              x.__doc__
              for x in type.__subclasses__(NDArrayDoc)
              if x.__name__ == f"{func_name}Doc"
          ]
      )
      doc_str += _re.sub(_re.compile("    "), "", extra_doc)
      doc_str = _re.sub("NDArray-or-Symbol", "NDArray", doc_str)
  
      return doc_str
  
imports: from __future__ import absolute_import
  import re
  from .base import build_param_doc
label_desc: Use image node_id 1 for calling a global function with example usage: _build_doc(func_name, desc, arg_names, arg_types, arg_desc, key_var_num_args, ret_type) and returns: doc_str