def METHOD_NAME(self) -> None:
    grammar = """
    start: foo 'E'
    foo: bar 'A' | 'B'
    bar: foo 'C' | 'D'
    """
    self.assertEqual(self.calculate_first_sets(grammar), {
        "foo": {"'D'", "'B'"},
        "bar": {"'D'"},
        "start": {"'D'", "'B'"},
    })