Diagram( Terminal('"'), ZeroOrMore(Choice(0, NonTerminal('character'), NonTerminal('escape'), NonTerminal('macro'))), Terminal('"'), NonTerminal('end_of_line') )