sequence : { cout << "empty\n"; } | A { cout << (char*) *$1 << "(a) : A\n"; } sequence | B { cout << *$1 << " (a) : B\n"; } sequence ;