class_docstr: Base class for defining arms.
  
  Randomization in experiments assigns units to a given arm. Thus, the arm
  encapsulates the parametrization needed by the unit.
code: def __repr__(self) -> str:
      parameters_str = f"parameters={self._parameters}"
      if self.has_name:
          name_str = f"name='{self.name}'"
          return f"Arm({name_str}, {parameters_str})"
      return f"Arm({parameters_str})"
  
imports: import hashlib
  import json
  from typing import Optional
  from ax.core.types import TParameterization
  from ax.utils.common.base import SortableBase
  from ax.utils.common.equality import equality_typechecker
  from ax.utils.common.typeutils import numpy_type_to_python_type
label_desc: Use image node_id 10 for calling the Arm obj's underlying member method code with example usage: obj.__repr__() and returns: str, parameters_str, str, str, name_str, str, parameters_str, str