def suggest_parameters_DRE_NMNIST(trial, 
    list_lr, list_bs, list_opt, 
    list_wd, list_multLam, list_order):
    """ Suggest hyperparameters.
    Args:
        trial: A trial object for optuna optimization.
        list_lr: A list of floats. Candidates of learning rates.
        list_bs: A list of ints. Candidates of batch sizes.
        list_opt: A list of strings. Candidates of optimizers.
        list_wd: A list of floats. weight decay
        list_multLam: A list of floats. Prefactor of the second term of BARR.
        list_order: A list of integers. Order of SPRT-TANDEM.
    Returns:
        learning_rate: A float.
        batch_size: An int.
        name_optimizer: A string.
        weight_decay: A float.
        param_multLam: A float.
        order_sprt: An int.
    """
    # load yaml interprrets, e.g., 1e-2 as a string...
    for iter_idx in range(len(list_lr)):
        list_lr[iter_idx] = float(list_lr[iter_idx])

    learning_rate = trial.suggest_categorical('learning_rate', list_lr)
    batch_size = trial.suggest_categorical('batch_size', list_bs)
    name_optimizer = trial.suggest_categorical('optimizer', list_opt)
    weight_decay = trial.suggest_categorical('weight_decay', list_wd)
    param_multLam = trial.suggest_categorical('param_multLam', list_multLam)
    order_sprt = trial.suggest_categorical('order_sprt', list_order)

    return learning_rate, batch_size, name_optimizer,\
        weight_decay, param_multLam, order_sprt