class_docstr: Normalizer class to handle log key normalization in payloads
docstr: Extract and store the data types from the config in the proper format
  
  Args:
      config (dict): Config read from 'conf/' directory
  
  Returns:
      Normalizer: Class to be used for normalization logic
docstr_tok: ["Extract","and","store","the","data","types","from","the","config","in","the","proper","format","Args",":","config","(","dict",")",":","Config","read","from","'conf\/","'","directory","Returns",":","Normalizer",":","Class","to","be","used","for","normalization","logic"]
code: def load_from_config(cls, config):
      """Extract and store the data types from the config in the proper format
  
      Args:
          config (dict): Config read from 'conf/' directory
  
      Returns:
          Normalizer: Class to be used for normalization logic
      """
      if cls._types_config:
          return cls  # config is already populated
  
      cls._types_config = cls._parse_normalization(config)
  
      return cls
  
imports: from collections import defaultdict
  import logging
  import itertools
  import uuid
  from streamalert.shared.config import TopLevelConfigKeys
  from streamalert.shared.exceptions import ConfigError
  from streamalert.shared.logger import get_logger
label_desc: Use image node_id 7 for calling the Normalizer obj's underlying member method code with example usage: obj.load_from_config(cls, config) and returns: cls, cls