code: def test_far_optimum_function(
      independent_sigma: bool, mutable_sigma: bool
  ) -> None:
      func = functionlib.FarOptimumFunction(
          independent_sigma=independent_sigma,
          mutable_sigma=mutable_sigma,
      ).copy()
      param = func.parametrization.spawn_child()
      assert isinstance(param, p.Array)
      assert isinstance(param.sigma, p.Array) == mutable_sigma
      assert param.sigma.value.size == (1 + independent_sigma)  # type: ignore
      param.mutate()
      new_val = param.sigma.value
      assert bool(np.sum(np.abs(new_val - func.parametrization.sigma.value))) == mutable_sigma  # type: ignore
      if independent_sigma and mutable_sigma:
          assert new_val[0] != new_val[1]
  
imports: import typing
  import numpy
  import pytest
  from nevergrad.common import testing
  from nevergrad.parametrization import parameter
  from .None import functionlib
label_desc: Use image node_id 13 for calling a global function with example usage: test_far_optimum_function(independent_sigma, mutable_sigma) without return types