code: def maximise_with_method_on_prod_discrete_domain(
      method,
      obj,
      domain,
      max_evals,
      return_history=False,
      *args,
      **kwargs,
  ):
      """A wrapper for discrete spaces which calls one of the functions below based on the
      method."""
      # pylint: disable=unused-argument
      raise NotImplementedError(
          "Not implemented discrete domain optimisers yet."
      )
  
imports: from argparse import Namespace
  import numpy
  from .cp_domain_utils import get_processed_from_raw_via_config, get_raw_from_processed_via_config, sample_from_cp_domain
  from ..utils.general_utils import map_to_bounds, flatten_list_of_lists
  from ..utils.oper_utils import direct_ft_maximise, latin_hc_sampling, pdoo_maximise, random_maximise
label_desc: Use image node_id 13 for calling a global function with example usage: maximise_with_method_on_prod_discrete_domain(method, obj, domain, max_evals, return_history) without return types