from typing import List


class BoundCountMap:

    def __init__(self, bound: List[List[str]]):
        self.data = {}
        self.bound = {}
        for group in bound:
            whole_group = set(group)
            for elem in group:
                self.data[elem] = 0
                self.bound[elem] = whole_group

    def __getitem__(self, item):
        return self.data.get(item)

    def __setitem__(self, key, value):
        for group_elem in self.bound[key]:
            self.data[group_elem] = value