class ApplicationPropertiesContributor implements ProjectContributor {

	private static final String FILE = "src/main/resources/application.properties";

	private final ApplicationProperties properties;

	public ApplicationPropertiesContributor(ApplicationProperties properties) {
		this.properties = properties;
	}

	@Override
	public void contribute(Path projectRoot) throws IOException {<FILL_FUNCTION_BODY>}

}

		Path output = projectRoot.resolve(FILE);
		if (!Files.exists(output)) {
			Files.createDirectories(output.getParent());
			Files.createFile(output);
		}
		try (PrintWriter writer = new PrintWriter(Files.newOutputStream(output, StandardOpenOption.APPEND), false,
				StandardCharsets.UTF_8)) {
			this.properties.writeTo(writer);
		}
	
<no_super_class>