code: def __new__(cls, data):
      if isinstance(data, dict):
          return namedtuple("Dic2Obj", data.keys())(
              *(Dic2Obj(val) for val in data.values())
          )
      elif isinstance(data, (tuple, list, set, frozenset)):
          return type(data)(Dic2Obj(_) for _ in data)
      else:
          return data
  
file_path: PaddleSeg/contrib/QualityInspector/qinspector/cvlib/uad_configs.py
imports: import yaml
  from collections import namedtuple
  from qinspector.utils.logger import setup_logger
label_desc: Use image node_id 1 for calling the Dic2Obj obj's underlying member method code with example usage: obj.__new__(cls, data) and returns: namedtuple, type, data