code: def get_hyperparameter_search_space(
      feat_type: Optional[FEAT_TYPE_TYPE] = None,
      dataset_properties: Optional[DATASET_PROPERTIES_TYPE] = None,
  ) -> ConfigurationSpace:
      cs = ConfigurationSpace()
  
      hp_analyzer = CSH.CategoricalHyperparameter(
          name="analyzer",
          choices=["word", "char"],
          default_value="char",
      )
  
      hp_ngram_range_char = CSH.UniformIntegerHyperparameter(
          name="ngram_range_char",
          lower=2,
          upper=4,
          default_value=4,
      )
  
      hp_ngram_range_word = CSH.UniformIntegerHyperparameter(
          name="ngram_range_word",
          lower=1,
          upper=3,
          default_value=1,
      )
  
      hp_min_df = CSH.UniformFloatHyperparameter(
          name="min_df",
          lower=0.0,
          upper=0.3,
          default_value=0.0,
      )
  
      hp_max_df = CSH.UniformFloatHyperparameter(
          name="max_df", lower=0.7, upper=1.0, default_value=1.0
      )
  
      hp_binary = CSH.UnParametrizedHyperparameter(
          name="binary", value="False"
      )
  
      hp_norm = CSH.CategoricalHyperparameter(
          name="norm", choices=["l2", "l1"], default_value="l2"
      )
  
      hp_sublinear_tf = CSH.UnParametrizedHyperparameter(
          name="sublinear_tf", value="False"
      )
  
      hp_per_column = CSH.CategoricalHyperparameter(
          name="per_column", choices=[True, False], default_value=False
      )
  
      cs.add_hyperparameters(
          [
              hp_analyzer,
              hp_ngram_range_char,
              hp_ngram_range_word,
              hp_max_df,
              hp_min_df,
              hp_binary,
              hp_norm,
              hp_sublinear_tf,
              hp_per_column,
          ]
      )
      cond_char = EqualsCondition(
          hp_ngram_range_char, hp_analyzer, "char"
      )
      cond_word = EqualsCondition(
          hp_ngram_range_word, hp_analyzer, "word"
      )
      cs.add_conditions([cond_char, cond_word])
  
      return cs
  
imports: from typing import Dict, Optional, Tuple, Union
  import itertools
  import ConfigSpace.hyperparameters
  import numpy
  import pandas
  from ConfigSpace import EqualsCondition
  from ConfigSpace.configuration_space import ConfigurationSpace
  from scipy.sparse import hstack
  from sklearn.feature_extraction.text import TfidfVectorizer
  from autosklearn.askl_typing import FEAT_TYPE_TYPE
  from autosklearn.pipeline.base import DATASET_PROPERTIES_TYPE, PIPELINE_DATA_DTYPE
  from autosklearn.pipeline.components.base import AutoSklearnPreprocessingAlgorithm
  from autosklearn.pipeline.constants import DENSE, INPUT, SPARSE, UNSIGNED_DATA
  from autosklearn.util.common import check_for_bool
label_desc: Use image node_id 5 for calling the TfidfEncoder obj's underlying member method code with example usage: obj.get_hyperparameter_search_space(feat_type, dataset_properties) and returns: cs