def token_counts(self) -> Counter:
        """Returns a counter of the number of times each token is used
        in a constraint.
        """
        token_counts = Counter()
        kids = list(self.children.values())
        while len(kids) > 0:
            kid = kids.pop()
            token_counts[kid.id] += kid.num_constraints
            kids += list(kid.children.values())

        return token_counts
Returns a counter of the number of times each token is used
        in a constraint.
        
structured_prompting/fairseq-version/fairseq/fairseq/token_generation_constraints.py