diff --git a/src/main/grammars/RpmSpecParser.bnf b/src/main/grammars/RpmSpecParser.bnf
index 0e0acab..bd20a7f 100644
--- a/src/main/grammars/RpmSpecParser.bnf
+++ b/src/main/grammars/RpmSpecParser.bnf
@@ -39,10 +39,10 @@ private anything ::= (wordOrMacro|'?'|'!'|'('|')'|'<'|'>'|'{'|'}'|'\')
private anyWord ::= (IDENTIFIER|BOOL_LITERAL|FLOAT_LITERAL|INTEGER_LITERAL|CODE|':'|'%%'|'-')
private wordOrMacro ::= (macroParam|shellCommand|fullMacro|notMacro|anyWord)
-private meta optionalBrackets ::= <> | <>>>
-private meta nestedBrackets ::= '{' (<> | <>>>) '}'
-private macroDefinitionBody ::= ('\' EOL|'%' CODE|wordOrMacro|'('|')'|'<'|'>')+
-macroDefinition ::= (global|define) IDENTIFIER ('(' anyWord* ')')? <> {pin=1
+private meta optionalBrackets ::= <>>> | <>
+private meta nestedBrackets ::= '{' (<>>> | <>) '}'
+private macroDefinitionBody ::= ('\' EOL|'%' CODE|wordOrMacro|'('|')'|'<'|'>')
+macroDefinition ::= (global|define) IDENTIFIER ('(' anyWord* ')')? <>+ {pin=1
implements="com.intellij.psi.PsiNameIdentifierOwner"
mixin="com.carbonblack.intellij.rpmspec.psi.RpmSpecMacroDefinitionElementImpl"}
macroUndefine ::= undefine macro {pin=1}