grammar
: '<' identifier '>' tag_contents '<' identifier '>'
| grammar '<' identifier '>' tag_contents '<' identifier '>';
tag_contents
: identifier '=' tag_end
| tag_contents identifier '=' tag_end;
tag_end
: number
| identifier '.' identifier;
enum TokenType {
LessThan,
GreaterThan,
Identifier,
Number,
Dot,
Equals
};
Z3JhbW1hcgogICAgOiAnPCcgaWRlbnRpZmllciAnPicgdGFnX2NvbnRlbnRzICc8JyBpZGVudGlmaWVyICc+JwogICAgfCBncmFtbWFyICc8JyBpZGVudGlmaWVyICc+JyB0YWdfY29udGVudHMgJzwnIGlkZW50aWZpZXIgJz4nOwoKdGFnX2NvbnRlbnRzCiAgICA6IGlkZW50aWZpZXIgJz0nIHRhZ19lbmQKICAgIHwgdGFnX2NvbnRlbnRzIGlkZW50aWZpZXIgJz0nIHRhZ19lbmQ7Cgp0YWdfZW5kCiAgICA6IG51bWJlcgogICAgfCBpZGVudGlmaWVyICcuJyBpZGVudGlmaWVyOwoKZW51bSBUb2tlblR5cGUgewogICAgTGVzc1RoYW4sCiAgICBHcmVhdGVyVGhhbiwKICAgIElkZW50aWZpZXIsCiAgICBOdW1iZXIsCiAgICBEb3QsCiAgICBFcXVhbHMKfTs=