text: <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  <plist version="1.0">
  <dict>
  	<key>fileTypes</key>
  	<array>
  		<string>pde</string>
  		<string>java</string>
  	</array>
  	<key>foldingStartMarker</key>
  	<string>(\{\s*(//.*)?$|^\s*// \{\{\{)</string>
  	<key>foldingStopMarker</key>
  	<string>^\s*(\}|// \}\}\}$)</string>
  	<key>name</key>
  	<string>Processing</string>
  	<key>patterns</key>
  	<array>
  		<dict>
  			<key>captures</key>
  			<dict>
  				<key>1</key>
  				<dict>
  					<key>name</key>
  					<string>keyword.other.package.java</string>
  				</dict>
  				<key>2</key>
  				<dict>
  					<key>name</key>
  					<string>storage.modifier.package.java</string>
  				</dict>
  				<key>3</key>
  				<dict>
  					<key>name</key>
  					<string>punctuation.terminator.java</string>
  				</dict>
  			</dict>
  			<key>match</key>
  			<string>^\s*(package)\b(?:\s*([^ ;$]+)\s*(;)?)?</string>
  			<key>name</key>
  			<string>meta.package.java</string>
  		</dict>
  		<dict>
  			<key>captures</key>
  			<dict>
  				<key>1</key>
  				<dict>
  					<key>name</key>
  					<string>keyword.other.import.processing</string>
  				</dict>
  				<key>2</key>
  				<dict>
  					<key>name</key>
  					<string>storage.modifier.import.processing</string>
  				</dict>
  				<key>3</key>
  				<dict>
  					<key>name</key>
  					<string>punctuation.terminator.processing</string>
  				</dict>
  			</dict>
  			<key>match</key>
  			<string>^\s*(import)\b(?:\s*([^ ;$]+)\s*(;)?)?</string>
  			<key>name</key>
  			<string>meta.import.processing</string>
  		</dict>
  		<dict>
  			<key>include</key>
  			<string>#class-body</string>
  		</dict>
  	</array>
  	<key>repository</key>
  	<dict>
  		<key>all-types</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#primitive-arrays</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#primitive-types</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#object-types</string>
  				</dict>
  			</array>
  		</dict>
  		<key>annotations</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>(@[^ (]+)(\()</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.type.annotation.processing</string>
  						</dict>
  						<key>2</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.annotation-arguments.begin.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(\))</string>
  					<key>endCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.annotation-arguments.end.processing</string>
  						</dict>
  					</dict>
  					<key>name</key>
  					<string>meta.declaration.annotation.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>captures</key>
  							<dict>
  								<key>1</key>
  								<dict>
  									<key>name</key>
  									<string>constant.other.key.processing</string>
  								</dict>
  								<key>2</key>
  								<dict>
  									<key>name</key>
  									<string>keyword.operator.assignment.processing</string>
  								</dict>
  							</dict>
  							<key>match</key>
  							<string>(\w*)\s*(=)</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#code</string>
  						</dict>
  						<dict>
  							<key>match</key>
  							<string>,</string>
  							<key>name</key>
  							<string>punctuation.seperator.property.processing</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>@\w*</string>
  					<key>name</key>
  					<string>storage.type.annotation.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>anonymous-classes-and-new</key>
  		<dict>
  			<key>begin</key>
  			<string>\bnew\b</string>
  			<key>beginCaptures</key>
  			<dict>
  				<key>0</key>
  				<dict>
  					<key>name</key>
  					<string>keyword.control.new.processing</string>
  				</dict>
  			</dict>
  			<key>end</key>
  			<string>(?&lt;=\)|\])(?!\s*{)|(?&lt;=})|(?=;)</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>(\w+)\s*(?=\[)</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.type.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>}|(?=;|\))</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>begin</key>
  							<string>\[</string>
  							<key>end</key>
  							<string>\]</string>
  							<key>patterns</key>
  							<array>
  								<dict>
  									<key>include</key>
  									<string>#inner-code</string>
  								</dict>
  							</array>
  						</dict>
  						<dict>
  							<key>begin</key>
  							<string>{</string>
  							<key>end</key>
  							<string>(?=})</string>
  							<key>patterns</key>
  							<array>
  								<dict>
  									<key>include</key>
  									<string>#code</string>
  								</dict>
  							</array>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>(?=\w.*\()</string>
  					<key>end</key>
  					<string>(?&lt;=\))</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types</string>
  						</dict>
  						<dict>
  							<key>begin</key>
  							<string>\(</string>
  							<key>beginCaptures</key>
  							<dict>
  								<key>1</key>
  								<dict>
  									<key>name</key>
  									<string>storage.type.processing</string>
  								</dict>
  							</dict>
  							<key>end</key>
  							<string>\)</string>
  							<key>patterns</key>
  							<array>
  								<dict>
  									<key>include</key>
  									<string>#inner-code</string>
  								</dict>
  							</array>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>{</string>
  					<key>end</key>
  					<string>}</string>
  					<key>name</key>
  					<string>meta.inner-class.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#class-body</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>assertions</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>\b(assert)\s</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>keyword.control.assert.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>$</string>
  					<key>name</key>
  					<string>meta.declaration.assertion.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>match</key>
  							<string>:</string>
  							<key>name</key>
  							<string>keyword.operator.assert.expression-seperator.processing</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#code</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>class</key>
  		<dict>
  			<key>begin</key>
  			<string>(?=\w?[\w\s]*(?:class|(?:@)?interface)\s+\w+)</string>
  			<key>end</key>
  			<string>}</string>
  			<key>endCaptures</key>
  			<dict>
  				<key>0</key>
  				<dict>
  					<key>name</key>
  					<string>punctuation.section.class.end.processing</string>
  				</dict>
  			</dict>
  			<key>name</key>
  			<string>meta.class.processing</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.processing</string>
  						</dict>
  						<key>2</key>
  						<dict>
  							<key>name</key>
  							<string>entity.name.type.class.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>(class|(?:@)?interface)\s+(\w+)</string>
  					<key>name</key>
  					<string>meta.class.identifier.processing</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>extends</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.extends.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(?={|implements)</string>
  					<key>name</key>
  					<string>meta.definition.class.inherited.classes.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types-inherited</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#comments</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>(implements)\s</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.implements.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(?=\s*extends|\{)</string>
  					<key>name</key>
  					<string>meta.definition.class.implemented.interfaces.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types-inherited</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#comments</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>{</string>
  					<key>end</key>
  					<string>(?=})</string>
  					<key>name</key>
  					<string>meta.class.body.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#class-body</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>enum</key>
  		<dict>
  			<key>begin</key>
  			<string>(?=\w?[\w\s]*(?:enum)\s+\w+)</string>
  			<key>end</key>
  			<string>}</string>
  			<key>endCaptures</key>
  			<dict>
  				<key>0</key>
  				<dict>
  					<key>name</key>
  					<string>punctuation.section.class.end.processing</string>
  				</dict>
  			</dict>
  			<key>name</key>
  			<string>meta.class.processing</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.processing</string>
  						</dict>
  						<key>2</key>
  						<dict>
  							<key>name</key>
  							<string>entity.name.type.class.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>(enum)\s+(\w+)</string>
  					<key>name</key>
  					<string>meta.class.identifier.processing</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>extends</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.extends.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(?={|implements)</string>
  					<key>name</key>
  					<string>meta.definition.class.inherited.classes.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types-inherited</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#comments</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>(implements)\s</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>storage.modifier.implements.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(?=\s*extends|\{)</string>
  					<key>name</key>
  					<string>meta.definition.class.implemented.interfaces.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types-inherited</string>
  						</dict>
  						<dict>
  							<key>include</key>
  							<string>#comments</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>{</string>
  					<key>end</key>
  					<string>(?=})</string>
  					<key>name</key>
  					<string>meta.class.body.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#enum-body</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>class-body</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#class</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#enum</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#methods</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#annotations</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#code</string>
  				</dict>
  			</array>
  		</dict>
  		<key>enum-body</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#class</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#enum</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#enums</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#methods</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#annotations</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#code</string>
  				</dict>
  			</array>
  		</dict>
  		<key>code</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#class</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#enum</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>{</string>
  					<key>end</key>
  					<string>}</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#code</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#assertions</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#parens</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#constants-and-special-vars</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#anonymous-classes-and-new</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#keywords</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#operators</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#strings</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#all-types</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#function-calls</string>
  				</dict>
  			</array>
  		</dict>
  		<key>inner-code</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#comments</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#assertions</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#parens</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#constants-and-special-vars</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#anonymous-classes-and-new</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#keywords</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#inner-operators</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#strings</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#all-types</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#function-calls</string>
  				</dict>
  			</array>
  		</dict>
  		<key>comments</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.comment.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>/\*\*/</string>
  					<key>name</key>
  					<string>comment.block.empty.processing</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>text.html.javadoc</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#comments-inline</string>
  				</dict>
  			</array>
  		</dict>
  		<key>comments-inline</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>/\*</string>
  					<key>captures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.comment.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>\*/</string>
  					<key>name</key>
  					<string>comment.block.processing</string>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>comment.line.double-slash.processing</string>
  						</dict>
  						<key>2</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.comment.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>\s*((//).*$\n?)</string>
  				</dict>
  			</array>
  		</dict>
  		<key>constants-and-special-vars</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>\b(true|false|null)\b</string>
  					<key>name</key>
  					<string>constant.language.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(this|super)\b</string>
  					<key>name</key>
  					<string>variable.language.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\b</string>
  					<key>name</key>
  					<string>constant.numeric.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(#[0-9a-fA-F]+)\b</string>
  					<key>name</key>
  					<string>constant.numeric.processing</string>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>keyword.operator.dereference.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>(\.)?\b([A-Z][A-Z0-9_]+)(?!&lt;|\.class|\s*\w+\s*=)\b</string>
  					<key>name</key>
  					<string>constant.other.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>enums</key>
  		<dict>
  			<key>begin</key>
  			<string>^(?=\s*[A-Z0-9_]+\s*({|\(|,))</string>
  			<key>end</key>
  			<string>(?=;|})</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>\w+</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>constant.other.enum.java</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>(?=,|;|})</string>
  					<key>name</key>
  					<string>meta.enum.java</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#parens</string>
  						</dict>
  						<dict>
  							<key>begin</key>
  							<string>{</string>
  							<key>end</key>
  							<string>}</string>
  							<key>patterns</key>
  							<array>
  								<dict>
  									<key>include</key>
  									<string>#class-body</string>
  								</dict>
  							</array>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>keywords</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>\b(try|catch|finally|throw)\b</string>
  					<key>name</key>
  					<string>keyword.control.catch-exception.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\?|:</string>
  					<key>name</key>
  					<string>keyword.control.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(return|break|case|continue|default|do|while|for|switch|if|else)\b</string>
  					<key>name</key>
  					<string>keyword.control.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(displayHeight|displayWidth|focused|frameCount|frameRate|height|key|keyCode|keyPressed|mouseButton|mousePressed|mouseX|mouseY|online|pixelHeight|pixelWidth|pixels|pmouseX|pmouseY|screen|width)\b</string>
  					<key>name</key>
  					<string>constant.other.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(ADD|ALIGN_CENTER|ALIGN_LEFT|ALIGN_RIGHT|ALPHA|ALPHA_MASK|ALT|AMBIENT|ARGB|ARROW|BACKSPACE|BEVEL|BLEND|BLUE_MASK|BLUR|CENTER|CENTER_RADIUS|CHATTER|CODED|COMPLAINT|COMPONENT|COMPOSITE|CONCAVE_POLYGON|CONTROL|CONVEX_POLYGON|CORNER|CORNERS|CROSS|CUSTOM|DARKEST|DEGREES|DEG_TO_RAD|DELETE|DIFFERENCE|DIFFUSE|DISABLED|DISABLE_TEXT_SMOOTH|DOWN|ENTER|EPSILON|ESC|FX2D|GIF|GREEN_MASK|GREY|HALF|HALF_PI|HAND|HARD_LIGHT|HSB|IMAGE|INVERT|JAVA2D|JPEG|LEFT|LIGHTEST|LINES|LINE_LOOP|LINE_STRIP|MAX_FLOAT|MITER|MODEL|MOVE|MULTIPLY|NORMALIZED|NO_DEPTH_TEST|NTSC|ONE|OPAQUE|OPENGL|ORTHOGRAPHIC|OVERLAY|P2D|P3D|PAL|PDF|PERSPECTIVE|PI|PIXEL_CENTER|POINTS|POLYGON|POSTERIZE|PROBLEM|PROJECT|QUADS|QUAD_STRIP|QUARTER_PI|RADIANS|RAD_TO_DEG|RED_MASK|REPLACE|RETURN|RGB|RIGHT|ROUND|SCREEN|SECAM|SHIFT|SOFT_LIGHT|SPAN|SPECULAR|SQUARE|SUBTRACT|SVIDEO|TAB|TARGA|TEXT|TFF|THIRD_PI|THRESHOLD|TIFF|TRIANGLES|TRIANGLE_FAN|TRIANGLE_STRIP|TUNER|TAU|TWO|TWO_PI|UP|WAIT|WHITESPACE)\b</string>
  					<key>name</key>
  					<string>support.constant.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(Array|Character|FloatDict|FloatList|IntDict|IntList|Integer|JSONArray|JSONObject|Math|Object|PFont|PGraphics|PImage|PShader|PShape|PSound|PVector|StringBuffer|StringDict|StringList|Table|TableRow|Thread|XML)\b</string>
  					<key>name</key>
  					<string>support.class.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\b(instanceof)\b</string>
  					<key>name</key>
  					<string>keyword.operator.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>operators</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#common-operators</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>=</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>keyword.operator.assignment.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>;</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#inner-code</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>;</string>
  					<key>name</key>
  					<string>punctuation.terminator.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>inner-operators</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#common-operators</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(=)</string>
  					<key>name</key>
  					<string>keyword.operator.assignment.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>common-operators</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>(==|!=|&lt;=|&gt;=|&lt;&gt;|&lt;|&gt;)</string>
  					<key>name</key>
  					<string>keyword.operator.comparison.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(\-\-|\+\+)</string>
  					<key>name</key>
  					<string>keyword.operator.increment-decrement.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(\-|\+|\*|\/|%)</string>
  					<key>name</key>
  					<string>keyword.operator.arithmetic.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(!|&amp;&amp;|\|\|)</string>
  					<key>name</key>
  					<string>keyword.operator.logical.processing</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>(?&lt;=\S)\.(?=\S)</string>
  					<key>name</key>
  					<string>keyword.operator.dereference.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>function-calls</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>support.function.any-method.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>(?x)
      				(
      					(?!while|for|do|if|else|switch|catch|enumerate|return|r?iterate)(?: \b[A-Za-z_][A-Za-z0-9_]*+\b | :: )*+                  # actual name
      				)
      				 \s*(?:\()</string>
  					<key>name</key>
  					<string>meta.function-call.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>methods</key>
  		<dict>
  			<key>begin</key>
  			<string>(?!new)(?=\w.*\s+)(?=[^=]+\()</string>
  			<key>end</key>
  			<string>}|(?=;)</string>
  			<key>name</key>
  			<string>meta.method.processing</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#storage-modifiers</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>(\w+)\s*\(</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>entity.name.function.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>\)</string>
  					<key>name</key>
  					<string>meta.method.identifier.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#parameters</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>(?=\w.*\s+\w+\s*\()</string>
  					<key>end</key>
  					<string>(?=\w+\s*\()</string>
  					<key>name</key>
  					<string>meta.method.return-type.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#all-types</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#throws</string>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>{</string>
  					<key>end</key>
  					<string>(?=})</string>
  					<key>name</key>
  					<string>meta.method.body.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#code</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>object-types</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>\b((?:[a-z]\w*\.)*[A-Z]+\w*)&lt;</string>
  					<key>end</key>
  					<string>&gt;|[^\w\s,\?&lt;\[\]]</string>
  					<key>name</key>
  					<string>storage.type.generic.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types</string>
  						</dict>
  						<dict>
  							<key>begin</key>
  							<string>&lt;</string>
  							<key>comment</key>
  							<string>This is just to support &lt;&gt;'s with no actual type prefix</string>
  							<key>end</key>
  							<string>&gt;|[^\w\s,\[\]&lt;]</string>
  							<key>name</key>
  							<string>storage.type.generic.processing</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>\b((?:[a-z]\w*\.)*[A-Z]+\w*)(?=\[)</string>
  					<key>end</key>
  					<string>(?=[^\]\s])</string>
  					<key>name</key>
  					<string>storage.type.object.array.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>begin</key>
  							<string>\[</string>
  							<key>end</key>
  							<string>\]</string>
  							<key>patterns</key>
  							<array>
  								<dict>
  									<key>include</key>
  									<string>#inner-code</string>
  								</dict>
  							</array>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>keyword.operator.dereference.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>\b(?:[a-z]\w*(\.))*[A-Z]+\w*\b</string>
  					<key>name</key>
  					<string>storage.type.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>object-types-inherited</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>\b((?:[a-z]\w*\.)*[A-Z]+\w*)&lt;</string>
  					<key>end</key>
  					<string>&gt;|[^\w\s,&lt;]</string>
  					<key>name</key>
  					<string>entity.other.inherited-class.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>include</key>
  							<string>#object-types</string>
  						</dict>
  						<dict>
  							<key>begin</key>
  							<string>&lt;</string>
  							<key>comment</key>
  							<string>This is just to support &lt;&gt;'s with no actual type prefix</string>
  							<key>end</key>
  							<string>&gt;|[^\w\s,&lt;]</string>
  							<key>name</key>
  							<string>storage.type.generic.processing</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>captures</key>
  					<dict>
  						<key>1</key>
  						<dict>
  							<key>name</key>
  							<string>keyword.operator.dereference.processing</string>
  						</dict>
  					</dict>
  					<key>match</key>
  					<string>\b(?:[a-z]\w*(\.))*[A-Z]+\w*</string>
  					<key>name</key>
  					<string>entity.other.inherited-class.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>parameters</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>final</string>
  					<key>name</key>
  					<string>storage.modifier.processing</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#primitive-arrays</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#primitive-types</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#object-types</string>
  				</dict>
  				<dict>
  					<key>match</key>
  					<string>\w+</string>
  					<key>name</key>
  					<string>variable.parameter.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>parens</key>
  		<dict>
  			<key>begin</key>
  			<string>\(</string>
  			<key>end</key>
  			<string>\)</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#inner-code</string>
  				</dict>
  			</array>
  		</dict>
  		<key>primitive-arrays</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>\b(?:void|boolean|byte|char|short|int|float|long|double|color)(\[\])*\b</string>
  					<key>name</key>
  					<string>storage.type.primitive.array.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>primitive-types</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>match</key>
  					<string>\b(?:void|boolean|byte|char|short|int|float|long|double|color)\b</string>
  					<key>name</key>
  					<string>storage.type.primitive.processing</string>
  				</dict>
  			</array>
  		</dict>
  		<key>storage-modifiers</key>
  		<dict>
  			<key>captures</key>
  			<dict>
  				<key>1</key>
  				<dict>
  					<key>name</key>
  					<string>storage.modifier.processing</string>
  				</dict>
  			</dict>
  			<key>match</key>
  			<string>\b(public|private|protected|static|final|native|synchronized|abstract|threadsafe|transient)\b</string>
  		</dict>
  		<key>strings</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>begin</key>
  					<string>"</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.string.begin.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>"</string>
  					<key>endCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.string.end.processing</string>
  						</dict>
  					</dict>
  					<key>name</key>
  					<string>string.quoted.double.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>match</key>
  							<string>\\.</string>
  							<key>name</key>
  							<string>constant.character.escape.processing</string>
  						</dict>
  					</array>
  				</dict>
  				<dict>
  					<key>begin</key>
  					<string>'</string>
  					<key>beginCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.string.begin.processing</string>
  						</dict>
  					</dict>
  					<key>end</key>
  					<string>'</string>
  					<key>endCaptures</key>
  					<dict>
  						<key>0</key>
  						<dict>
  							<key>name</key>
  							<string>punctuation.definition.string.end.processing</string>
  						</dict>
  					</dict>
  					<key>name</key>
  					<string>string.quoted.single.processing</string>
  					<key>patterns</key>
  					<array>
  						<dict>
  							<key>match</key>
  							<string>\\.</string>
  							<key>name</key>
  							<string>constant.character.escape.processing</string>
  						</dict>
  					</array>
  				</dict>
  			</array>
  		</dict>
  		<key>throws</key>
  		<dict>
  			<key>begin</key>
  			<string>throws</string>
  			<key>beginCaptures</key>
  			<dict>
  				<key>0</key>
  				<dict>
  					<key>name</key>
  					<string>storage.modifier.processing</string>
  				</dict>
  			</dict>
  			<key>end</key>
  			<string>(?={|;)</string>
  			<key>name</key>
  			<string>meta.throwables.processing</string>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#object-types</string>
  				</dict>
  			</array>
  		</dict>
  		<key>values</key>
  		<dict>
  			<key>patterns</key>
  			<array>
  				<dict>
  					<key>include</key>
  					<string>#strings</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#object-types</string>
  				</dict>
  				<dict>
  					<key>include</key>
  					<string>#constants-and-special-vars</string>
  				</dict>
  			</array>
  		</dict>
  	</dict>
  	<key>scopeName</key>
  	<string>source.pde</string>
  	<key>uuid</key>
  	<string>D3D6351E-1416-4AE7-8060-665C6108D2C5</string>
  </dict>
  </plist>
  