code: def check_if_pre_eval_networks_have_changed(options_1, options_2):
      """Checks if the pre_eval networks have changed. Raises an error if they have."""
      assert (
          options_1.pre_eval_vals is not options_2.pre_eval_vals
          and options_1.pre_eval_vals == options_2.pre_eval_vals
      )
      assert (
          options_1.pre_eval_true_vals
          is not options_2.pre_eval_true_vals
          and options_1.pre_eval_true_vals
          == options_2.pre_eval_true_vals
      )
      for idx in range(len(options_1.pre_eval_points)):
          assert (
              options_1.pre_eval_points[idx]
              is not options_2.pre_eval_points[idx]
          )
          assert networks_are_equal(
              options_1.pre_eval_points[idx],
              options_2.pre_eval_points[idx],
          )
  
imports: from copy import deepcopy
  from argparse import Namespace
  import unittest
  from .None import nn_ga_optimiser
  from .nn_domains import NNDomain
  from .syn_nn_functions import cnn_syn_func1, mlp_syn_func1
  from .nn_domains import CNNConstraintChecker, MLPConstraintChecker
  from .nn_modifiers import get_nn_modifier_from_args
  from .unittest_nn_modifier_class import networks_are_equal
  from .nn_opt_utils import get_initial_cnn_pool, get_initial_mlp_pool
  from ..exd.experiment_caller import FunctionCaller
  from ..exd.worker_manager import SyntheticWorkerManager
  from ..utils.reporters import get_reporter
  from ..utils.option_handler import load_options
  from ..utils.base_test_class import BaseTestClass, execute_tests
label_desc: Use image node_id 1 for calling a global function with example usage: check_if_pre_eval_networks_have_changed(options_1, options_2) without return types