code: def __init__(
      self,
      name: str,
      param_names: Iterable[str],
      noise_sd: float = 0.0,
      lower_is_better: Optional[bool] = None,
  ) -> None:
      super().__init__(
          name=name,
          param_names=param_names,
          noise_sd=noise_sd,
          lower_is_better=lower_is_better,
      )
  
      self.index = -1
  
imports: from __future__ import annotations
  import math
  from collections import defaultdict
  from random import random
  from typing import Any, Iterable, Mapping, Optional
  import numpy
  import pandas
  from ax.core.base_trial import BaseTrial
  from ax.core.map_data import MapData, MapKeyInfo
  from ax.core.map_metric import MapMetricFetchResult
  from ax.core.metric import MetricFetchE
  from ax.metrics.noisy_function_map import NoisyFunctionMapMetric
  from ax.utils.common.result import Err, Ok
  from ax.utils.common.typeutils import checked_cast, not_none
  from ax.utils.measurement.synthetic_functions import branin
label_desc: Use image node_id 1 to create a new BraninFidelityMapMetric object from inherited base classes: NoisyFunctionMapMetric with example: obj = BraninFidelityMapMetric(name, param_names, noise_sd, lower_is_better)