code: def train(self, config: Configuration, seed: int) -> float:
      x1 = config["x1"]
      x2 = config["x2"]
      a = 1.0
      b = 5.1 / (4.0 * np.pi**2)
      c = 5.0 / np.pi
      r = 6.0
      s = 10.0
      t = 1.0 / (8.0 * np.pi)
  
      cost = (
          a * (x2 - b * x1**2 + c * x1 - r) ** 2
          + s * (1 - t) * np.cos(x1)
          + s
      )
      regret = cost - 0.397887
  
      return regret
  
file_path: SMAC3/benchmark/src/models/branin.py
imports: from __future__ import annotations
  import numpy
  from ConfigSpace import Configuration, ConfigurationSpace, Float
  from src.datasets.dataset import Dataset
  from src.models.model import Model
label_desc: Use image node_id 3 for calling the Branin obj's underlying member method code with example usage: obj.train(config, seed) and returns: regret