import collections


def dictRecursiveModel(base):
    """Build a dictionary configuration tree from ConfigurationProxy `base`"""
    out = collections.OrderedDict()
    for path, obj in base.items():
        if path == 'self':
            out[path] = obj['name']
            continue
        out[path] = dictRecursiveModel(obj)
    return out