<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>de.lars-sh</groupId>
	<artifactId>root</artifactId>
	<version>0.9.4</version>
	<packaging>pom</packaging>

	<name>Root POM</name>
	<description>This POM is meant to be used as root POM. Use de.lars-sh:parent for your own projects.</description>
	<url>https://github.com/lars-sh/parent</url>
	<licenses>
		<license>
			<name>MIT License</name>
			<url>https://opensource.org/licenses/MIT</url>
		</license>
	</licenses>

	<developers>
		<developer>
			<name>Lars Knickrehm</name>
			<email>mail@lars-sh.de</email>
			<url>https://lars-sh.de/</url>
		</developer>
	</developers>

	<modules>
		<module>parent</module>
		<module>parent-archetype</module>
		<module>utils</module>
		<module>utils-annotations</module>
		<module>utils-test</module>
	</modules>

	<scm>
		<connection>scm:git:git@github.com:lars-sh/parent.git</connection>
		<developerConnection>scm:git:git@github.com:lars-sh/parent.git</developerConnection>
		<url>https://github.com/lars-sh/parent</url>
	</scm>
	<issueManagement>
		<system>GitHub Issues</system>
		<url>https://github.com/lars-sh/parent/issues</url>
	</issueManagement>
	<ciManagement>
		<system>Travis</system>
		<url>https://travis-ci.org/lars-sh/parent</url>
	</ciManagement>
	<distributionManagement>
		<snapshotRepository>
			<id>sonatype-nexus-snapshots</id>
			<name>Sonatype Nexus Snapshots</name>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>sonatype-nexus-staging</id>
			<name>Sonatype Nexus Releases</name>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
		</repository>
	</distributionManagement>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

		<maven.compiler.failOnWarning>true</maven.compiler.failOnWarning>
		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>

		<!-- "project.build.mainClass" is meant to be used by child POMs to configure 
			a default main class, e.g. "de.larssh.Main". -->
		<project.build.mainClass></project.build.mainClass>

		<!-- "project.build.packageDependenciesPhase" is meant to be used by child 
			POMs to configure if an archive containing dependencies should be created. 
			Values can be "none" (disabled, default) or "package" (enabled) as this property 
			is used with the <phase> tag. -->
		<project.build.packageDependenciesPhase>none</project.build.packageDependenciesPhase>

		<!-- "org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation" 
			is meant to be used by child POMs to configure if Eclipse should enforce 
			@NonNullByDefault annotations on every package. Values can be "error", "warning", 
			"info" or "ignore" (disabled). -->
		<org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation>warning</org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation>

		<!-- "org.eclipse.jdt.core.compiler.annotation.nonnull.secondary" is meant 
			to be used by child POMs to configure secondary @NonNull annotations that 
			Eclipse should handle. Multiple values must be separated by comma. -->
		<org.eclipse.jdt.core.compiler.annotation.nonnull.secondary></org.eclipse.jdt.core.compiler.annotation.nonnull.secondary>

		<!-- "org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary" 
			is meant to be used by child POMs to configure secondary @NonNullByDefault 
			annotations that Eclipse should handle. Multiple values must be separated 
			by comma. -->
		<org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary></org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary>

		<!-- "org.eclipse.jdt.core.compiler.annotation.nullable.secondary" is meant 
			to be used by child POMs to configure secondary @Nullable annotations that 
			Eclipse should handle. Multiple values must be separated by comma. -->
		<org.eclipse.jdt.core.compiler.annotation.nullable.secondary>edu.umd.cs.findbugs.annotations.CheckForNull</org.eclipse.jdt.core.compiler.annotation.nullable.secondary>

		<!-- "org.eclipse.jdt.core.compiler.doc.comment.support" is meant to be 
			used by child POMs to configure if Eclipse should validate JavaDoc comments. 
			Values can be "enabled" or "disabled". -->
		<org.eclipse.jdt.core.compiler.doc.comment.support>enabled</org.eclipse.jdt.core.compiler.doc.comment.support>

		<!-- Versions: Dependencies -->
		<joor.version>0.9.12</joor.version>
		<junit-jupiter-api.version>5.5.1</junit-jupiter-api.version>
		<junit-jupiter-engine.version>5.5.1</junit-jupiter-engine.version>
		<junit-platform-runner.version>1.5.1</junit-platform-runner.version>
		<lombok-annotations.version>1.18.8</lombok-annotations.version>
		<mockito.version>3.0.0</mockito.version>
		<parent.version>0.9.4</parent.version>

		<!-- Versions: Plugin Dependencies -->
		<apache-ant.version>1.10.6</apache-ant.version>
		<checkstyle.version>8.23</checkstyle.version>
		<fb-contrib.version>7.4.3.sb</fb-contrib.version>
		<findsecbugs.version>1.8.0</findsecbugs.version>
		<lombok.version>1.18.8</lombok.version>
		<pmd.version>6.17.0</pmd.version>
		<spotbugs.version>3.1.12</spotbugs.version>

		<!-- Versions: Plugins -->
		<build-helper-maven-plugin.version>3.0.0</build-helper-maven-plugin.version>
		<jacoco-maven-plugin.version>0.8.4</jacoco-maven-plugin.version>
		<lifecycle-mapping.version>1.0.0</lifecycle-mapping.version>
		<lombok-maven-plugin.version>1.18.6.0</lombok-maven-plugin.version>
		<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>
		<maven-archetype-plugin.version>3.1.1</maven-archetype-plugin.version>
		<maven-assembly-plugin.version>3.1.1</maven-assembly-plugin.version>
		<maven-clean-plugin.version>3.1.0</maven-clean-plugin.version>
		<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
		<maven-dependency-plugin.version>3.1.1</maven-dependency-plugin.version>
		<maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
		<maven-enforcer-plugin.version>1.4.1</maven-enforcer-plugin.version>
		<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
		<maven-install-plugin.version>2.5.2</maven-install-plugin.version>
		<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
		<maven-jxr-plugin.version>3.0.0</maven-jxr-plugin.version>
		<maven-plugin-plugin.version>3.6.0</maven-plugin-plugin.version>
		<maven-pmd-plugin.version>3.12.0</maven-pmd-plugin.version>
		<maven-project-info-reports-plugin.version>3.0.0</maven-project-info-reports-plugin.version>
		<maven-release-plugin.version>2.5.3</maven-release-plugin.version>
		<maven-resources-plugin.version>3.1.0</maven-resources-plugin.version>
		<maven-shade-plugin.version>3.2.1</maven-shade-plugin.version>
		<maven-site-plugin.version>3.7.1</maven-site-plugin.version>
		<maven-source-plugin.version>3.1.0</maven-source-plugin.version>
		<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
		<maven-surefire-report-plugin.version>2.22.2</maven-surefire-report-plugin.version>
		<nexus-staging-maven-plugin.version>1.6.8</nexus-staging-maven-plugin.version>
		<spotbugs-maven-plugin.version>3.1.12.1</spotbugs-maven-plugin.version>
		<tidy-maven-plugin.version>1.1.0</tidy-maven-plugin.version>
		<versions-maven-plugin.version>2.7</versions-maven-plugin.version>

		<!-- Must not be updated to 3.1.0 as of https://issues.apache.org/jira/browse/MCHECKSTYLE-377 -->
		<maven-checkstyle-plugin.version>3.0.0</maven-checkstyle-plugin.version>

		<!-- Must not be updated to 3.1.2 as of https://bugs.eclipse.org/bugs/show_bug.cgi?id=547340 -->
		<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
	</properties>

	<dependencyManagement>
		<dependencies>
			<!-- de.lars-sh -->
			<dependency>
				<groupId>de.lars-sh</groupId>
				<artifactId>lombok-annotations</artifactId>
				<version>${lombok-annotations.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>de.lars-sh</groupId>
				<artifactId>utils-annotations</artifactId>
				<version>${parent.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>de.lars-sh</groupId>
				<artifactId>utils</artifactId>
				<version>${parent.version}</version>
			</dependency>
			<dependency>
				<groupId>de.lars-sh</groupId>
				<artifactId>utils-test</artifactId>
				<version>${parent.version}</version>
				<scope>test</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<dependencies>
		<!-- Provided -->
		<dependency>
			<groupId>de.lars-sh</groupId>
			<artifactId>lombok-annotations</artifactId>
		</dependency>
		<dependency>
			<groupId>com.github.spotbugs</groupId>
			<artifactId>spotbugs-annotations</artifactId>
			<version>${spotbugs.version}</version>
			<scope>provided</scope>
		</dependency>

		<!-- Test -->
		<dependency>
			<groupId>org.jooq</groupId>
			<artifactId>joor-java-8</artifactId>
			<version>${joor.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>${junit-jupiter-api.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-engine</artifactId>
			<version>${junit-jupiter-engine.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.platform</groupId>
			<artifactId>junit-platform-runner</artifactId>
			<version>${junit-platform-runner.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>${mockito.version}</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
			</resource>
			<resource>
				<directory>${project.basedir}</directory>
				<targetPath>META-INF</targetPath>
				<includes>
					<include>CHANGELOG.md</include>
					<include>LICENSE.txt</include>
					<include>README.md</include>
				</includes>
			</resource>
		</resources>
		<testResources>
			<testResource>
				<directory>src/test/resources</directory>
			</testResource>
			<testResource>
				<directory>${project.basedir}</directory>
				<targetPath>META-INF</targetPath>
				<includes>
					<include>CHANGELOG.md</include>
					<include>LICENSE.txt</include>
					<include>README.md</include>
				</includes>
			</testResource>
		</testResources>
		<pluginManagement>
			<plugins>
				<!-- Maven -->
				<plugin>
					<artifactId>maven-antrun-plugin</artifactId>
					<version>${maven-antrun-plugin.version}</version>
					<dependencies>
						<dependency>
							<groupId>org.apache.ant</groupId>
							<artifactId>ant</artifactId>
							<version>${apache-ant.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<artifactId>maven-archetype-plugin</artifactId>
					<version>${maven-archetype-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-assembly-plugin</artifactId>
					<version>${maven-assembly-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-checkstyle-plugin</artifactId>
					<version>${maven-checkstyle-plugin.version}</version>
					<dependencies>
						<dependency>
							<groupId>com.puppycrawl.tools</groupId>
							<artifactId>checkstyle</artifactId>
							<version>${checkstyle.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<artifactId>maven-clean-plugin</artifactId>
					<version>${maven-clean-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${maven-compiler-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-dependency-plugin</artifactId>
					<version>${maven-dependency-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>${maven-deploy-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-enforcer-plugin</artifactId>
					<version>${maven-enforcer-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-gpg-plugin</artifactId>
					<version>${maven-gpg-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-install-plugin</artifactId>
					<version>${maven-install-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-jar-plugin</artifactId>
					<version>${maven-jar-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>${maven-javadoc-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-jxr-plugin</artifactId>
					<version>${maven-jxr-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-plugin-plugin</artifactId>
					<version>${maven-plugin-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-pmd-plugin</artifactId>
					<version>${maven-pmd-plugin.version}</version>
					<dependencies>
						<dependency>
							<groupId>net.sourceforge.pmd</groupId>
							<artifactId>pmd-core</artifactId>
							<version>${pmd.version}</version>
						</dependency>
						<dependency>
							<groupId>net.sourceforge.pmd</groupId>
							<artifactId>pmd-java</artifactId>
							<version>${pmd.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<artifactId>maven-project-info-reports-plugin</artifactId>
					<version>${maven-project-info-reports-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-release-plugin</artifactId>
					<version>${maven-release-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-resources-plugin</artifactId>
					<version>${maven-resources-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-shade-plugin</artifactId>
					<version>${maven-shade-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-site-plugin</artifactId>
					<version>${maven-site-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-source-plugin</artifactId>
					<version>${maven-source-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${maven-surefire-plugin.version}</version>
				</plugin>
				<plugin>
					<artifactId>maven-surefire-report-plugin</artifactId>
					<version>${maven-surefire-report-plugin.version}</version>
				</plugin>

				<!-- Others -->
				<plugin>
					<groupId>com.github.spotbugs</groupId>
					<artifactId>spotbugs-maven-plugin</artifactId>
					<version>${spotbugs-maven-plugin.version}</version>
					<dependencies>
						<dependency>
							<groupId>com.github.spotbugs</groupId>
							<artifactId>spotbugs</artifactId>
							<version>${spotbugs.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>build-helper-maven-plugin</artifactId>
					<version>${build-helper-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>tidy-maven-plugin</artifactId>
					<version>${tidy-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>versions-maven-plugin</artifactId>
					<version>${versions-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>${jacoco-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.projectlombok</groupId>
					<artifactId>lombok-maven-plugin</artifactId>
					<version>${lombok-maven-plugin.version}</version>
					<dependencies>
						<dependency>
							<groupId>org.projectlombok</groupId>
							<artifactId>lombok</artifactId>
							<version>${lombok.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.sonatype.plugins</groupId>
					<artifactId>nexus-staging-maven-plugin</artifactId>
					<version>${nexus-staging-maven-plugin.version}</version>
				</plugin>

				<!-- Eclipse Lifecycle Mapping -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>${lifecycle-mapping.version}</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<!-- Execute AntRun goals on configuration and non-incremental builds -->
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-antrun-plugin</artifactId>
										<versionRange>${maven-antrun-plugin.version}</versionRange>
										<goals>
											<goal>run</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<execute>
											<runOnConfiguration>true</runOnConfiguration>
											<runOnIncremental>false</runOnIncremental>
										</execute>
									</action>
								</pluginExecution>

								<!-- Ignore delombok goals -->
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.projectlombok</groupId>
										<artifactId>lombok-maven-plugin</artifactId>
										<versionRange>${lombok-maven-plugin.version}</versionRange>
										<goals>
											<goal>delombok</goal>
											<goal>testDelombok</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<!-- Require certain maven version -->
			<plugin>
				<artifactId>maven-enforcer-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<requireMavenVersion>
									<version>3.3.9</version>
								</requireMavenVersion>
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>
					<!-- .gitignore -->
					<execution>
						<id>project-gitignore-exists</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<exportAntProperties>true</exportAntProperties>
							<target>
								<available property="project.gitignore.exists"
									file="${project.basedir}/.gitignore" />
							</target>
						</configuration>
					</execution>
					<execution>
						<id>gitignore</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target unless="project.gitignore.exists">
								<echo message="Create .gitignore" />
								<echo file="${project.basedir}/.gitignore"><![CDATA[/.settings/
/src/main/lombok/lombok.config
/src/test/lombok/lombok.config
/src/lombok.config
/target/
/.checkstyle
/.classpath
/.project
]]></echo>
							</target>
						</configuration>
					</execution>

					<!-- CHANGELOG.md -->
					<execution>
						<id>project-changelog-md-exists</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<exportAntProperties>true</exportAntProperties>
							<target>
								<available property="project.changelog-md.exists"
									file="${project.basedir}/CHANGELOG.md" />
							</target>
						</configuration>
					</execution>
					<execution>
						<id>changelog-md</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target unless="project.changelog-md.exists">
								<echo message="Create CHANGELOG.md" />
								<echo file="${project.basedir}/CHANGELOG.md"><![CDATA[# Changelog
All notable changes to this project will be documented in this file.

<a name="version"></a>

## [Version](Link) (YYYY-mm-dd)

Download at TODO

### Added
*

### Changed
*

### Deprecated
*

### Removed
*

### Fixed
*

### Security
*

### Dependencies
*
]]></echo>
							</target>
						</configuration>
					</execution>

					<!-- README.md -->
					<execution>
						<id>project-readme-md-exists</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<exportAntProperties>true</exportAntProperties>
							<target>
								<available property="project.readme-md.exists"
									file="${project.basedir}/README.md" />
							</target>
						</configuration>
					</execution>
					<execution>
						<id>readme-md</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target unless="project.readme-md.exists">
								<echo message="Create README.md" />
								<echo file="${project.basedir}/README.md"><![CDATA[# TODO: Project name
TODO: Short introduction

## Getting started
TODO: Easy to understand usage example
]]></echo>
							</target>
						</configuration>
					</execution>

					<!-- Source directories -->
					<execution>
						<id>source-directories</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<mkdir dir="${project.basedir}/src/main/lombok" />
								<mkdir dir="${project.basedir}/src/main/resources" />
								<mkdir dir="${project.basedir}/src/test/lombok" />
								<mkdir dir="${project.basedir}/src/test/resources" />
							</target>
						</configuration>
					</execution>

					<!-- lombok.config -->
					<execution>
						<id>lombok-config</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<propertyfile
									file="${project.basedir}/src/lombok.config">
									<entry key="config.stopBubbling" value="true" />
									<entry key="lombok.accessors.flagUsage" value="error" />
									<entry key="lombok.addLombokGeneratedAnnotation"
										value="true" />
									<entry key="lombok.anyConstructor.flagUsage"
										value="error" />
									<entry key="lombok.builder.flagUsage" value="error" />
									<entry key="lombok.cleanup.flagUsage" value="error" />
									<entry key="lombok.data.flagUsage" value="error" />
									<entry key="lombok.delegate.flagUsage" value="error" />
									<entry key="lombok.equalsAndHashCode.flagUsage"
										value="error" />
									<entry key="lombok.experimental.flagUsage" value="error" />
									<entry key="lombok.extensionMethod.flagUsage"
										value="error" />
									<entry key="lombok.extern.findbugs.addSuppressFBWarnings"
										value="true" />
									<entry key="lombok.fieldDefaults.flagUsage" value="error" />
									<entry key="lombok.fieldNameConstants.flagUsage"
										value="error" />
									<entry key="lombok.getter.flagUsage" value="error" />
									<entry key="lombok.getter.lazy.flagUsage" value="error" />
									<entry key="lombok.helper.flagUsage" value="error" />
									<entry key="lombok.log.apacheCommons.flagUsage"
										value="error" />
									<entry key="lombok.log.flagUsage" value="error" />
									<entry key="lombok.log.flogger.flagUsage" value="error" />
									<entry key="lombok.log.javaUtilLogging.flagUsage"
										value="error" />
									<entry key="lombok.log.jbosslog.flagUsage" value="error" />
									<entry key="lombok.log.log4j.flagUsage" value="error" />
									<entry key="lombok.log.log4j2.flagUsage" value="error" />
									<entry key="lombok.log.slf4j.flagUsage" value="error" />
									<entry key="lombok.log.xslf4j.flagUsage" value="error" />
									<entry key="lombok.nonNull.flagUsage" value="error" />
									<entry key="lombok.onX.flagUsage" value="error" />
									<entry key="lombok.setter.flagUsage" value="error" />
									<entry key="lombok.sneakyThrows.flagUsage" value="error" />
									<entry key="lombok.synchronized.flagUsage" value="error" />
									<entry key="lombok.toString.flagUsage" value="error" />
									<entry key="lombok.utilityClass.flagUsage" value="error" />
									<entry key="lombok.val.flagUsage" value="error" />
									<entry key="lombok.value.flagUsage" value="error" />
									<entry key="lombok.var.flagUsage" value="error" />
									<entry key="lombok.wither.flagUsage" value="error" />
								</propertyfile>
								<propertyfile
									file="${project.basedir}/src/main/lombok/lombok.config">
									<entry key="config.stopBubbling" value="true" />
									<entry key="lombok.addLombokGeneratedAnnotation"
										value="true" />
									<entry key="lombok.builder.flagUsage" value="error" />
									<entry key="lombok.cleanUp.flagUsage" value="error" />
									<entry key="lombok.data.flagUsage" value="error" />
									<entry key="lombok.equalsAndHashCode.callSuper"
										value="warn" />
									<entry key="lombok.extern.findbugs.addSuppressFBWarnings"
										value="true" />
									<entry key="lombok.fieldDefaults.defaultFinal"
										value="true" />
									<entry key="lombok.fieldDefaults.defaultPrivate"
										value="true" />
									<entry key="lombok.getter.lazy.flagUsage" value="error" />
									<entry key="lombok.nonNull.flagUsage" value="error" />
									<entry key="lombok.sneakyThrows.flagUsage" value="error" />
									<entry key="lombok.toString.callSuper" value="warn" />
									<entry key="lombok.val.flagUsage" value="error" />
									<entry key="lombok.value.flagUsage" value="error" />
									<entry key="lombok.var.flagUsage" value="error" />
								</propertyfile>
								<propertyfile
									file="${project.basedir}/src/test/lombok/lombok.config">
									<entry key="config.stopBubbling" value="true" />
									<entry key="lombok.addLombokGeneratedAnnotation"
										value="true" />
									<entry key="lombok.builder.flagUsage" value="error" />
									<entry key="lombok.cleanUp.flagUsage" value="error" />
									<entry key="lombok.data.flagUsage" value="error" />
									<entry key="lombok.equalsAndHashCode.callSuper"
										value="warn" />
									<entry key="lombok.extern.findbugs.addSuppressFBWarnings"
										value="true" />
									<entry key="lombok.fieldDefaults.defaultFinal"
										value="true" />
									<entry key="lombok.fieldDefaults.defaultPrivate"
										value="true" />
									<entry key="lombok.getter.lazy.flagUsage" value="error" />
									<entry key="lombok.nonNull.flagUsage" value="error" />
									<entry key="lombok.sneakyThrows.flagUsage" value="error" />
									<entry key="lombok.toString.callSuper" value="warn" />
									<entry key="lombok.val.flagUsage" value="error" />
									<entry key="lombok.value.flagUsage" value="error" />
									<entry key="lombok.var.flagUsage" value="error" />
								</propertyfile>
							</target>
						</configuration>
					</execution>

					<!-- checkstyle.xml -->
					<execution>
						<id>checkstyle-xml</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<echo file="${project.build.directory}/checkstyle.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="Checker">
	<property name="localeCountry" value="US" />
	<property name="localeLanguage" value="en" />
	<property name="charset" value="UTF-8" />

	<!-- File Filters -->
	<module name="SuppressionFilter">
		<property name="file" value="${project.basedir}/checkstyle-suppressions.xml" />
		<property name="optional" value="true" />
	</module>
	<module name="SuppressWarningsFilter" />

	<!-- Filters: Formatter (known error): Ignore misaligned if and else blocks as the Eclipse formatter is not able to handle long breaking lines correctly -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="Indentation" />
		<property name="message" value="^&apos;(if|else)(&apos; child| rcurly&apos;) has incorrect indentation level \d+, expected level should be \d+\.$" />
	</module>

	<!-- Filters: Unit Tests -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="ExecutableStatementCount|JavadocVariable|MagicNumber|MethodLength|MultipleStringLiterals" />
		<property name="files" value="^(.*[/\\])?(src[/\\]test|generated-test-sources)[/\\].*$" />
	</module>

	<!-- Filters: Lombok -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="FinalClass|HideUtilityClassConstructor|MissingCtor|MutableException|VisibilityModifier" />
		<property name="files" value="^(.*[/\\])?src[/\\](main|test)[/\\]lombok[/\\].*$" />
	</module>

	<!-- Filters: Delombok: Suppress irregular formatting -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="EmptyLineSeparator" />
		<property name="files" value="^(.*[/\\])?generated-(test-)?sources[/\\]delombok[/\\].*$" />
	</module>

	<!-- Filters: Delombok: Suppress irregular formatting -->
	<module name="SuppressionSingleFilter">
		<property name="id" value="XLineTrailingSpaces" />
		<property name="files" value="^(.*[/\\])?generated-(test-)?sources[/\\]delombok[/\\].*$" />
	</module>

	<!-- Filters: Delombok: Suppress import separation checks -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="ImportOrder" />
		<property name="files" value="^(.*[/\\])?generated-(test-)?sources[/\\]delombok[/\\].*$" />
		<property name="message" value="^'.*' should be separated from previous imports\.$" />
	</module>

	<!-- Filters: Delombok: Suppress specific unused imports -->
	<module name="SuppressionSingleFilter">
		<property name="checks" value="UnusedImports" />
		<property name="files" value="^(.*[/\\])?generated-(test-)?sources[/\\]delombok[/\\].*$" />
		<property name="message" value="^Unused import - lombok\.ToString\.$" />
	</module>

	<!-- Miscellaneous -->
	<module name="NewlineAtEndOfFile">
		<property name="lineSeparator" value="lf" />
		<property name="fileExtensions" value="java" />
	</module>
	<module name="Translation" />
	<module name="UniqueProperties" />

	<!-- Regexp -->
	<module name="RegexpMultiline">
		<property name="id" value="XCheckForNullAnnotation" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}final\s([^,\(\);]*\s)?@\s*(edu\s*\.\s*umd\s*\.\s*cs\s*\.\s*findbugs\s*\.\s*annotations\s*\.\s*)?CheckForNull\s" />
		<property name="message" value="@CheckForNull should precede keyword &quot;final&quot;." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XFinalsConstant" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}(?!private\s*)\sstatic\s+final\s+\S+\s+\S+\s*=\s*([&quot;0-9\.+\-]|(true|false)[\s;])" />
		<property name="message" value="String and primitive constants should use Finals.constant." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XFinalsConstantPrivate" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}private\s+static\s+final\s+\S+\s+\S+\s*=\s*(de\s*\.\s*larssh\s*\.\s*utils\s*\.\s*)?(Finals\s*\.\s*)?constant\s*\(" />
		<property name="message" value="Finals.constant should not be used for private constants." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XNullableAnnotation" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}final\s([^,\(\)\{;]*\s)?@\s*(edu\s*\.\s*umd\s*\.\s*cs\s*\.\s*findbugs\s*\.\s*annotations\s*\.\s*)?Nullable\s" />
		<property name="message" value="@Nullable should precede keyword &quot;final&quot;." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XOptionalDouble" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}Optional\s*&lt;\s*Double\s*&gt;" />
		<property name="message" value="Optional&lt;Double&gt; must not be used. Use OptionalDouble instead." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XOptionalInteger" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}Optional\s*&lt;\s*Integer\s*&gt;" />
		<property name="message" value="Optional&lt;Integer&gt; must not be used. Use OptionalInt instead." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XOptionalLong" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}Optional\s*&lt;\s*Long\s*&gt;" />
		<property name="message" value="Optional&lt;Long&gt; must not be used. Use OptionalLong instead." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XPatternSplit" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\.\s*split\s*\(([^&quot;\(,\)]+|&quot;([^\\&quot;]+|\\.)*&quot;|\([^\)]*\))++\)" />
		<property name="message" value="String.split and Pattern.split(input) must not be used. Use Pattern.split(input, limit) instead and think about the limit. Use StringLimit.NONE to not discard trailing empty strings." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XStringMatches" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\.\s*matches\s*\(([^&quot;\(,\)]+|&quot;([^\\&quot;]+|\\.)*&quot;|\([^\)]*\))++\)" />
		<property name="message" value="String.matches must not be used. Use Strings.matches instead. This is likely to be a false positive if String.matches is not called." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XStringReplaceAll" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="&quot;\s*\.\s*replaceAll\s*\(|\.\s*replaceAll\s*\(([^&quot;\(,\)]+|&quot;([^\\&quot;]+|\\.)*&quot;|\([^\)]*\))*+," />
		<property name="message" value="String.replaceAll must not be used. Use Strings.replaceAll instead. This is likely to be a false positive if String.replaceAll is not called." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XStringReplaceFirst" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="&quot;\s*\.\s*replaceFirst\s*\(|\.\s*replaceFirst\s*\(([^&quot;\(,\)]+|&quot;([^\\&quot;]+|\\.)*&quot;|\([^\)]*\))*+," />
		<property name="message" value="String.replaceFirst must not be used. Use Strings.replaceFirst instead. This is likely to be a false positive if String.replaceFirst is not called." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XStringSplit" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="&quot;\s*\.\s*split\s*\(" />
		<property name="message" value="String.split must not be used. Use Pattern.split(input, limit) instead. This is likely to be a false positive if String.split is not called." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XSuperWithoutParameters" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="\P{javaJavaIdentifierPart}super\s*\(\s*\)" />
		<property name="message" value="Avoid using super() as it is called implicitly." />
	</module>
	<module name="RegexpMultiline">
		<property name="id" value="XSuppressFBWarnings" />
		<property name="fileExtensions" value="java" />
		<property name="format" value="@\s*SuppressFBWarnings\s*\(((?![^)]*\s*justification\s*=)|[^)]*\s*justification\s*=\s*&quot;(\s*|TODO)&quot;)" />
		<property name="message" value="SuppressFBWarnings requires justification parameter. It must not be empty or TODO." />
	</module>

	<!-- Size Violations -->
	<module name="FileLength" />

	<module name="TreeWalker">
		<property name="tabWidth" value="4" />

		<!-- Annotations -->
		<module name="AnnotationLocation">
			<property name="allowSamelineSingleParameterlessAnnotation" value="false" />
		</module>
		<module name="AnnotationUseStyle" />
		<module name="MissingDeprecated" />
		<module name="MissingOverride" />
		<module name="SuppressWarnings">
			<!--
			The list of disallowed SuppressWarnings matches the warnings supported by Eclipse JDTs Compiler
			* see http://help.eclipse.org/index.jsp?topic=/org.eclipse.jdt.doc.user/tasks/task-suppress_warnings.htm
			* except "deprecation", "null", "unchecked" and "unused"
			* plus "PMD"
			-->
			<property name="format" value="^(all|boxing|cast|fallthrough|finally|hiding|incomplete-switch|nls|PMD|rawtypes|resource|restriction|restriction|removal|serial|static-access|static-method|super|synthetic-access|sync-override|unqualified-field-access|unlikely-arg-type)$" />
		</module>
		<module name="SuppressWarningsHolder" />

		<!-- Block Checks -->
		<module name="AvoidNestedBlocks" />
		<module name="EmptyBlock">
			<property name="option" value="text" />
		</module>
		<module name="EmptyCatchBlock">
			<property name="exceptionVariableName" value="ignore" />
		</module>
		<module name="LeftCurly" />
		<module name="NeedBraces">
			<property name="allowSingleLineStatement" value="true" />
		</module>
		<module name="RightCurly" />

		<!-- Class Design -->
		<module name="FinalClass" />
		<module name="HideUtilityClassConstructor" />
		<module name="InnerTypeLast" />
		<module name="InterfaceIsType" />
		<module name="MutableException" />
		<module name="OneTopLevelClass" />
		<module name="ThrowsCount" />
		<module name="VisibilityModifier" />

		<!-- Coding -->
		<module name="CovariantEquals" />
		<module name="DefaultComesLast">
			<property name="skipIfLastAndSharedWithCase" value="true" />
		</module>
		<module name="EmptyStatement" />
		<module name="EqualsHashCode" />
		<module name="FallThrough">
			<property name="checkLastCaseGroup" value="true" />
		</module>
		<module name="FinalLocalVariable">
			<property name="validateEnhancedForLoopVariable" value="true" />
			<property name="tokens" value="VARIABLE_DEF, PARAMETER_DEF" />
		</module>
		<module name="IllegalCatch">
			<property name="id" value="XIllegalCatchDefault" />
		</module>
		<module name="IllegalCatch">
			<property name="id" value="XIllegalCatchCustom" />
			<property name="illegalClassNames" value="java.lang.NullPointerException" />
		</module>
		<module name="IllegalInstantiation">
			<property name="classes" value="java.lang.StringBuffer, java.util.Hashtable, java.util.Vector, org.xml.sax.SAXException, org.xml.sax.SAXParseException" />
		</module>
		<module name="IllegalThrows" />
		<module name="IllegalToken">
			<property name="tokens" value="BAND, BOR, DEC, EMPTY_STAT, INC, LABELED_STAT, LITERAL_ASSERT, LITERAL_BREAK, LITERAL_CONTINUE, UNARY_PLUS" />
		</module>
		<module name="IllegalTokenText">
			<property name="format" value="^(ASCII|ISO-8859-1|US-ASCII|UTF-16|UTF-16BE|UTF-16LE|UTF-8)$" />
			<property name="ignoreCase" value="true" />
			<property name="message" value="Consider using StandardCharsets instead of charset strings." />
			<property name="tokens" value="STRING_LITERAL" />
		</module>
		<module name="IllegalType">
			<property name="id" value="XIllegalTypeDefault" />
			<property name="tokens" value="ANNOTATION_FIELD_DEF, INTERFACE_DEF, METHOD_CALL, METHOD_DEF, METHOD_REF, PARAMETER_DEF, VARIABLE_DEF" />
		</module>
		<module name="IllegalType">
			<property name="id" value="XIllegalTypeCustom" />
			<property name="illegalClassNames" value="java.lang.StringBuffer, StringBuffer" />
			<property name="tokens" value="ANNOTATION_FIELD_DEF, INTERFACE_DEF, METHOD_CALL, METHOD_DEF, METHOD_REF, PARAMETER_DEF, VARIABLE_DEF" />
		</module>
		<module name="InnerAssignment" />
		<module name="MagicNumber">
			<property name="ignoreHashCodeMethod" value="true" />
		</module>
		<module name="MissingCtor" />
		<module name="MissingSwitchDefault" />
		<module name="MultipleStringLiterals">
			<property name="ignoreStringsRegexp" value="^&quot;(|.+ is marked @NonNull but is null)&quot;$" />
			<property name="ignoreOccurrenceContext" value="ANNOTATION, STATIC_INIT" />
		</module>
		<module name="MultipleVariableDeclarations" />
		<module name="NoClone" />
		<module name="NoFinalizer" />
		<module name="OneStatementPerLine">
			<property name="treatTryResourcesAsStatement" value="true" />
		</module>
		<module name="OverloadMethodsDeclarationOrder" />
		<module name="PackageDeclaration" />
		<module name="ParameterAssignment" />
		<module name="SimplifyBooleanExpression" />
		<module name="SimplifyBooleanReturn" />
		<module name="StringLiteralEquality" />
		<module name="SuperClone" />
		<module name="SuperFinalize" />
		<module name="UnnecessaryParentheses" />
		<module name="UnnecessarySemicolonInTryWithResources" />
		<module name="VariableDeclarationUsageDistance" />

		<!-- Filters -->
		<module name="SuppressionXpathFilter">
			<property name="file" value="${project.basedir}/checkstyle-suppressions.xml" />
			<property name="optional" value="true" />
		</module>
		<module name="SuppressWithNearbyCommentFilter">
			<property name="commentFormat" value="Checkstyle: Ignore duplicate &quot;(\S+)&quot; for (\d+) lines?" />
			<property name="checkFormat" value="MultipleStringLiteralsCheck" />
			<property name="messageFormat" value="^The String &quot;$1&quot; appears \d+ times in the file\.$" />
			<property name="influenceFormat" value="$2" />
		</module>

		<!-- Filters: Allow postfix incrementor and decrementor inside for iterators -->
		<module name="SuppressionXpathSingleFilter">
			<property name="checks" value="DescendantToken" />
			<property name="query" value="//FOR_ITERATOR/descendant-or-self::node()" />
		</module>

		<!-- Filters: Allow multi catch while disallowing bitwise OR -->
		<module name="SuppressionXpathSingleFilter">
			<property name="checks" value="IllegalToken" />
			<property name="query" value="//LITERAL_CATCH/PARAMETER_DEF//BOR" />
		</module>

		<!-- Filters: Allow magic numbers inside static initialization blocks -->
		<module name="SuppressionXpathSingleFilter">
			<property name="checks" value="MagicNumber" />
			<property name="query" value="//STATIC_INIT/descendant-or-self::node()" />
		</module>

		<!-- Filters: Lombok: Allow @Tostring.Include member "rank" to have any magic number -->
		<module name="SuppressionXpathSingleFilter">
			<property name="checks" value="MagicNumber" />
			<property name="query" value="//ANNOTATION[DOT[IDENT[@text = 'ToString'] and IDENT[@text = 'Include']]]/ANNOTATION_MEMBER_VALUE_PAIR[IDENT[@text = 'rank']]/descendant-or-self::node()" />
		</module>

		<!-- Filters: Delombok: Suppress checks for annotated with "@lombok.Generated" -->
		<module name="SuppressionXpathSingleFilter">
			<property name="checks" value="^.*$" />
			<property name="files" value="^(.*[/\\])?generated-(test-)?sources[/\\]delombok[/\\].*$" />
			<property name="query" value="//*[MODIFIERS/ANNOTATION[DOT[IDENT[@text = 'lombok'] and IDENT[@text = 'Generated']]]]/descendant-or-self::node()" />
		</module>

		<!-- Headers -->
		<!-- none -->

		<!-- Imports -->
		<module name="AvoidStarImport" />
		<module name="IllegalImport" />
		<module name="ImportOrder">
			<property name="option" value="top" />
			<property name="groups" value="java., javax., org., com." />
			<property name="separated" value="true" />
			<property name="separatedStaticGroups" value="true" />
			<property name="caseSensitive" value="true" />
			<property name="sortStaticImportsAlphabetically" value="true" />
		</module>
		<module name="RedundantImport" />
		<module name="UnusedImports">
			<property name="processJavadoc" value="false" />
		</module>

		<!-- Javadoc Comments -->
		<module name="AtclauseOrder" />
		<module name="InvalidJavadocPosition" />
		<module name="JavadocMethod">
			<property name="validateThrows" value="true" />
			<property name="allowUndeclaredRTE" value="true" />
		</module>
		<module name="JavadocParagraph">
			<property name="allowNewlineParagraph" value="false" />
		</module>
		<module name="JavadocStyle">
			<property name="checkFirstSentence" value="false" />
			<property name="checkEmptyJavadoc" value="true" />
		</module>
		<module name="JavadocTagContinuationIndentation" />
		<module name="JavadocType" />
		<module name="JavadocVariable" />
		<module name="MissingJavadocMethod">
			<property name="allowedAnnotations" value="" />
			<property name="scope" value="private" />
		</module>
		<module name="MissingJavadocPackage" />
		<module name="MissingJavadocType">
			<property name="scope" value="private" />
		</module>
		<module name="NonEmptyAtclauseDescription" />
		<module name="SingleLineJavadoc" />

		<!-- Metrics -->
		<!-- none -->

		<!-- Miscellaneous -->
		<module name="ArrayTypeStyle" />
		<module name="AvoidEscapedUnicodeCharacters">
			<property name="allowEscapesForControlCharacters" value="true" />
			<property name="allowByTailComment" value="true" />
			<property name="allowNonPrintableEscapes" value="true" />
		</module>
		<module name="CommentsIndentation" />
		<module name="FinalParameters">
			<property name="tokens" value="METHOD_DEF, CTOR_DEF, LITERAL_CATCH, FOR_EACH_CLAUSE" />
		</module>
		<module name="DescendantToken">
			<property name="tokens" value="ANNOTATION, ASSIGN, BAND_ASSIGN, BOR_ASSIGN, BSR_ASSIGN, BXOR_ASSIGN, DIV_ASSIGN, DO_WHILE, ELIST, FOR_EACH_CLAUSE, LAMBDA, LITERAL_ASSERT, LITERAL_CASE, LITERAL_IF, LITERAL_RETURN, LITERAL_WHILE, MINUS_ASSIGN, MOD_ASSIGN, PLUS_ASSIGN, QUESTION, SL_ASSIGN, SR_ASSIGN, STAR_ASSIGN" />
			<property name="limitedTokens" value="POST_DEC, POST_INC" />
			<property name="maximumNumber" value="0" />
			<property name="maximumMessage" value="The return value of the operators ++ and -- should not be used as they lead to hardly readable code." />
		</module>
		<module name="Indentation">
			<property name="caseIndent" value="0" />
			<property name="throwsIndent" value="8" />
			<property name="arrayInitIndent" value="8" />
			<property name="lineWrappingIndentation" value="0" />
		</module>
		<module name="OuterTypeFilename" />
		<module name="TodoComment">
			<property name="format" value="^\s*(TODO|XXX|FIXME).*" />
			<property name="severity" value="info" />
		</module>
		<module name="TrailingComment">
			<property name="format" value="^(.*,)?\s*$" />
			<property name="legalComment" value="^|TODO$" />
		</module>
		<module name="UncommentedMain" />
		<module name="UpperEll" />

		<!-- Modifiers -->
		<module name="ModifierOrder" />
		<module name="RedundantModifier" />

		<!-- Naming Conventions -->
		<module name="AbbreviationAsWordInName">
			<property name="ignoreStatic" value="false" />
		</module>
		<module name="CatchParameterName" />
		<module name="ClassTypeParameterName" />
		<module name="ConstantName" />
		<module name="InterfaceTypeParameterName" />
		<module name="LambdaParameterName" />
		<module name="LocalFinalVariableName" />
		<module name="LocalVariableName" />
		<module name="MemberName" />
		<module name="MethodName" />
		<module name="MethodTypeParameterName" />
		<module name="PackageName" />
		<module name="ParameterName">
			<property name="format" value="^(?!arg\d*$)[a-z][a-zA-Z0-9]*$" />
		</module>
		<module name="StaticVariableName" />
		<module name="TypeName" />

		<!-- Regexp -->
		<module name="RegexpSinglelineJava">
			<property name="id" value="XLineTrailingSpaces" />
			<property name="format" value="\s+$" />
			<property name="message" value="Line has trailing spaces." />
		</module>
		<module name="RegexpSinglelineJava">
			<property name="id" value="XLineTabIndentation" />
			<property name="format" value="^\t* [^*]" />
			<property name="message" value="Line does not use tab indentation." />
		</module>

		<!-- Size Violations -->
		<module name="AnonInnerLength" />
		<module name="ExecutableStatementCount" />
		<module name="MethodLength" />
		<module name="OuterTypeNumber" />
		<module name="ParameterNumber">
			<property name="ignoreOverriddenMethods" value="true" />
		</module>

		<!-- Whitespace -->
		<module name="EmptyForInitializerPad" />
		<module name="EmptyForIteratorPad" />
		<module name="EmptyLineSeparator">
			<property name="allowNoEmptyLineBetweenFields" value="true" />
			<property name="allowMultipleEmptyLines" value="false" />
			<property name="allowMultipleEmptyLinesInsideClassMembers" value="false" />
			<property name="tokens" value="IMPORT, STATIC_IMPORT, CLASS_DEF, INTERFACE_DEF, ENUM_DEF, STATIC_INIT, INSTANCE_INIT, METHOD_DEF, CTOR_DEF, VARIABLE_DEF" />
		</module>
		<module name="GenericWhitespace" />
		<module name="MethodParamPad" />
		<module name="NoLineWrap" />
		<module name="NoWhitespaceAfter">
			<property name="tokens" value="AT, INC, DEC, UNARY_MINUS, UNARY_PLUS, BNOT, LNOT, DOT, ARRAY_DECLARATOR, INDEX_OP, METHOD_REF" />
		</module>
		<module name="NoWhitespaceBefore">
			<property name="tokens" value="COMMA, SEMI, POST_INC, POST_DEC, ELLIPSIS, GENERIC_END" />
		</module>
		<module name="OperatorWrap">
			<property name="option" value="nl" />
			<property name="tokens" value="QUESTION, COLON, EQUAL, NOT_EQUAL, DIV, PLUS, MINUS, STAR, MOD, SR, BSR, GE, GT, SL, LE, LT, BXOR, BOR, LOR, BAND, LAND, LITERAL_INSTANCEOF, TYPE_EXTENSION_AND, ASSIGN, DIV_ASSIGN, PLUS_ASSIGN, MINUS_ASSIGN, STAR_ASSIGN, MOD_ASSIGN, SR_ASSIGN, BSR_ASSIGN, SL_ASSIGN, BXOR_ASSIGN, BOR_ASSIGN, BAND_ASSIGN, METHOD_REF" />
		</module>
		<module name="ParenPad" />
		<module name="SeparatorWrap">
			<property name="id" value="XSeparatorWrapEndOfLine" />
			<property name="option" value="eol" />
			<property name="tokens" value="COMMA, ELLIPSIS, SEMI" />
		</module>
		<module name="SeparatorWrap">
			<property name="id" value="XSeparatorWrapNextLine" />
			<property name="option" value="nl" />
			<property name="tokens" value="AT, DOT" />
		</module>
		<module name="SingleSpaceSeparator">
			<property name="validateComments" value="true" />
		</module>
		<module name="TypecastParenPad" />
		<module name="WhitespaceAfter" />
		<module name="WhitespaceAround">
			<property name="allowEmptyConstructors" value="true" />
			<property name="ignoreEnhancedForColon" value="false" />
		</module>
	</module>
</module>
]]></echo>
							</target>
						</configuration>
					</execution>

					<!-- pmd-ruleset.xml -->
					<execution>
						<id>pmd-ruleset-xml</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<mkdir dir="${project.build.directory}/pmd" />
								<echo file="${project.build.directory}/pmd/pmd-ruleset.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<ruleset name="de.lars-sh" xmlns="http://pmd.sourceforge.net/ruleset/2.0.0">
	<description></description>

	<rule ref="category/java/bestpractices.xml">
		<!-- See separate rule with different properties -->
		<exclude name="AvoidReassigningLoopVariables" />
		<exclude name="OneDeclarationPerLine" />

		<!-- Bad code style for non-null code -->
		<exclude name="PositionLiteralsFirstInCaseInsensitiveComparisons" />
		<exclude name="PositionLiteralsFirstInComparisons" />

		<!-- Simplify JUnit usage -->
		<exclude name="JUnitAssertionsShouldIncludeMessage" />
		<exclude name="JUnitTestContainsTooManyAsserts" />
		<exclude name="JUnitTestsShouldIncludeAssert" />
	</rule>

	<rule ref="category/java/bestpractices.xml/AvoidReassigningLoopVariables">
		<properties>
			<property name="foreachReassign" value="firstOnly" />
			<property name="forReassign" value="skip" />
		</properties>
	</rule>

	<!-- Activate strict mode -->
	<rule ref="category/java/bestpractices.xml/OneDeclarationPerLine">
		<properties>
			<property name="strictMode" value="true" />
		</properties>
	</rule>

	<rule ref="category/java/codestyle.xml">
		<exclude name="TooManyStaticImports" />

		<!-- Deprecated -->
		<exclude name="AbstractNaming" />
		<exclude name="AvoidFinalLocalVariable" />
		<exclude name="AvoidPrefixingMethodParameters" />
		<exclude name="ForLoopsMustUseBraces" />
		<exclude name="IfElseStmtsMustUseBraces" />
		<exclude name="IfStmtsMustUseBraces" />
		<exclude name="MIsLeadingVariableName" />
		<exclude name="SuspiciousConstantFieldName" />
		<exclude name="VariableNamingConventions" />
		<exclude name="WhileLoopsMustUseBraces" />

		<!-- See separate rule with different properties -->
		<exclude name="ClassNamingConventions" />
		<exclude name="CommentDefaultAccessModifier" />
		<exclude name="LinguisticNaming" />

		<!-- Better document why a constructor is empty than writing "super()" -->
		<exclude name="CallSuperInConstructor" />

		<!-- Requires Google Guava -->
		<exclude name="DefaultPackage" />

		<!-- Quite a few false positives when using Lombok -->
		<exclude name="FieldDeclarationsShouldBeAtStartOfClass" />
		<exclude name="UseUnderscoresInNumericLiterals" />

		<!-- Better use long variable names than abbreviations -->
		<exclude name="LongVariable" />

		<!-- Better use long variable names than abbreviations -->
		<exclude name="OnlyOneReturn" />

		<!-- Better use long variable names than abbreviations -->
		<exclude name="UnnecessaryConstructor" />
	</rule>

	<!-- Allow utility class names ending with character 's' -->
	<rule ref="category/java/codestyle.xml/ClassNamingConventions">
		<properties>
			<property name="utilityClassPattern" value="[A-Z][a-zA-Z0-9]+(Utils?|Helper|s)" />
		</properties>
	</rule>

	<!-- Ignore annotation de.larssh.utils.annotations.PackagePrivate -->
	<rule ref="category/java/codestyle.xml/CommentDefaultAccessModifier">
		<properties>
			<property name="ignoredAnnotations" value="com.google.common.annotations.VisibleForTesting|android.support.annotation.VisibleForTesting|de.larssh.utils.annotations.PackagePrivate" />
		</properties>
	</rule>

	<rule ref="category/java/design.xml">
		<exclude name="LawOfDemeter" />
		<exclude name="LoosePackageCoupling" />
		<exclude name="NcssConstructorCount" />
		<exclude name="NcssMethodCount" />
		<exclude name="NcssTypeCount" />
		<exclude name="StdCyclomaticComplexity" />
		<exclude name="TooManyMethods" />
	</rule>

	<rule ref="category/java/documentation.xml">
		<!-- Do not restrict commenting -->
		<exclude name="CommentSize" />
	</rule>

	<rule ref="category/java/errorprone.xml">
		<exclude name="BeanMembersShouldSerialize" />
		<exclude name="DataflowAnomalyAnalysis" />
		
		<!-- Deprecated -->
		<exclude name="LoggerIsNotStaticFinal" />

		<!-- See separate rule with different properties -->
		<exclude name="AvoidDuplicateLiterals" />
		<exclude name="AvoidLiteralsInIfCondition" />
	</rule>

	<!-- Ignore annotations -->
	<rule ref="category/java/errorprone.xml/AvoidDuplicateLiterals">
		<properties>
			<property name="skipAnnotations" value="true" />
		</properties>
	</rule>

	<!-- Ignore additional magic numbers -->
	<rule ref="category/java/errorprone.xml/AvoidLiteralsInIfCondition">
		<properties>
			<property name="ignoreMagicNumbers" value="-1, 0, 1, 2" />
		</properties>
	</rule>

	<rule ref="category/java/multithreading.xml">
		<!-- Deprecated -->
		<exclude name="UnsynchronizedStaticDateFormatter" />

		<!-- No need to avoid volatile if you know what you are doing -->
		<exclude name="AvoidUsingVolatile" />

		<!-- Do not avoid usage of interface Runnable -->
		<exclude name="DoNotUseThreads" />

		<!-- Quite a few false positives -->
		<exclude name="UseConcurrentHashMap" />
	</rule>

	<rule ref="category/java/performance.xml">
		<exclude name="AvoidInstantiatingObjectsInLoops" />
		<exclude name="ConsecutiveAppendsShouldReuse" />

		<!-- Bad code style: Do not depend on compiler defaults -->
		<exclude name="RedundantFieldInitializer" />

		<!-- Bad code style: Write what you meant to do -->
		<exclude name="SimplifyStartsWith" />
	</rule>

	<rule ref="category/java/security.xml" />
</ruleset>
]]></echo>
							</target>
						</configuration>
					</execution>

					<!-- Travis CI -->
					<execution>
						<id>project-travis-yml-exists</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<exportAntProperties>true</exportAntProperties>
							<target unless="update-travis-yml">
								<available property="project.travis-yml.exists"
									file="${project.basedir}/.travis.yml" />
							</target>
						</configuration>
					</execution>
					<execution>
						<id>travis-ci</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target unless="project.travis-yml.exists">
								<echo message="Create .travis.yml" />
								<echo file="${project.basedir}/.travis.yml"><![CDATA[language: java
jdk:
  - openjdk8
  - openjdk11

install: skip
script: mvn install -Dgpg.skip=true --batch-mode --show-version --update-snapshots

cache:
  directories:
    - $HOME/.m2
]]></echo>
							</target>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- Delombok -->
			<plugin>
				<groupId>org.projectlombok</groupId>
				<artifactId>lombok-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>delombok</goal>
							<goal>testDelombok</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Check test code coverage -->
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>report</id>
						<goals>
							<goal>report</goal>
						</goals>

						<!-- The "report" goal should be executed before the (optional) "check" 
							goal to make sure developers have the report to analyze the check results 
							with. By default the "check" goal is executed at the "verify" phase. The 
							"post-integration-test" phase is the last phase before that. -->
						<phase>post-integration-test</phase>
					</execution>
				</executions>
			</plugin>

			<!-- Check code style -->
			<plugin>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<executions>
					<execution>
						<phase>test</phase>
						<goals>
							<goal>check</goal>
						</goals>
						<configuration>
							<configLocation>${project.build.directory}/checkstyle.xml</configLocation>
							<consoleOutput>true</consoleOutput>
							<sourceDirectories>
								<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
								<sourceDirectory>${project.basedir}/src/test/java</sourceDirectory>
								<sourceDirectory>${project.basedir}/src/main/lombok</sourceDirectory>
								<sourceDirectory>${project.basedir}/src/test/lombok</sourceDirectory>
								<sourceDirectory>${project.build.directory}/generated-sources/delombok</sourceDirectory>
								<sourceDirectory>${project.build.directory}/generated-test-sources/delombok</sourceDirectory>
							</sourceDirectories>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- Package test -->
			<plugin>
				<artifactId>maven-jar-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<archive>
						<manifest>
							<addClasspath>true</addClasspath>
							<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
							<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
							<mainClass>${project.build.mainClass}</mainClass>
						</manifest>
					</archive>
				</configuration>
			</plugin>

			<!-- Package dependencies (optional) -->
			<plugin>
				<artifactId>maven-shade-plugin</artifactId>
				<executions>
					<execution>
						<phase>${project.build.packageDependenciesPhase}</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- Package sources -->
			<plugin>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>jar-no-fork</goal>
							<goal>test-jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Package documentation -->
			<plugin>
				<artifactId>maven-javadoc-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>jar</goal>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<failOnWarnings>true</failOnWarnings>
					<quiet>true</quiet>
				</configuration>
			</plugin>

			<!-- Copy Paste Detection -->
			<plugin>
				<artifactId>maven-pmd-plugin</artifactId>
				<executions>
					<execution>
						<!-- The following ID must not be changed as "default-cpd-check" uses 
							it. -->
						<id>cpd</id>
						<goals>
							<goal>cpd</goal>
						</goals>
						<phase>verify</phase>
						<configuration>
							<excludeFromFailureFile>${cpd.excludeFromFailureFile}</excludeFromFailureFile>
						</configuration>
					</execution>
					<execution>
						<id>default-cpd-check</id>
						<goals>
							<goal>cpd-check</goal>
						</goals>
						<configuration>
							<printFailingErrors>true</printFailingErrors>
						</configuration>
					</execution>

					<!-- Analyze Code -->
					<execution>
						<!-- The following ID must not be changed as "default-check" uses it. -->
						<id>pmd</id>
						<goals>
							<goal>pmd</goal>
						</goals>
						<phase>verify</phase>
						<configuration>
							<excludeFromFailureFile>${project.basedir}/pmd-excludes.properties</excludeFromFailureFile>
							<rulesets>
								<ruleset>${project.build.directory}/pmd/pmd-ruleset.xml</ruleset>
							</rulesets>
						</configuration>
					</execution>
					<execution>
						<id>default-check</id>
						<goals>
							<goal>check</goal>
						</goals>
						<configuration>
							<printFailingErrors>true</printFailingErrors>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- SpotBugs -->
			<plugin>
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<effort>Max</effort>
					<fork>false</fork>
					<threshold>Low</threshold>
					<plugins>
						<plugin>
							<groupId>com.h3xstream.findsecbugs</groupId>
							<artifactId>findsecbugs-plugin</artifactId>
							<version>${findsecbugs.version}</version>
						</plugin>
						<plugin>
							<groupId>com.mebigfatguy.fb-contrib</groupId>
							<artifactId>fb-contrib</artifactId>
							<version>${fb-contrib.version}</version>
						</plugin>
					</plugins>
				</configuration>
			</plugin>

			<!-- Check for un/used dependencies -->
			<plugin>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>analyze-only</goal>
						</goals>
						<configuration>
							<failOnWarning>true</failOnWarning>
							<ignoredUnusedDeclaredDependencies>
								<!-- Compile -->
								<ignoredUnusedDeclaredDependency>de.lars-sh:utils:jar:${parent.version}</ignoredUnusedDeclaredDependency>

								<!-- Provided -->
								<ignoredUnusedDeclaredDependency>com.github.spotbugs:spotbugs-annotations:${spotbugs.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>de.lars-sh:lombok-annotations:jar:${lombok-annotations.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>de.lars-sh:utils-annotations:jar:${parent.version}</ignoredUnusedDeclaredDependency>

								<!-- Test -->
								<ignoredUnusedDeclaredDependency>de.lars-sh:utils-test:jar:${parent.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>org.jooq:joor-java-8:jar:${joor.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>org.junit.jupiter:junit-jupiter-api:jar:${junit-jupiter-api.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>org.junit.jupiter:junit-jupiter-engine:jar:${junit-jupiter-engine.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>org.junit.platform:junit-platform-runner:jar:${junit-platform-runner.version}</ignoredUnusedDeclaredDependency>
								<ignoredUnusedDeclaredDependency>org.mockito:mockito-core:jar:${mockito.version}</ignoredUnusedDeclaredDependency>
							</ignoredUnusedDeclaredDependencies>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- Check for tidied up pom.xml -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>tidy-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Sign packages -->
			<plugin>
				<artifactId>maven-gpg-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Deployment -->
			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<extensions>true</extensions>
				<configuration>
					<serverId>sonatype-nexus-staging</serverId>
					<nexusUrl>https://oss.sonatype.org/</nexusUrl>
					<autoReleaseAfterClose>true</autoReleaseAfterClose>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<!-- Test code coverage -->
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>

			<!-- Check versions -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>versions-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>dependency-updates-report</report>
							<report>plugin-updates-report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>

			<!-- Documentation -->
			<plugin>
				<artifactId>maven-javadoc-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>javadoc-no-fork</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>

			<!-- Cross references -->
			<plugin>
				<artifactId>maven-jxr-plugin</artifactId>
			</plugin>
		</plugins>
	</reporting>

	<profiles>
		<!-- Add CPD excludes if the file exists -->
		<profile>
			<id>cpd-excludes-csv-exists</id>
			<activation>
				<file>
					<exists>${basedir}/cpd-excludes.csv</exists>
				</file>
			</activation>
			<properties>
				<cpd.excludeFromFailureFile>${project.basedir}/cpd-excludes.csv</cpd.excludeFromFailureFile>
			</properties>
		</profile>

		<!-- Skip code checks and tests -->
		<profile>
			<id>dirty</id>
			<properties>
				<skipTests>true</skipTests>
				<checkstyle.skip>true</checkstyle.skip>
				<jacoco.skip>true</jacoco.skip>
				<cpd.skip>true</cpd.skip>
				<pmd.skip>true</pmd.skip>
				<spotbugs.skip>true</spotbugs.skip>
				<mdep.analyze.skip>true</mdep.analyze.skip>
				<tidy.skip>true</tidy.skip>
			</properties>
		</profile>

		<!-- Skip the creation of optional packages -->
		<profile>
			<id>dirty-package</id>
			<properties>
				<maven.source.skip>true</maven.source.skip>
				<maven.javadoc.skip>true</maven.javadoc.skip>
				<gpg.skip>true</gpg.skip>
			</properties>
		</profile>

		<!-- JDK 11 and later: Suppress SpotBugs bug RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 
			as of https://github.com/spotbugs/spotbugs/issues/756 -->
		<profile>
			<id>jdk11-and-later</id>
			<activation>
				<jdk>(11,)</jdk>
			</activation>
			<properties>
				<spotbugs.skip>true</spotbugs.skip>
			</properties>
		</profile>

		<!-- Add SpotBugs excludes if the file exists -->
		<profile>
			<id>spotbugs-excludes-xml-exists</id>
			<activation>
				<file>
					<exists>${basedir}/spotbugs-excludes.xml</exists>
				</file>
			</activation>
			<properties>
				<spotbugs.excludeFilterFile>${project.basedir}/spotbugs-excludes.xml</spotbugs.excludeFilterFile>
			</properties>
		</profile>

		<!-- Update existing .travis.yml files -->
		<profile>
			<id>update-travis-yml</id>
			<properties>
				<update-travis-yml>true</update-travis-yml>
			</properties>
		</profile>

		<!-- Eclipse only: Add lombok sources to class path since delombok goals 
			are ignored -->
		<profile>
			<id>eclipse-only</id>
			<activation>
				<property>
					<name>m2e.version</name>
				</property>
			</activation>
			<build>
				<!-- Add lombok sources to Eclipse build path -->
				<plugins>
					<plugin>
						<groupId>org.codehaus.mojo</groupId>
						<artifactId>build-helper-maven-plugin</artifactId>
						<executions>
							<execution>
								<id>add-source</id>
								<phase>generate-sources</phase>
								<goals>
									<goal>add-source</goal>
								</goals>
								<configuration>
									<sources>
										<source>${project.basedir}/src/main/lombok</source>
									</sources>
								</configuration>
							</execution>
							<execution>
								<id>add-test-source</id>
								<phase>generate-sources</phase>
								<goals>
									<goal>add-test-source</goal>
								</goals>
								<configuration>
									<sources>
										<source>${project.basedir}/src/test/lombok</source>
									</sources>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<!-- Update eclipse settings -->
		<profile>
			<id>update-eclipse</id>
			<activation>
				<property>
					<name>m2e.version</name>
				</property>
			</activation>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-antrun-plugin</artifactId>
						<executions>
							<execution>
								<id>eclipse-settings</id>
								<phase>generate-sources</phase>
								<goals>
									<goal>run</goal>
								</goals>
								<configuration>
									<target>
										<!-- .settings -->
										<mkdir dir="${project.basedir}/.settings" />

										<!-- .settings/checkstyle.xml -->
										<copy file="${project.build.directory}/checkstyle.xml"
											tofile="${project.basedir}/.settings/checkstyle.xml"
											overwrite="true" force="true" />

										<!-- .checkstyle -->
										<echo message="Update .checkstyle" />
										<echo file="${project.basedir}/.checkstyle"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="false" sync-formatter="false">
	<local-check-config name="Checkstyle" location=".settings/checkstyle.xml" type="project" description="">
		<additional-data name="protect-config-file" value="false"/>
	</local-check-config>
	<fileset name="main" enabled="true" check-config-name="Checkstyle" local="true">
		<file-match-pattern match-pattern="^target/generated-sources/delombok/" include-pattern="true" />
		<file-match-pattern match-pattern="^src/main/java/" include-pattern="true" />
	</fileset>
	<fileset name="test" enabled="true" check-config-name="Checkstyle" local="true">
		<file-match-pattern match-pattern="^target/generated-test-sources/delombok/" include-pattern="true" />
		<file-match-pattern match-pattern="^src/test/java/" include-pattern="true" />
	</fileset>
</fileset-config>
]]></echo>

										<!-- .settings/*.properties -->
										<propertyfile
											file="${project.basedir}/.settings/edu.umd.cs.findbugs.core.prefs">
											<entry key="detector_threshold" value="3" />
											<entry key="effort" value="max" />
											<entry key="filter_settings"
												value="Low|BAD_PRACTICE,CORRECTNESS,EXPERIMENTAL,I18N,MALICIOUS_CODE,MT_CORRECTNESS,PERFORMANCE,SECURITY,STYLE|false|20" />
											<entry key="filter_settings_neg" value="NOISE|" />
											<entry key="includefilter0"
												value="spotbugs-exclude.xml|true" />
											<entry key="run_at_full_build" value="true" />
										</propertyfile>
										<propertyfile
											file="${project.basedir}/.settings/org.eclipse.core.resources.prefs">
											<entry key="eclipse.preferences.version" value="1" />
											<entry key="encoding/&lt;project&gt;" value="UTF-8" />
											<entry key="encoding//src/main/java" value="UTF-8" />
											<entry key="encoding//src/main/lombok" value="UTF-8" />
											<entry key="encoding//src/main/resources" value="UTF-8" />
											<entry key="encoding//src/test/java" value="UTF-8" />
											<entry key="encoding//src/test/lombok" value="UTF-8" />
											<entry key="encoding//src/test/resources" value="UTF-8" />
										</propertyfile>
										<propertyfile
											file="${project.basedir}/.settings/org.eclipse.core.runtime.prefs">
											<entry key="line.separator" value="&#10;" />
										</propertyfile>
										<propertyfile
											file="${project.basedir}/.settings/org.eclipse.jdt.ui.prefs">
											<entry key="cleanup.add_default_serial_version_id"
												value="true" />
											<entry key="cleanup.add_generated_serial_version_id"
												value="false" />
											<entry key="cleanup.add_missing_annotations"
												value="true" />
											<entry key="cleanup.add_missing_deprecated_annotations"
												value="true" />
											<entry key="cleanup.add_missing_methods" value="false" />
											<entry key="cleanup.add_missing_nls_tags" value="false" />
											<entry key="cleanup.add_missing_override_annotations"
												value="true" />
											<entry
												key="cleanup.add_missing_override_annotations_interface_methods"
												value="true" />
											<entry key="cleanup.add_serial_version_id"
												value="false" />
											<entry key="cleanup.always_use_blocks" value="true" />
											<entry
												key="cleanup.always_use_parentheses_in_expressions"
												value="false" />
											<entry
												key="cleanup.always_use_this_for_non_static_field_access"
												value="false" />
											<entry
												key="cleanup.always_use_this_for_non_static_method_access"
												value="false" />
											<entry key="cleanup.convert_functional_interfaces"
												value="true" />
											<entry key="cleanup.convert_to_enhanced_for_loop"
												value="true" />
											<entry key="cleanup.correct_indentation" value="true" />
											<entry key="cleanup.format_source_code" value="true" />
											<entry key="cleanup.format_source_code_changes_only"
												value="false" />
											<entry key="cleanup.insert_inferred_type_arguments"
												value="false" />
											<entry key="cleanup.make_local_variable_final"
												value="true" />
											<entry key="cleanup.make_parameters_final" value="true" />
											<entry key="cleanup.make_private_fields_final"
												value="false" />
											<entry
												key="cleanup.make_type_abstract_if_missing_method"
												value="false" />
											<entry key="cleanup.make_variable_declarations_final"
												value="true" />
											<entry key="cleanup.never_use_blocks" value="false" />
											<entry
												key="cleanup.never_use_parentheses_in_expressions"
												value="true" />
											<entry key="cleanup.organize_imports" value="true" />
											<entry
												key="cleanup.qualify_static_field_accesses_with_declaring_class"
												value="false" />
											<entry
												key="cleanup.qualify_static_member_accesses_through_instances_with_declaring_class"
												value="true" />
											<entry
												key="cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class"
												value="false" />
											<entry
												key="cleanup.qualify_static_member_accesses_with_declaring_class"
												value="true" />
											<entry
												key="cleanup.qualify_static_method_accesses_with_declaring_class"
												value="false" />
											<entry key="cleanup.remove_private_constructors"
												value="true" />
											<entry key="cleanup.remove_redundant_modifiers"
												value="true" />
											<entry key="cleanup.remove_redundant_semicolons"
												value="true" />
											<entry key="cleanup.remove_redundant_type_arguments"
												value="true" />
											<entry key="cleanup.remove_trailing_whitespaces"
												value="true" />
											<entry key="cleanup.remove_trailing_whitespaces_all"
												value="true" />
											<entry
												key="cleanup.remove_trailing_whitespaces_ignore_empty"
												value="false" />
											<entry key="cleanup.remove_unnecessary_casts"
												value="true" />
											<entry key="cleanup.remove_unnecessary_nls_tags"
												value="true" />
											<entry key="cleanup.remove_unused_imports" value="true" />
											<entry key="cleanup.remove_unused_local_variables"
												value="false" />
											<entry key="cleanup.remove_unused_private_fields"
												value="true" />
											<entry key="cleanup.remove_unused_private_members"
												value="false" />
											<entry key="cleanup.remove_unused_private_methods"
												value="true" />
											<entry key="cleanup.remove_unused_private_types"
												value="true" />
											<entry key="cleanup.sort_members" value="false" />
											<entry key="cleanup.sort_members_all" value="false" />
											<entry key="cleanup.use_anonymous_class_creation"
												value="false" />
											<entry key="cleanup.use_blocks" value="true" />
											<entry
												key="cleanup.use_blocks_only_for_return_and_throw"
												value="false" />
											<entry key="cleanup.use_lambda" value="true" />
											<entry key="cleanup.use_parentheses_in_expressions"
												value="true" />
											<entry
												key="cleanup.use_this_for_non_static_field_access"
												value="true" />
											<entry
												key="cleanup.use_this_for_non_static_field_access_only_if_necessary"
												value="true" />
											<entry
												key="cleanup.use_this_for_non_static_method_access"
												value="true" />
											<entry
												key="cleanup.use_this_for_non_static_method_access_only_if_necessary"
												value="true" />
											<entry key="cleanup_profile" value="_de.lars-sh" />
											<entry key="cleanup_settings_version" value="2" />
											<entry key="eclipse.preferences.version" value="1" />
											<entry
												key="editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup"
												value="true" />
											<entry key="formatter_profile" value="_de.lars-sh" />
											<entry key="formatter_settings_version" value="16" />
											<entry key="org.eclipse.jdt.ui.exception.name"
												value="e" />
											<entry key="org.eclipse.jdt.ui.gettersetter.use.is"
												value="true" />
											<entry key="org.eclipse.jdt.ui.ignorelowercasenames"
												value="true" />
											<entry key="org.eclipse.jdt.ui.importorder"
												value="java;javax;org;com;" />
											<entry key="org.eclipse.jdt.ui.keywordthis"
												value="false" />
											<entry key="org.eclipse.jdt.ui.ondemandthreshold"
												value="99" />
											<entry key="org.eclipse.jdt.ui.overrideannotation"
												value="true" />
											<entry key="org.eclipse.jdt.ui.staticondemandthreshold"
												value="99" />
											<entry
												key="org.eclipse.jdt.ui.text.custom_code_templates" value="" />
											<entry key="sp_cleanup.add_default_serial_version_id"
												value="true" />
											<entry key="sp_cleanup.add_generated_serial_version_id"
												value="false" />
											<entry key="sp_cleanup.add_missing_annotations"
												value="true" />
											<entry
												key="sp_cleanup.add_missing_deprecated_annotations"
												value="true" />
											<entry key="sp_cleanup.add_missing_methods"
												value="false" />
											<entry key="sp_cleanup.add_missing_nls_tags"
												value="false" />
											<entry
												key="sp_cleanup.add_missing_override_annotations"
												value="true" />
											<entry
												key="sp_cleanup.add_missing_override_annotations_interface_methods"
												value="true" />
											<entry key="sp_cleanup.add_serial_version_id"
												value="false" />
											<entry key="sp_cleanup.always_use_blocks" value="true" />
											<entry
												key="sp_cleanup.always_use_parentheses_in_expressions"
												value="false" />
											<entry
												key="sp_cleanup.always_use_this_for_non_static_field_access"
												value="false" />
											<entry
												key="sp_cleanup.always_use_this_for_non_static_method_access"
												value="false" />
											<entry key="sp_cleanup.convert_functional_interfaces"
												value="true" />
											<entry key="sp_cleanup.convert_to_enhanced_for_loop"
												value="true" />
											<entry key="sp_cleanup.correct_indentation"
												value="true" />
											<entry key="sp_cleanup.format_source_code" value="true" />
											<entry key="sp_cleanup.format_source_code_changes_only"
												value="false" />
											<entry key="sp_cleanup.insert_inferred_type_arguments"
												value="false" />
											<entry key="sp_cleanup.make_local_variable_final"
												value="true" />
											<entry key="sp_cleanup.make_parameters_final"
												value="true" />
											<entry key="sp_cleanup.make_private_fields_final"
												value="false" />
											<entry
												key="sp_cleanup.make_type_abstract_if_missing_method"
												value="false" />
											<entry
												key="sp_cleanup.make_variable_declarations_final"
												value="true" />
											<entry key="sp_cleanup.never_use_blocks" value="false" />
											<entry
												key="sp_cleanup.never_use_parentheses_in_expressions"
												value="true" />
											<entry key="sp_cleanup.on_save_use_additional_actions"
												value="true" />
											<entry key="sp_cleanup.organize_imports" value="true" />
											<entry
												key="sp_cleanup.qualify_static_field_accesses_with_declaring_class"
												value="false" />
											<entry
												key="sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class"
												value="true" />
											<entry
												key="sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class"
												value="false" />
											<entry
												key="sp_cleanup.qualify_static_member_accesses_with_declaring_class"
												value="true" />
											<entry
												key="sp_cleanup.qualify_static_method_accesses_with_declaring_class"
												value="false" />
											<entry key="sp_cleanup.remove_private_constructors"
												value="true" />
											<entry key="sp_cleanup.remove_redundant_modifiers"
												value="true" />
											<entry key="sp_cleanup.remove_redundant_semicolons"
												value="true" />
											<entry key="sp_cleanup.remove_redundant_type_arguments"
												value="true" />
											<entry key="sp_cleanup.remove_trailing_whitespaces"
												value="true" />
											<entry key="sp_cleanup.remove_trailing_whitespaces_all"
												value="true" />
											<entry
												key="sp_cleanup.remove_trailing_whitespaces_ignore_empty"
												value="false" />
											<entry key="sp_cleanup.remove_unnecessary_casts"
												value="true" />
											<entry key="sp_cleanup.remove_unnecessary_nls_tags"
												value="true" />
											<entry key="sp_cleanup.remove_unused_imports"
												value="true" />
											<entry key="sp_cleanup.remove_unused_local_variables"
												value="false" />
											<entry key="sp_cleanup.remove_unused_private_fields"
												value="true" />
											<entry key="sp_cleanup.remove_unused_private_members"
												value="false" />
											<entry key="sp_cleanup.remove_unused_private_methods"
												value="true" />
											<entry key="sp_cleanup.remove_unused_private_types"
												value="true" />
											<entry key="sp_cleanup.sort_members" value="false" />
											<entry key="sp_cleanup.sort_members_all" value="false" />
											<entry key="sp_cleanup.use_anonymous_class_creation"
												value="false" />
											<entry key="sp_cleanup.use_blocks" value="true" />
											<entry
												key="sp_cleanup.use_blocks_only_for_return_and_throw"
												value="false" />
											<entry key="sp_cleanup.use_lambda" value="true" />
											<entry key="sp_cleanup.use_parentheses_in_expressions"
												value="true" />
											<entry
												key="sp_cleanup.use_this_for_non_static_field_access"
												value="true" />
											<entry
												key="sp_cleanup.use_this_for_non_static_field_access_only_if_necessary"
												value="true" />
											<entry
												key="sp_cleanup.use_this_for_non_static_method_access"
												value="true" />
											<entry
												key="sp_cleanup.use_this_for_non_static_method_access_only_if_necessary"
												value="true" />
										</propertyfile>
										<propertyfile
											file="${project.basedir}/.settings/org.eclipse.jdt.core.prefs">
											<entry key="eclipse.preferences.version" value="1" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.argumentPrefixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.argumentSuffixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.fieldPrefixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.fieldSuffixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.localPrefixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.localSuffixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.staticFieldPrefixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.staticFieldSuffixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes"
												value="" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation"
												value="${org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation}" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nonnull"
												value="edu.umd.cs.findbugs.annotations.NonNull" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nonnull.secondary"
												value="${org.eclipse.jdt.core.compiler.annotation.nonnull.secondary}" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nonnullbydefault"
												value="de.larssh.utils.annotations.NonNullByDefault" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary"
												value="${org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary}" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nullable"
												value="edu.umd.cs.findbugs.annotations.Nullable" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nullable.secondary"
												value="${org.eclipse.jdt.core.compiler.annotation.nullable.secondary}" />
											<entry
												key="org.eclipse.jdt.core.compiler.annotation.nullanalysis"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.codegen.methodParameters"
												value="do not generate" />
											<entry
												key="org.eclipse.jdt.core.compiler.codegen.targetPlatform"
												value="1.8" />
											<entry
												key="org.eclipse.jdt.core.compiler.codegen.unusedLocal"
												value="preserve" />
											<entry key="org.eclipse.jdt.core.compiler.compliance"
												value="1.8" />
											<entry
												key="org.eclipse.jdt.core.compiler.debug.lineNumber"
												value="generate" />
											<entry
												key="org.eclipse.jdt.core.compiler.debug.localVariable"
												value="generate" />
											<entry
												key="org.eclipse.jdt.core.compiler.debug.sourceFile"
												value="generate" />
											<entry
												key="org.eclipse.jdt.core.compiler.doc.comment.support"
												value="${org.eclipse.jdt.core.compiler.doc.comment.support}" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.APILeak"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.annotationSuperInterface"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.assertIdentifier"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.autoboxing"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.comparingIdentical"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.deadCode"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.deprecation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.discouragedReference"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.emptyStatement"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.enumIdentifier"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.fallthroughCase"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.fatalOptionalError"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.fieldHiding"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.finalParameterBound"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.forbiddenReference"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.indirectStaticAccess"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.invalidJavadoc"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.invalidJavadocTags"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility"
												value="private" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.localVariableHiding"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.methodWithConstructorName"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingDefaultCase"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocComments"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility"
												value="default" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription"
												value="all_standard_tags" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocTags"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility"
												value="private" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingSerialVersion"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.noEffectAssignment"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nullReference"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nullSpecViolation"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.parameterAssignment"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.potentialNullReference"
												value="error" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.rawTypeReference"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.redundantNullCheck"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.redundantSuperinterface"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.specialParameterHidingField"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.staticAccessReceiver"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.suppressWarnings"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.terminalDeprecation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.typeParameterHiding"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unclosedCloseable"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unhandledWarningToken"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unnecessaryElse"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess"
												value="ignore" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedImport"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedLabel"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedLocal"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedParameter"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference"
												value="disabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete"
												value="enabled" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedPrivateMember"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedTypeParameter"
												value="info" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.unusedWarningToken"
												value="warning" />
											<entry
												key="org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast"
												value="warning" />
											<entry key="org.eclipse.jdt.core.compiler.release"
												value="disabled" />
											<entry key="org.eclipse.jdt.core.compiler.source"
												value="1.8" />
											<entry
												key="org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines"
												value="2147483647" />
											<entry
												key="org.eclipse.jdt.core.formatter.align_type_members_on_columns"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.align_with_spaces"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_additive_operator"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_assignment"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_binary_expression"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_compact_if"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_compact_loops"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_enum_constants"
												value="49" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_logical_operator"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_method_declaration"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_module_statements"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_relational_operator"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try"
												value="81" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_shift_operator"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_string_concatenation"
												value="48" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration"
												value="16" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_type_arguments"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_type_parameters"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_after_imports"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_after_package"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_field"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_imports"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_member_type"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_method"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_before_package"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_block"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_switch"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration"
												value="end_of_line" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_block_comments"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_header"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_html"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_line_comments"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.format_source_code"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.indent_parameter_description"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.indent_root_tags"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.indent_tag_description"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.line_length"
												value="80" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.compact_else_if"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.continuation_indentation"
												value="2" />
											<entry
												key="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer"
												value="2" />
											<entry
												key="org.eclipse.jdt.core.formatter.disabling_tag"
												value="@formatter:off" />
											<entry
												key="org.eclipse.jdt.core.formatter.enabling_tag"
												value="@formatter:on" />
											<entry
												key="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_empty_lines"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.indentation.size"
												value="4" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_label"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_additive_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_logical_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_relational_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_shift_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_additive_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_logical_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_relational_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_semicolon"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_shift_operator"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation"
												value="insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation"
												value="do not insert" />
											<entry
												key="org.eclipse.jdt.core.formatter.join_lines_in_comments"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.join_wrapped_lines"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_code_block_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_method_body_on_one_line"
												value="one_line_if_empty" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line"
												value="one_line_if_empty" />
											<entry key="org.eclipse.jdt.core.formatter.lineSplit"
												value="120" />
											<entry
												key="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body"
												value="0" />
											<entry
												key="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve"
												value="1" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause"
												value="common_lines" />
											<entry
												key="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.tabulation.char"
												value="tab" />
											<entry
												key="org.eclipse.jdt.core.formatter.tabulation.size"
												value="4" />
											<entry
												key="org.eclipse.jdt.core.formatter.use_on_off_tags"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations"
												value="false" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_additive_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_assignment_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_binary_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_conditional_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_logical_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_relational_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_shift_operator"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_before_string_concatenation"
												value="true" />
											<entry
												key="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested"
												value="true" />
											<entry key="org.eclipse.jdt.core.javaFormatter"
												value="org.eclipse.jdt.core.defaultJavaFormatter" />
										</propertyfile>
									</target>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>
