def __init__(self, dict=None, configs=None, **kwargs):
        Config.__init__(self, dict, **kwargs)

        self.configs = []
        if configs is not None:
            if not isinstance(configs, Iterable):
                raise TypeError("Passed configs value is not List")
            else:
                if not all(isinstance(c, Config) for c in configs):
                    raise TypeError("Some items in the configs list does not inherited from pda.config.Config")
                else:
                    self.configs = configs