code: def validate_class_args(self, **kwargs):
      Schema(
          {
              "optimize_mode": self.choices(
                  "optimize_mode", "maximize", "minimize"
              ),
              Optional("min_budget"): self.range(
                  "min_budget", int, 0, 9999
              ),
              Optional("max_budget"): self.range(
                  "max_budget", int, 0, 9999
              ),
              Optional("eta"): self.range("eta", int, 0, 9999),
              Optional("min_points_in_model"): self.range(
                  "min_points_in_model", int, 0, 9999
              ),
              Optional("top_n_percent"): self.range(
                  "top_n_percent", int, 1, 99
              ),
              Optional("num_samples"): self.range(
                  "num_samples", int, 1, 9999
              ),
              Optional("random_fraction"): self.range(
                  "random_fraction", float, 0, 9999
              ),
              Optional("bandwidth_factor"): self.range(
                  "bandwidth_factor", float, 0, 9999
              ),
              Optional("min_bandwidth"): self.range(
                  "min_bandwidth", float, 0, 9999
              ),
              Optional("config_space"): self.path("config_space"),
          }
      ).validate(kwargs)
  
imports: import sys
  import math
  import logging
  from schema import Schema, Optional
  import ConfigSpace
  import ConfigSpace.hyperparameters
  from ConfigSpace.read_and_write import pcs_new
  import nni
  from nni import ClassArgsValidator
  from nni.runtime.tuner_command_channel import CommandType
  from nni.runtime.msg_dispatcher_base import MsgDispatcherBase
  from nni.utils import OptimizeMode, MetricType, extract_scalar_reward
  from nni.runtime.common import multi_phase_enabled
  from .config_generator import CG_BOHB
label_desc: Use image node_id 1 for calling the BOHBClassArgsValidator obj's underlying member method code with example usage: obj.validate_class_args() without return types