code: def _make_class_name(base_class_name, i_param, param):
      # Creates a class name for a single combination of parameters.
      SINGLE_PARAM_MAXLEN = (
          100  # Length limit of a single parameter value
      )
      PARAMS_MAXLEN = 5000  # Length limit of the whole parameters part
      param_strs = [
          "{}={}".format(
              k, _shorten(_param_to_str(v), SINGLE_PARAM_MAXLEN)
          )
          for k, v in sorted(param.items())
      ]
      param_strs = _shorten(", ".join(param_strs), PARAMS_MAXLEN)
      cls_name = "{}_param_{}_{{{}}}".format(
          base_class_name, i_param, param_strs
      )
      return cls_name
  
imports: import functools
  import itertools
  import types
  import typing
  import unittest
  import numpy
  import six
  from chainer.testing import _bundle
  from chainer import utils
label_desc: Use image node_id 3 for calling a global function with example usage: _make_class_name(base_class_name, i_param, param) and returns: cls_name