''            Text
'// Most examples from https://github.com/rse/es6-features under MIT license\n' Comment.Single

'const'       Keyword.Declaration
' '           Text
'PI'          Name.Other
' '           Text
'='           Operator
' '           Text
'3.141593'    Literal.Number.Float
';'           Punctuation
'\n\n'        Text

'let'         Keyword.Declaration
' '           Text
'callbacks'   Name.Other
' '           Text
'='           Operator
' '           Text
'['           Punctuation
']'           Punctuation
';'           Punctuation
'\n\n'        Text

'odds'        Name.Other
'  '          Text
'='           Operator
' '           Text
'evens'       Name.Other
'.'           Punctuation
'map'         Name.Other
'('           Punctuation
'v'           Name.Other
' '           Text
'=>'          Punctuation
' '           Text
'v'           Name.Other
' '           Text
'+'           Operator
' '           Text
'1'           Literal.Number.Float
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'nums'        Name.Other
'.'           Punctuation
'forEach'     Name.Other
'('           Punctuation
'v'           Name.Other
' '           Text
'=>'          Punctuation
' '           Text
'{'           Punctuation
'\n   '       Text
'if'          Keyword
' '           Text
'('           Punctuation
'v'           Name.Other
' '           Text
'%'           Operator
' '           Text
'5'           Literal.Number.Float
' '           Text
'==='         Operator
' '           Text
'0'           Literal.Number.Float
')'           Punctuation
'\n       '   Text
'fives'       Name.Other
'.'           Punctuation
'push'        Name.Other
'('           Punctuation
'v'           Name.Other
')'           Punctuation
';'           Punctuation
'\n'          Text

'}'           Punctuation
')'           Punctuation
'\n\n'        Text

'function'    Keyword.Declaration
' '           Text
'f'           Name.Other
' '           Text
'('           Punctuation
'x'           Name.Other
','           Punctuation
' '           Text
'y'           Name.Other
','           Punctuation
' '           Text
'...'         Punctuation
'a'           Name.Other
')'           Punctuation
' '           Text
'{'           Punctuation
'\n    '      Text
'return'      Keyword
' '           Text
'('           Punctuation
'x'           Name.Other
' '           Text
'+'           Operator
' '           Text
'y'           Name.Other
')'           Punctuation
' '           Text
'*'           Operator
' '           Text
'a'           Name.Other
'.'           Punctuation
'length'      Name.Other
';'           Punctuation
'\n'          Text

'}'           Punctuation
'\n\n'        Text

'var'         Keyword.Declaration
' '           Text
'params'      Name.Other
' '           Text
'='           Operator
' '           Text
'['           Punctuation
' '           Text
'"hello"'     Literal.String.Double
','           Punctuation
' '           Text
'true'        Keyword.Constant
','           Punctuation
' '           Text
'7'           Literal.Number.Float
' '           Text
']'           Punctuation
';'           Punctuation
'\n'          Text

'var'         Keyword.Declaration
' '           Text
'other'       Name.Other
' '           Text
'='           Operator
' '           Text
'['           Punctuation
' '           Text
'1'           Literal.Number.Float
','           Punctuation
' '           Text
'2'           Literal.Number.Float
','           Punctuation
' '           Text
'...'         Punctuation
'params'      Name.Other
' '           Text
']'           Punctuation
';'           Punctuation
' '           Text
'// [ 1, 2, "hello", true, 7 ]\n' Comment.Single

'f'           Name.Other
'('           Punctuation
'1'           Literal.Number.Float
','           Punctuation
' '           Text
'2'           Literal.Number.Float
','           Punctuation
' '           Text
'...'         Punctuation
'params'      Name.Other
')'           Punctuation
' '           Text
'==='         Operator
' '           Text
'9'           Literal.Number.Float
';'           Punctuation
'\n\n'        Text

'var'         Keyword.Declaration
' '           Text
'str'         Name.Other
' '           Text
'='           Operator
' '           Text
'"foo"'       Literal.String.Double
';'           Punctuation
'\n'          Text

'var'         Keyword.Declaration
' '           Text
'chars'       Name.Other
' '           Text
'='           Operator
' '           Text
'['           Punctuation
' '           Text
'...'         Punctuation
'str'         Name.Other
' '           Text
']'           Punctuation
';'           Punctuation
' '           Text
'// [ "f", "o", "o" ]\n' Comment.Single

'\n'          Text

'var'         Keyword.Declaration
' '           Text
'customer'    Name.Other
' '           Text
'='           Operator
' '           Text
'{'           Punctuation
' '           Text
'name'        Name.Other
':'           Operator
' '           Text
'"Foo"'       Literal.String.Double
' '           Text
'}'           Punctuation
';'           Punctuation
'\n'          Text

'var'         Keyword.Declaration
' '           Text
'card'        Name.Other
' '           Text
'='           Operator
' '           Text
'{'           Punctuation
' '           Text
'amount'      Name.Other
':'           Operator
' '           Text
'7'           Literal.Number.Float
','           Punctuation
' '           Text
'product'     Name.Other
':'           Operator
' '           Text
'"Bar"'       Literal.String.Double
','           Punctuation
' '           Text
'unitprice'   Name.Other
':'           Operator
' '           Text
'42'          Literal.Number.Float
' '           Text
'}'           Punctuation
';'           Punctuation
'\n'          Text

'message'     Name.Other
' '           Text
'='           Operator
' '           Text
'`'           Literal.String.Backtick
'Hello '      Literal.String.Backtick
'${'          Literal.String.Interpol
'customer'    Name.Other
'.'           Punctuation
'name'        Name.Other
'}'           Literal.String.Interpol
',\nwant to buy ' Literal.String.Backtick
'${'          Literal.String.Interpol
'card'        Name.Other
'.'           Punctuation
'amount'      Name.Other
'}'           Literal.String.Interpol
' '           Literal.String.Backtick
'${'          Literal.String.Interpol
'card'        Name.Other
'.'           Punctuation
'product'     Name.Other
'}'           Literal.String.Interpol
' for\na total of ' Literal.String.Backtick
'${'          Literal.String.Interpol
'card'        Name.Other
'.'           Punctuation
'amount'      Name.Other
' '           Text
'*'           Operator
' '           Text
'card'        Name.Other
'.'           Punctuation
'unitprice'   Name.Other
'}'           Literal.String.Interpol
' bucks?'     Literal.String.Backtick
'`'           Literal.String.Backtick
';'           Punctuation
'\n\n'        Text

'0b111110111' Literal.Number.Bin
' '           Text
'==='         Operator
' '           Text
'503'         Literal.Number.Float
';'           Punctuation
'\n'          Text

'0o767'       Literal.Number.Oct
' '           Text
'==='         Operator
' '           Text
'503'         Literal.Number.Float
';'           Punctuation
'\n\n'        Text

'for'         Keyword
' '           Text
'('           Punctuation
'let'         Keyword.Declaration
' '           Text
'codepoint'   Name.Other
' '           Text
'of'          Keyword
' '           Text
'"𠮷"'         Literal.String.Double
')'           Punctuation
' '           Text
'console'     Name.Other
'.'           Punctuation
'log'         Name.Other
'('           Punctuation
'codepoint'   Name.Other
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'function'    Keyword.Declaration
'*'           Operator
' '           Text
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'*'           Operator
'function'    Keyword.Declaration
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'yield'       Keyword
';'           Punctuation
'\n\n'        Text

'export'      Keyword
' '           Text
'class'       Keyword.Declaration
' '           Text
'Node'        Name.Other
' '           Text
'{'           Punctuation
'\n'          Text

'}'           Punctuation
'\n\n'        Text

'class'       Keyword.Declaration
' '           Text
'A'           Name.Other
' '           Text
'{'           Punctuation
'\n    '      Text
'constructor' Keyword.Reserved
'('           Punctuation
')'           Punctuation
' '           Text
'{'           Punctuation
'\n        '  Text
'super'       Keyword
'('           Punctuation
')'           Punctuation
'\n    '      Text
'}'           Punctuation
'\n\n    '    Text
'constructor' Keyword.Reserved
'('           Punctuation
'test'        Name.Other
')'           Punctuation
' '           Text
'{'           Punctuation
'\n        '  Text
'super'       Keyword
'('           Punctuation
'test'        Name.Other
')'           Punctuation
';'           Punctuation
'\n    '      Text
'}'           Punctuation
'\n'          Text

'}'           Punctuation
'\n\n'        Text

'isFinite'    Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'isNaN'       Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'x'           Name.Other
' '           Text
'='           Operator
' '           Text
'new'         Operator.Word
' '           Text
'Promise'     Name.Builtin
'('           Punctuation
'...'         Punctuation
'a'           Name.Other
')'           Punctuation
';'           Punctuation
'\n'          Text

'x'           Name.Other
' '           Text
'='           Operator
' '           Text
'new'         Operator.Word
' '           Text
'Proxy'       Name.Builtin
'('           Punctuation
'...'         Punctuation
'a'           Name.Other
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'x'           Name.Other
' '           Text
'??='         Operator
' '           Text
'1'           Literal.Number.Float
';'           Punctuation
'\n'          Text

'x'           Name.Other
' '           Text
'&&='         Operator
' '           Text
'2'           Literal.Number.Float
' '           Text
'??'          Operator
' '           Text
'3'           Literal.Number.Float
';'           Punctuation
'\n'          Text

'x'           Name.Other
' '           Text
'**='         Operator
' '           Text
'2'           Literal.Number.Float
'**'          Operator
'3'           Literal.Number.Float
'|'           Operator
'2'           Literal.Number.Float
'&'           Operator
'4'           Literal.Number.Float
';'           Punctuation
'\n'          Text

'x'           Name.Other
' '           Text
'||='         Operator
' '           Text
'2'           Literal.Number.Float
';'           Punctuation
'\n\n'        Text

'throw'       Keyword
' '           Text
'new'         Operator.Word
' '           Text
'Error'       Name.Exception
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'throw'       Keyword
' '           Text
'new'         Operator.Word
' '           Text
'TypeError'   Name.Exception
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'new'         Operator.Word
' '           Text
'Uint8ClampedArray' Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'new'         Operator.Word
' '           Text
'DataView'    Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'new'         Operator.Word
' '           Text
'Map'         Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n'          Text

'new'         Operator.Word
' '           Text
'WeakMap'     Name.Builtin
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'Intl'        Name.Builtin
'.'           Punctuation
'DateTimeFormat' Name.Other
'('           Punctuation
')'           Punctuation
';'           Punctuation
'\n\n'        Text

'globalThis'  Name.Builtin
' '           Text
'='           Operator
' '           Text
'window'      Name.Builtin
' '           Text
'='           Operator
' '           Text
'global'      Name.Builtin
' '           Text
'='           Operator
' '           Text
'this'        Keyword
';'           Punctuation
'\n'          Text
