def METHOD_NAME(self, cat=None):
    """
    For given category a dictionary is returned mapping member names to
    members of that category.  For names that are duplicated the name is
    mapped to None.
    """
    self.confirm_no_error()
    if cat not in self._dict_members:
        new_dict = {}
        for mem in self.in_category(cat):
            if mem.name() not in new_dict:
                new_dict[mem.name()] = mem
            else:
                new_dict[mem.name()] = self.Duplicate
        self._dict_members[cat] = new_dict
    return self._dict_members[cat]