code: def __init__(
      self, repo, metric, name: str, context: Optional[list] = None
  ):
      self.repo = repo
      self.metric = metric
      self.name = name
      self.data = []
      self.tmp_data = (
          {}
      )  # used for storing temporary data for x_axis metric values
      self.current_x_axis_value = (
          None  # used for checking ordering of x_axis metric values
      )
      self.alignment = None  # used for storing alignment flags when x_axis is aligned by custom metric
      self.slice = None
      self._num_records = None
      self.context = None  # type: Optional[Dict[str, Union[str, Any]]]
      self.hashable_context = None
      if context is not None:
          self.context = {k: v for (k, v) in context}
          self.hashable_context = tuple(sorted(self.context.items()))
  
imports: from typing import Dict, Any, Union, Optional, Tuple
label_desc: Use image node_id 1 to create a new Trace object from inherited base classes: object with example: obj = Trace(repo, metric, name, context)