survey-portlet
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.jasig.portlet</groupId> <artifactId>survey-portlet</artifactId> <version>1.1.0</version> </dependency>
<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/maven-v4_0_0.xsd"> <parent> <groupId>org.jasig.parent</groupId> <artifactId>jasig-parent</artifactId> <version>39</version> <relativePath /> </parent> <modelVersion>4.0.0</modelVersion> <groupId>org.jasig.portlet</groupId> <artifactId>survey-portlet</artifactId> <version>1.1.0</version> <name>${project.artifactId}</name> <description>Portlet for creating and administering survey/questionnaires</description> <packaging>war</packaging> <scm> <connection>scm:git:git@github.com:Jasig/SurveyPortlet.git</connection> <developerConnection>scm:git:git@github.com:Jasig/SurveyPortlet.git</developerConnection> <url>https://github.com/Jasig/SurveyPortlet</url> <tag>survey-portlet-1.1.0</tag> </scm> <!-- Dependency Version Properties --> <properties> <env>local</env> <filters.file>src/main/filters/${env}.properties</filters.file> <commons-lang.version>2.6</commons-lang.version> <hibernate.version>4.3.8.Final</hibernate.version> <hsqldb.version>2.3.2</hsqldb.version> <java.version>1.7</java.version> <jstl.version>1.1.2</jstl.version> <junit.version>4.12</junit.version> <logback.version>1.0.13</logback.version> <portlet-api.version>2.0</portlet-api.version> <slf4j.version>1.7.5</slf4j.version> <servlet-api.version>3.0.1</servlet-api.version> <spring.version>4.1.6.RELEASE</spring.version> <spring-data.version>1.7.2.RELEASE</spring-data.version> <spring-security.version>4.0.0.RELEASE</spring-security.version> <!-- The JDBC Driver used by db-init --> <jdbc.groupId>org.postgresql</jdbc.groupId> <jdbc.artifactId>postgresql</jdbc.artifactId> <jdbc.version>9.3-1102-jdbc41</jdbc.version> <!-- If using hsql must match hsqldb.version --> <!-- use this instead for postgress <jdbc.groupId>org.postgresql</jdbc.groupId> <jdbc.artifactId>postgresql</jdbc.artifactId> <jdbc.version>9.3-1102-jdbc41</jdbc.version> --> <logbackVersion>1.0.13</logbackVersion> <slf4jVersion>1.7.5</slf4jVersion> <jackson.version>2.5.1</jackson.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>javax.portlet</groupId> <artifactId>portlet-api</artifactId> <version>${portlet-api.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>${jstl.version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${servlet-api.version}</version> <type>jar</type> <scope>provided</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc-portlet</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jpa</artifactId> <version>${spring-data.version}</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> <version>${spring-security.version}</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>${spring-security.version}</version> </dependency> <dependency> <groupId>org.springframework.security.extensions</groupId> <artifactId>spring-security-saml2-core</artifactId> <version>1.0.0.RELEASE</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>${jstl.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> </dependency> <!-- Logging --> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.2</version> <scope>provided</scope> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${logback.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>${hibernate.version}</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>${hibernate.version}</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-ehcache</artifactId> <version>${hibernate.version}</version> </dependency> <dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer</artifactId> <version>5.5.1</version> </dependency> <dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer-spring</artifactId> <version>5.5.1</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>13.0</version> </dependency> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</artifactId> <version>1.1.6</version> </dependency> <!-- Database drivers --> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>${hsqldb.version}</version> </dependency> <dependency> <groupId>${jdbc.groupId}</groupId> <artifactId>${jdbc.artifactId}</artifactId> <version>${jdbc.version}</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>angularjs</artifactId> <version>1.4.3</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>underscorejs</artifactId> <version>1.8.3</version> </dependency> <dependency> <groupId>org.webjars.bower</groupId> <artifactId>angular-mocks</artifactId> <version>1.4.3</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>javax.portlet</groupId> <artifactId>portlet-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc-portlet</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> </dependency> <dependency> <groupId>org.springframework.security.extensions</groupId> <artifactId>spring-security-saml2-core</artifactId> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependency> <!-- Logging --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </dependency> <!-- End of logging section --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </dependency> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> </dependency> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-ehcache</artifactId> </dependency> <dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer</artifactId> </dependency> <dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer-spring</artifactId> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </dependency> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> </dependency> <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</artifactId> </dependency> <!-- Database drivers --> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> </dependency> <dependency> <groupId>${jdbc.groupId}</groupId> <artifactId>${jdbc.artifactId}</artifactId> </dependency> <dependency> <groupId>org.jsondoc</groupId> <artifactId>jsondoc-core</artifactId> <version>1.1.13</version> </dependency> <dependency> <groupId>org.jsondoc</groupId> <artifactId>jsondoc-ui</artifactId> <version>1.1.13</version> </dependency> <dependency> <groupId>org.jsondoc</groupId> <artifactId>jsondoc-springmvc</artifactId> <version>1.1.13</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>angularjs</artifactId> <version>1.4.3</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>underscorejs</artifactId> <version>1.8.3</version> </dependency> <dependency> <groupId>org.webjars.bower</groupId> <artifactId>angular-mocks</artifactId> <version>1.4.3</version> </dependency> </dependencies> <build> <filters> <filter>${filters.file}</filter> </filters> <resources> <resource> <filtering>false</filtering> <directory>src/main/resources</directory> <excludes> <!-- This list needs to be identical to the one below... --> <exclude>*.properties</exclude> <exclude>logback.xml</exclude> </excludes> </resource> <resource> <filtering>true</filtering> <directory>src/main/resources</directory> <includes> <!-- List files or patterns to be filtered here. Restrict the list to avoid accidentally substituting maven or other environmental tokens in other files.--> <include>*.properties</include> <include>logback.xml</include> </includes> </resource> <resource> <filtering>true</filtering> <directory>assembly</directory> <includes> <include>jsondoc-assembly.xml</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>com.mycila.maven-license-plugin</groupId> <artifactId>maven-license-plugin</artifactId> <configuration> <aggregate>true</aggregate> <excludes> <exclude>target/**</exclude> <exclude>pom.xml.*</exclude> <exclude>release.properties</exclude> <exclude>LICENSE</exclude> <exclude>NOTICE</exclude> <exclude>NOTICE.template</exclude> <exclude>bin/**</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <systemproperties> <property> <name>java.util.logging.config.file</name> <value>src/test/resources/log4j.properties</value> </property> </systemproperties> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-versions</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireJavaVersion> <version>${java.version}</version> </requireJavaVersion> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <attachClasses>true</attachClasses> <warName>survey-portlet</warName> <webXml>src/main/webapp/WEB-INF/web.xml</webXml> </configuration> </plugin> <plugin> <artifactId>maven-uportal-plugin</artifactId> <groupId>org.jasig.portal</groupId> <version>1.0.0-M1</version> <configuration> <contextName>survey-portlet</contextName> <artifactId>survey-portlet</artifactId> <artifactGroupId>${project.groupId}</artifactGroupId> <artifactVersion>${project.version}</artifactVersion> <artifactClassifier>localdev</artifactClassifier> <removeExistingDirectories>true</removeExistingDirectories> <extractWars>true</extractWars> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>surefire-report-maven-plugin</artifactId> <version>2.0-beta-1</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.4</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId> <version>2.3.1</version> </plugin> <!-- Plug-in to add lifecycles to support db-init, data-import, and data-export --> <plugin> <groupId>org.jasig.portal.maven</groupId> <artifactId>uportal-maven-plugin</artifactId> <version>1.0.0</version> <!-- extensions must be set to true to pick up the custom phases --> <extensions>true</extensions> </plugin> <plugin> <!-- | Invoke this plugin as follows to drop and recreate the Survey database tables... | | >mvn db-init +--> <groupId>org.codehaus.mojo</groupId> <artifactId>hibernate3-maven-plugin</artifactId> <version>3.0</version> <executions> <execution> <phase>db-init</phase> <goals> <goal>hbm2ddl</goal> </goals> </execution> </executions> <configuration> <hibernatetool> <jpaconfiguration persistenceunit="SurveyPU" propertyFile="target/${project.build.finalName}/WEB-INF/classes/datasource.properties" /> <hbm2ddl export="true" create="true" drop="true" outputfilename="sql.ddl" haltonerror="true" /> <classpath> <path location="target/${project.build.finalName}/WEB-INF/classes" /> </classpath> </hibernatetool> <componentProperties> <drop>true</drop> </componentProperties> </configuration> <dependencies> <dependency> <groupId>${jdbc.groupId}</groupId> <artifactId>${jdbc.artifactId}</artifactId> <version>${jdbc.version}</version> <scope>compile</scope> </dependency> <!-- The hibernate 3 plugin does NOT work with Hibernate 4. There currently doesn't exist any plugin to handle this task (hbm2ddl) with Hibernate 4 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>3.6.10.Final</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-tools</artifactId> <version>3.2.4.GA</version> </dependency> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>${hsqldb.version}</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.10.2</version> <configuration> </configuration> </plugin> <plugin> <groupId>org.jsondoc</groupId> <artifactId>jsondoc-maven-plugin</artifactId> <version>1.1.13</version> <executions> <execution> <id>generate-jsondoc</id> <phase>package</phase> <goals> <goal>generate</goal> </goals> <configuration> <version>1.0</version> <basePath>http://localhost:8080/survey-portlet</basePath> <packages> <package>org.jasig.portlet.survey.mvc</package> <package>org.jasig.portlet.survey.service.dto</package> </packages> <outputFile>${project.build.directory}/jsondoc-ui/jsondoc.json</outputFile> <scanner>org.jsondoc.springmvc.scanner.SpringJSONDocScanner</scanner> <playgroundEnabled>false</playgroundEnabled> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${servlet-api.version}</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.9</version> <executions> <execution> <id>unpack</id> <phase>process-resources</phase> <goals> <goal>unpack</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>org.jsondoc</groupId> <artifactId>jsondoc-ui</artifactId> <type>jar</type> <overWrite>true</overWrite> <outputDirectory>${project.build.directory}/jsondoc-ui</outputDirectory> </artifactItem> </artifactItems> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.google.code.maven-replacer-plugin</groupId> <artifactId>replacer</artifactId> <version>1.5.3</version> <executions> <execution> <phase>package</phase> <goals> <goal>replace</goal> </goals> </execution> </executions> <configuration> <includes> <include>${project.build.directory}/jsondoc-ui/jsondoc-ui.html</include> </includes> <token>'_JSONDOC_OFFLINE_PLACEHOLDER_'</token> <!-- Do not change this value! --> <valueFile>${project.build.directory}/jsondoc-ui/jsondoc.json</valueFile> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>create-distribution</id> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <finalName>jsondoc</finalName> <descriptors> <descriptor>assembly/jsondoc-assembly.xml</descriptor> </descriptors> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.8</version> <executions> <execution> <phase>data-import</phase> <configuration> <target> <echo>Running SQL load for survey</echo> <property file="target/${project.build.finalName}/WEB-INF/classes/datasource.properties" /> <sql driver="${hibernate.connection.driver_class}" url="${hibernate.connection.url}" userid="${hibernate.connection.username}" password="${hibernate.connection.password}" src="${basedir}/src/main/sql/ciData.sql" /> </target> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>${jdbc.groupId}</groupId> <artifactId>${jdbc.artifactId}</artifactId> <version>${jdbc.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>${hsqldb.version}</version> </dependency> </dependencies> </plugin> <plugin> <groupId>com.github.klieber</groupId> <artifactId>phantomjs-maven-plugin</artifactId> <version>0.7</version> <executions> <execution> <goals> <goal>install</goal> </goals> </execution> </executions> <configuration> <version>1.9.2</version> </configuration> </plugin> <plugin> <groupId>com.github.searls</groupId> <artifactId>jasmine-maven-plugin</artifactId> <version>2.1</version> <executions> <execution> <goals> <goal>test</goal> </goals> </execution> </executions> <configuration> <jsSrcDir>${project.basedir}/src/main/webapp/js</jsSrcDir> <jsTestSrcDir>${project.basedir}/src/test/webapp/js</jsTestSrcDir> <preloadSources> <source>/webjars/angularjs/angular.js</source> <source>/webjars/underscorejs/underscore.js</source> <source>/webjars/angular-mocks/angular-mocks.js</source> </preloadSources> <sourceIncludes> <include>*.js</include> </sourceIncludes> <specIncludes> <include>*Spec.js</include> </specIncludes> <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName> <webDriverCapabilities> <capability> <name>phantomjs.binary.path</name> <value>${phantomjs.binary}</value> </capability> </webDriverCapabilities> <haltOnFailure>true</haltOnFailure> </configuration> </plugin> <!-- Left here as an example of how to use jetty to stand up the portlet in order to access the services. Run Jetty with: mvn -Djetty.port=9090 jetty:run-war >& mavenJetty.log & Stop Jetty with: mvn jetty:stop <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.2.10.v20150310</version> <configuration> <stopKey>abc123</stopKey> <stopPort>9191</stopPort> <war>target/survey-portlet.war</war> <daemon>true</daemon> </configuration> <dependencies> <dependency> <groupId>javax.portlet</groupId> <artifactId>portlet-api</artifactId> <version>${portlet-api.version}</version> </dependency> </dependencies> </plugin> --> </plugins> </build> </project>