def __init__(self, reset_at="stream", emit_at="stream", mode="eval"):
        """
        Creates the CumulativeAccuracy plugin metric,
        this stores and updates the Cumulative Accuracy metric described in
        "On the importance of cross-task
        features for class-incremental learning"
        Soutif et. al, https://arxiv.org/abs/2106.11930
        """

        self.classes_seen_so_far = set()
        self.classes_splits = {}
        super().__init__(
            CumulativeAccuracy(), reset_at=reset_at, emit_at=emit_at, mode=mode
        )

        Creates the CumulativeAccuracy plugin metric,
        this stores and updates the Cumulative Accuracy metric described in
        "On the importance of cross-task
        features for class-incremental learning"
        Soutif et. al, https://arxiv.org/abs/2106.11930
        
avalanche/evaluation/metrics/cumulative_accuracies.py