code: def get_nn_opt_arguments():
      """Returns arguments for NN Optimisation."""
      ret = Namespace()
      ret.cnn_constraint_checker = CNNConstraintChecker(
          50, 5, 1e8, 0, 5, 5, 200, 1024, 8
      )
      ret.mlp_constraint_checker = MLPConstraintChecker(
          50, 5, 1e8, 0, 5, 5, 200, 1024, 8
      )
      ret.cnn_mutation_op = get_nn_modifier_from_args(
          ret.cnn_constraint_checker, [0.5, 0.25, 0.125, 0.075, 0.05]
      )
      ret.mlp_mutation_op = get_nn_modifier_from_args(
          ret.mlp_constraint_checker, [0.5, 0.25, 0.125, 0.075, 0.05]
      )
      # Create the initial pool
      ret.cnn_init_pool = get_initial_cnn_pool()
      ret.cnn_init_vals = [
          cnn_syn_func1(cnn) for cnn in ret.cnn_init_pool
      ]
      ret.mlp_init_pool = get_initial_mlp_pool("reg")
      ret.mlp_init_vals = [
          mlp_syn_func1(mlp) for mlp in ret.mlp_init_pool
      ]
      # Create a domain
      ret.nn_domain = NNDomain("cnn", ret.cnn_constraint_checker)
      ret.cnn_domain = NNDomain("cnn", ret.cnn_constraint_checker)
      ret.mlp_domain = NNDomain("mlp-reg", ret.mlp_constraint_checker)
      # Return
      return ret
  
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 3 for calling a global function with example usage: get_nn_opt_arguments() and returns: ret