class Config(object):
    def __init__(self):
        object.__setattr__(self, '_items', dict())

    def keys(self):
        return [k for k in self._items.keys() if k != '_wandb']

    def _as_dict(self):
        return self._items

    def __getitem__(self, key):
        return self._items[key]

    def __setitem__(self, key, val):
        self._items[key] = val

    __setattr__ = __setitem__

    def __getattr__(self, key):
        return self.__getitem__(key)

@@ -1,8 +1,21 @@
+import six%0A%0A%0A
 class Co
@@ -475,8 +475,304 @@
 __(key)%0A
+%0A    def update(self, d):%0A        if isinstance(d, dict):%0A            self._items.update(d)%0A        else:%0A            # assume argparse Namespace%0A            self._items.update(vars(d))%0A%0A    def setdefaults(self, d):%0A        for k, v in six.iteritems(d):%0A            self._items.setdefault(k, v)%0A

add update setdefaults