code: def heterogeneous_3d(x, y, z):
      """Compute `continuous_1d` + z if y == 'sin', else return x**2 - 3 * z
      where x is continuous, y is categorical ("sin", "sqr"), z is discrete.
  
      Args:
          x: float or np.ndarray, continuous variable         [-5.0, 6.0]
          y: str, categorical variable                        ("sin", "sqr")
          z: float or int or np.ndarray, discrete variable    (0, 1, 2, 3)
      """
      if y == "sin":
          return (continuous_1d(x) + z)[0]
      elif y == "sqr" and z in [0, 1, 2, 3]:
          return x**2 - 3 * z
      else:
          raise ValueError(
              "`y` can only be 'sin' or 'sqr' and z [0, 1, 2, 3]."
          )
  
file_path: hypertunity/hypertunity/optimisation/tests/_common.py
imports: import numpy
  from hypertunity.optimisation import EvaluationScore
label_desc: Use image node_id 3 for calling a global function with example usage: heterogeneous_3d(x, y, z) and returns: unknown, unknown