     'include': '#integer'
   }
   {
-    'include': '#assignment'
-  }
-  {
-    'include': '#semicolon'
-  }
-  {
     'include': '#illegal-variable'
+  }
+  {
+    'match': ','
+    'name': 'meta.delimiter.comma.stan'
+  }
+  {
+    'match': '\\;'
+    'name': 'punctuation.terminator.statement.stan'
+  }
+  {
+    'begin': '{|}'
+    'name': 'meta.brace.curly.stan'
+  }
+  {
+    'begin': '\\('
+    'beginCaptures':
+      '0':
+        'name': 'meta.brace.round.stan'
+    'end': '\\)'
+    'endCaptures'
+      '0':
+        'name': 'meta.brace.round.stan'
+    'patterns': [
+      'include': '$self'
+    ]
+  }
+  {
+    'match': '\\[|\\]'
+    'name': 'meta.brace.square.stan'
   }
 ]
 'repository':

    '
    'name': 'constant.numeric.real.stan'

  'operators':
    'patterns': [
      {
        'matches': '\\|\\||&&|!'
        'name': 'keyword.operator.other.stan'
        'comment': 'logical operators'
      }
      {
        'matches': '==|!=|<=?|>=?'
        'name': 'keyword.operator.other.stan'
        'comment': 'logical operators'
      }
      {
        'matches': "+|-|*|/|%|\\\\|\\.[*/]|\\^|'"
        'name': 'keyword.operator.other.stan'
        'comment': 'arithmetic and matrix operators'
      }
    ]

  'integer':
    'match': '\\b-?\\d+'
    'name': 'constant.numeric.integer.stan'

            ]
          }
      ]
  'block-declaration':
    'match': '\\b(functions|data|transformed\\s+data|parameters|transformed\\s+parameters|model|generated\\s+quantities)\\b'
    'name': 'entity.name.type.stan'
