class_docstr: Proposer to generate new values for hyperparameters
  
  :param config: experiment configuration
  :type config: BasicConfig
docstr: Parse the given experiment configuration of ``parameter_config``
  If values are missing, fill in defaults.
  
  :param config: config["param_config"]
  :type config: dict
  :return: updated config
  :rtype: dict
docstr_tok: ["Parse","the","given","experiment","configuration","of","``","parameter_config","``","If","values","are","missing",",","fill","in","defaults",".",":","param","config",":","config","[","``","param_config","''","]",":","type","config",":","dict",":","return",":","updated","config",":","rtype",":","dict"]
code: def parse_param_config(config):
      """
      Parse the given experiment configuration of ``parameter_config``
      If values are missing, fill in defaults.
  
      :param config: config["param_config"]
      :type config: dict
      :return: updated config
      :rtype: dict
      """
      check_missing_key(
          config,
          "name",
          "Missing name of the parameter, need to be consistent with your training code",
          log=logger,
      )
      set_default_keyvalue("type", "int", config, log=logger)
      set_default_keyvalue("range", [0, 1], config, log=logger)
      return config
  
imports: import abc
  import logging
  import pickle
  import json
  import threading
  from six.moves import input
  from ..utils import set_default_keyvalue, check_missing_key, get_from_options
  from .None import ProposerStatus
label_desc: Use image node_id 8 for calling the AbstractProposer obj's underlying member method code with example usage: obj.parse_param_config(config) and returns: config