code: def test_Clone(self) -> None:
      config1 = MultiObjectiveOptimizationConfig(
          objective=self.multi_objective,
          outcome_constraints=self.outcome_constraints,
      )
      self.assertEqual(config1, config1.clone())
  
      config2 = MultiObjectiveOptimizationConfig(
          objective=self.multi_objective,
          objective_thresholds=self.objective_thresholds,
      )
      self.assertEqual(config2, config2.clone())
  
imports: from ax.core.metric import Metric
  from ax.core.objective import MultiObjective, Objective, ScalarizedObjective
  from ax.core.optimization_config import _NO_RISK_MEASURE, MultiObjectiveOptimizationConfig, OptimizationConfig
  from ax.core.outcome_constraint import ObjectiveThreshold, OutcomeConstraint, ScalarizedOutcomeConstraint
  from ax.core.risk_measures import RiskMeasure
  from ax.core.types import ComparisonOp
  from ax.exceptions.core import UserInputError
  from ax.utils.common.testutils import TestCase
label_desc: Use image node_id 5 for calling the MultiObjectiveOptimizationConfigTest obj's underlying member method code with example usage: obj.test_Clone() without return types