diff --git a/_projectCommon.php b/_projectCommon.php
index a06397a..fa01198 100755
--- a/_projectCommon.php
+++ b/_projectCommon.php
@@ -25,5 +25,6 @@
 $Nav->addCustomNav("FAQ", "http://wiki.eclipse.org/Henshin_FAQ", "_blank", 2);
 $Nav->addCustomNav("Javadoc", "http://download.eclipse.org/modeling/emft/henshin/javadoc/nightly/", "_blank", 2);
 $Nav->addCustomNav("Wiki", "http://wiki.eclipse.org/Henshin", "_blank", 2);
+$Nav->addCustomNav("Hudson", "https://hudson.eclipse.org/henshin/", "_blank", 2);
 
 ?>
diff --git a/description.html b/description.html
index d2b566b..afbf893 100755
--- a/description.html
+++ b/description.html
@@ -13,9 +13,9 @@
 </style>
 
 <div style="margin-top: 30px; margin-bottom:30px;">
-<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 13pt; width: 120px; text-align:center;"> <a href="install.php" class="lnk">INSTALL</a> </span> 
-<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 13pt; width: 120px; text-align:center;"> <a href="get-involved.php" class="lnk">GET INVOLVED</a> </span>
-<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 13pt; width: 120px; text-align:center;"> <a href="https://twitter.com/henshintool" target="_blank" class="lnk">FOLLOW US</a> </span>
+<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="install.php" class="lnk">INSTALL</a> </span> 
+<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="get-involved.php" class="lnk">GET INVOLVED</a> </span>
+<span style="background: #7036d0; padding: 10px; font-family: Calibri, Verdana; font-weight: bold; display: inline-block;font-size: 12pt; width: 120px; text-align:center;"> <a href="https://twitter.com/henshintool" target="_blank" class="lnk">FOLLOW US</a> </span>
 </div>
 
 <h2>Features</h2>
diff --git a/examples/apibasics/apibasics-example.zip b/examples/apibasics/apibasics-example.zip
new file mode 100644
index 0000000..093676c
--- /dev/null
+++ b/examples/apibasics/apibasics-example.zip
Binary files differ
diff --git a/examples/bank/index.html b/examples/bank/index.html
index 048cbed..d13e2c3 100644
--- a/examples/bank/index.html
+++ b/examples/bank/index.html
@@ -85,10 +85,25 @@
 To create a new transformation rule, use the <i>Rule</i> tool
 in the palette. In the top of every rule, its name and parameters
 are specified (and some optional information which we do not consider 
-here). In the below example, we write <i>createAccount(client, accountId)</i>,
+here). 
+
+<p>
+<b>Parameters:</b>
+In the below example, we write <i>createAccount(in client:EString, in accountId:EInt)</i>,
 where the <i>client</i> parameter is the name of the client for whom
 an account should be created, and <i>accountId</i> is the ID to be used
 for the new account.
+A parameter has a kind, which can be either 
+<i>in</i>, <i>out</i>, <i>inout</i>, or <i>var</i>.
+An <i>in</i> parameter is passed into the rule from the
+rule's context.
+An <i>out</i> parameter is passed out of the rule into the
+rule's context.
+An <i>inout</i> parameter is both passed both into and out of the rule, to and from its context.
+A <i>var</i> parameter or <i>variable</i> is used internally inside a rule only.
+Optionally, a parameter also has a type, like <i>EString</i> and <i>EInt</i> in the example.
+You can change the kind, type and name of a parameter simply by typing this information into the bar at the top of the rule.
+
 </p>
 
 <p>
@@ -159,7 +174,7 @@
 positive. If the conditions don not hold, the rule can not be applied.
 The conditions are evaluated by the Oracle Nashorn JavaScript Engine.
 Note also that <i>x</i> and <i>y</i> have to be specified as 
-parameters. When executing this rule, these parameters will
+<i>var</i> parameters. When executing this rule, these parameters will
 be automatically initialized by the found match.
 </p>
 
diff --git a/examples/index.html b/examples/index.html
index 56088ac..def4889 100644
--- a/examples/index.html
+++ b/examples/index.html
@@ -3,7 +3,7 @@
 
 <p>
 This page lists documented examples of Henshin transformations.
-All examples can be found in the <a href="http://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.henshin/trunk/plugins/org.eclipse.emf.henshin.examples/">Henshin examples plug-in</a>.
+All examples can be found in the <a href="https://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git/tree/plugins/org.eclipse.emf.henshin.examples">Henshin examples plug-in</a>.
 </p>
 
 <h2>Endogenous Transformations</h2>
@@ -22,6 +22,10 @@
 <a href="examples.php?example=sierpinski">Sierpinski Triangle</a>: 
 A simple example for benchmarking the interpreter.
 </li>
+<li>
+<a href="examples.php?example=universitycourses">University Courses</a>:
+An example showing the capabilities and usage of Units.
+</li>
 </ol>
 
 
diff --git a/examples/universitycourses/index.html b/examples/universitycourses/index.html
new file mode 100644
index 0000000..e544e88
--- /dev/null
+++ b/examples/universitycourses/index.html
@@ -0,0 +1,124 @@
+<h1>Henshin Example: University Courses</h1>
+
+<p>
+<small><i>contributed by Benjamin Heidelmeier and Gabriele Taentzer</i></small>
+</p>
+
+<p>
+<i>PLEASE NOTE: This example does not work reliably with the Henshin 1.4 release. Try a newer release or the current nightly build.</i>
+The purpose of this example is to assign university courses to lecturers and students while avoiding time conflicts.
+It is also meant to be an accessible example for the usage of <a href="https://wiki.eclipse.org/Henshin/Units">Units</a>.
+This example wants to showcase as many units as possible.
+Therefore please pardon that some units' usage may seem unnecessarily complicated.
+The transformation model, example input models and source code can be found <a href="http://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git/tree/plugins/org.eclipse.emf.henshin.examples/src/org/eclipse/emf/henshin/examples/universitycourses">here</a>.
+</p>
+
+<h2>Metamodel</h2>
+
+<p>
+<a href="examples/universitycourses/universityCourses-model.png"><img src="examples/universitycourses/universityCourses-model.png" align="right" width="250" /></a>
+The metamodel describes a <i>University</i> which contains <i>Courses</i> and <i>Persons</i>..
+A <i>Course</i> has a name, belongs to a university and can be of two types.
+An <i>OfferedCourse</i> represents a course which can be staged in the next lecture period.
+A <i>ScheduledCourse</i> represents a course which is staged in the next lecture period with the hour it is starting.
+For the sake of simplicity, we consider one generic weekday only, moreover, every course duration is one hour.
+Furthermore it is required to have at least one lecturer.
+A <i>Lecturer</i> is a person who can teach offered courses and teaches scheduled courses.
+A <i>Student</i> is a person who is interested in courses.
+The <i>Temp</i> object contained in a university is defined to save transient information of course scheduling.</br>
+The metamodel is defined in the file <i>universityCourses.ecore</i>.
+</p>
+
+<h3>Instance Model Restrictions</h3>
+
+<p>
+Instance models - which should be transformed with the transformation rules below - have to meet the following requirements:
+<ul>
+	<li>The instance model should contain at least a <i>University</i> object.</li>
+	<li>The name of a <i>Course</i> is considered to be unique. There must not be any pair of <i>OfferedCourse/ScheduledCourse</i> objects which share the same name.</li>
+	<li>There must not be any time conflicts for a <i>Lecturer</i> or <i>Student</i> and their associated <i>ScheduledCourse</i>s.</li>
+</ul>
+</p>
+
+<h2>Henshin Rules and Units</h2>
+
+<a href="examples/universitycourses/universityCourses-planAllCoursesOrFail.png"><img src="examples/universitycourses/universityCourses-planAllCoursesOrFail.png" /></a>
+
+<p>
+The <i>SequentialUnit</i> <b>planAllCoursesOrFail</b> (<i>strict=true</i>, <i>rollback=false</i>) executes the rule <i>existsUnscheduledInterestingCourse</i> first.
+The rule <b>existsUnscheduledInterestingCourse</b> checks the existence of an <i>OfferedCourse</i> having an interested <i>Student</i> as well as a <i>Lecturer</i> capable of teaching the <i>Course</i>.
+If this application is successful, <i>planCourseOrIncrement</i> is executed.
+</p>
+
+<p>
+The <i>ConditionalUnit</i> <b>planCourseOrIncrement</b> tries to apply the sub-unit <i>planOneCourse</i>.
+If it is successfully applicable, <i>planCourseOrIncrement</i> basically calls itself recursively to attempt <i>planOneCourse</i> again by calling the <i>ConditionalUnit</i> <b>planUnscheduledInterestingCourses</b>.
+This unit uses <i>existsUnscheduledInterestingCourse</i> so that the application terminates as soon as all interesting courses are scheduled.
+In contrast to the very similar (<i>strict</i>) <i>SequentialUnit</i> <i>planAllCoursesOrFail</i>, this <i>ConditionalUnit</i> does not fail if no unscheduled courses exist.
+If it failed after all courses have been scheduled, the previous execution of <i>planCourseOrIncrement</i> would also be unsuccessful and would lead to the rescission of the last <i>planOneCourse</i> execution.
+In consequence there would always remain one unscheduled but interesting course after the successful application of <i>planAllCoursesOrFail</i>.
+Therefore the <i>ConditionalUnit</i> <i>planUnscheduledInterestingCourses</i> - which never fails after an unsuccessful application of its <i>if</i>-sub-unit - is used inside <i>planCourseOrIncrement</i>.
+</p>
+
+<p>
+<a href="examples/universitycourses/universityCourses-incrementHour.png"><img src="examples/universitycourses/universityCourses-incrementHour.png" /></a>
+</p>
+
+<p>
+If <i>planOneCourse</i> is not applicable, the <i>ConditionalUnit</i> <b>incrementIfPossible</b> first checks whether incrementing the current hour is possible by applying the rule <b>incrementPossible</b>.
+After a successful application of <i>incrementPossible</i> the <i>SequentialUnit</i> <i>incrementHour</i> is applied in the <i>SequentialUnit</i> <b>incrementAndContinue</b>.
+The unit <b>incrementHour</b> raises the passed-in <i>hour</i> parameter by one and returns the result via the parameter <i>oneMore</i></i>.
+After successfully incrementing the hour value <i>planCourseOrIncrement</i> is called again.
+In the end <i>planCourseOrIncrement</i> should only terminate with the maximum number of courses (with prospective students) scheduled between the starting time and the end of the day.
+</p>
+
+<p>
+<a href="examples/universitycourses/universityCourses-planOneCourse.png"><img src="examples/universitycourses/universityCourses-planOneCourse.png" align="right" width="350" /></a>
+
+<b>planOneCourse</b> is a <i>SequentialUnit</i> with the flags <i>strict=true</i> and <i>rollback=true</i>.
+First, it schedules a course which prevents time conflicts for lecturers by fixing the time using the rule <i>scheduleOfferedCourse</i>.
+Furthermore it attempts to associate all interested students without time conflicts with the scheduled course.
+Afterwards <i>planOneCourse</i> checks the absence of interested students with time conflicts by applying the rule <i>isScheduledCourseConflictFree</i>.
+At last, the according <i>OfferedCourse</i> is removed by an application of <i>removeOfferedCourseAfterScheduling</i>.
+This unit may fail in <i>scheduleOfferedCourse</i> if there is no lecturer associable without time conflict or in <i>isScheduledCourseConflictFree</i> if there is an interested student with time conflict.
+Due to the flag <i>strict=true</i>, the <i>SequentialUnit</i> application stopps at the failed rule and due to the flag <i>rollback=true</i> it reverts all applied transformations.
+This means that <i>planOneCourse</i> is applied only if there is no time conflict for students or lecturers.
+</p>
+
+<p>
+The rule <b>scheduleOfferedCourse</b> tries to find an <i>OfferedCourse</i> in which at least one <i>Student</i> is interested in and which can be taught by at least one <i>Lecturer</i>.
+The <i>in</i>-parameter <i>hour</i> defines the hour to which the course can be scheduled.
+The <i>Lecturer</i> must not teach another <i>ScheduledCourse</i> at the same time (here called <i>startingHour</i>).
+If those requirements are met, a new <i>ScheduledCourse</i> with the same name as the <i>OfferedCourse</i> is created at the given time.
+At the same time the rule attempts to move students to the ScheduledCourse.
+If a <i>Student</i> is not interested in another conflicting <i>ScheduledCourse</i> he/she will get associated with the <i>ScheduledCourse</i> instead of the <i>OfferedCourse</i>.
+</p>
+
+<p>
+The rule <b>isScheduledCourseConflictFree</b> checks whether there is no student interested in an <i>OfferedCourse</i> with corresponding <i>ScheduledCourse</i> and who is interested in a <i>ScheduledCourse</i> at the same time.
+This rule basically detects <i>Student</i>s who cannot be treated by <i>moveStudentsToScheduledCourse</i>.
+The rule <b>removeOfferedCourseAfterScheduling</b> (<i>checkDangling=false</i>) deletes an <i>OfferedCourse</i> that is scheduled.
+</p>
+
+<p>
+<a href="examples/universitycourses/universityCourses-manageCourses.png"><img src="examples/universitycourses/universityCourses-manageCourses.png" align="right" /></a>
+The starting point for the application of this example is the <i>IteratedUnit</i> <b>manageCourses</b> with the flag <i>strict</i> set to false.
+The <i>in</i>-parameter <i>startHour</i> in this and all other units sets the earliest hour to which courses can be scheduled.
+This unit tries to apply its sub-unit <i>planOrCleanup</i> two times which shall ensure that each of the two sub-units of <i>planOrCleanup</i> is applied at least once.
+<b>planOrCleanup</b> is a <i>PriorityUnit</i> with the sub-units <i>planAllCoursesOrFail</i> and <i>cleanupUninterestingCourses</i>.
+The former sub-unit can be applied <i>successfully</i> at most once.
+This means that the rule <b>cleanupUninterestingCourses</b> which removes <i>OfferedCourse</i>s without prospective students (<i>checkDangling=false</i>) is applied in the second iteration at latest.
+</p>
+
+<h3>Loop Unit vs. Nested Rule</h3>
+
+<p>
+<a href="examples/universitycourses/universityCourses-cleanupUninterestingCoursesUnit.png"><img src="examples/universitycourses/universityCourses-cleanupUninterestingCoursesUnit.png" /></a>
+</p>
+
+<p>
+The rule <i>cleanupUninterestingCourses</i>, which is realised using a nested rule, can alternatively be replaced by a <i>LoopUnit</i> <i>cleanupUninterestingCoursesUnit</i>.
+This unit contains the multi-rule of the formerly nested rule and is named <i>cleanupUninterestingCourse</i> here (singular!).
+The expression with a nested rule is preferreable in this case because of its greater simplicity.
+But for a unit (instead of a rule) which has to be executed as many times as possible a <i>LoopUnit</i> has to be used necessarily.
+</p>
diff --git a/examples/universitycourses/universityCourses-cleanupUninterestingCoursesUnit.png b/examples/universitycourses/universityCourses-cleanupUninterestingCoursesUnit.png
new file mode 100644
index 0000000..7cc0e93
--- /dev/null
+++ b/examples/universitycourses/universityCourses-cleanupUninterestingCoursesUnit.png
Binary files differ
diff --git a/examples/universitycourses/universityCourses-incrementHour.png b/examples/universitycourses/universityCourses-incrementHour.png
new file mode 100644
index 0000000..9d3363c
--- /dev/null
+++ b/examples/universitycourses/universityCourses-incrementHour.png
Binary files differ
diff --git a/examples/universitycourses/universityCourses-manageCourses.png b/examples/universitycourses/universityCourses-manageCourses.png
new file mode 100644
index 0000000..bb59873
--- /dev/null
+++ b/examples/universitycourses/universityCourses-manageCourses.png
Binary files differ
diff --git a/examples/universitycourses/universityCourses-model.png b/examples/universitycourses/universityCourses-model.png
new file mode 100644
index 0000000..8a8fd04
--- /dev/null
+++ b/examples/universitycourses/universityCourses-model.png
Binary files differ
diff --git a/examples/universitycourses/universityCourses-planAllCoursesOrFail.png b/examples/universitycourses/universityCourses-planAllCoursesOrFail.png
new file mode 100644
index 0000000..7c9e89d
--- /dev/null
+++ b/examples/universitycourses/universityCourses-planAllCoursesOrFail.png
Binary files differ
diff --git a/examples/universitycourses/universityCourses-planOneCourse.png b/examples/universitycourses/universityCourses-planOneCourse.png
new file mode 100644
index 0000000..3ca20a8
--- /dev/null
+++ b/examples/universitycourses/universityCourses-planOneCourse.png
Binary files differ
diff --git a/get-involved.php b/get-involved.php
index c1f71a2..603822c 100644
--- a/get-involved.php
+++ b/get-involved.php
@@ -49,7 +49,7 @@
 
 <h2>Contribute code</h2> 
 <ul>
- <li>Check out our codebase from the <a href="http://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git" target="_blank">Git repository</a> at Eclipse.</li>
+ <li>Check out our codebase from the <a href="http://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git" target="_blank">Git repository</a> at Eclipse. Please refer to our instructions for <a href="https://wiki.eclipse.org/Henshin_Committer_Instructions#imports" target="_blank">importing projects and resolving dependencies</a>. </li>
  <li>Ideally, please use <a href="https://git.eclipse.org/r/#/q/status%3Aopen+project%3Ahenshin/org.eclipse.emft.henshin" target="_blank">Gerrit</a> to contribute changes to the codebase. This allows us to apply our quality assurance process to all contributions. In our Wiki, we provide more detailed descriptions for <a href="https://wiki.eclipse.org/Henshin_Committer_Instructions" target="_blank">working with Gerrit</a>.</li>
  <li>Alternatively, you can also submit patches via e-mail -- especially if you want to contribute relatively small changes that do not justify the overhead of setting up Gerrit. In this case, <a href="#get-in-touch">get in touch with us</a>.</li>
 </ul>
@@ -71,7 +71,7 @@
 
 <h2><a name="get-in-touch"></a>Get in touch with us</h2> 
 <ul>
-<li>Do not hesitate to contact us with ideas and improvement suggestions. For establishing a first contact, please send an e-mail to <a href="https://rgse.uni-koblenz.de/web/pages/people/strueber/index_en.shtml">the project lead</a>.</li>
+<li>Do not hesitate to contact us with ideas and improvement suggestions. For establishing a first contact, please send an e-mail to  <a href="mailto:&#100;&#097;&#110;&#115;&#116;&#114;&#117;&#064;&#099;&#104;&#097;&#108;&#109;&#101;&#114;&#115;&#046;&#115;&#101;">the project lead</a> (Daniel Str&uuml;ber).</li>
 </ul>
 
 
diff --git a/index.php b/index.php
index bdb4211..1c42903 100755
--- a/index.php
+++ b/index.php
@@ -1,123 +1,128 @@
-<?php
-require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");
-require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 
-require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 
-
-$App = new App();
-$Nav = new Nav(); 
-$Menu = new Menu();
-
-include($App->getProjectCommon());
-
-#
-# Begin: page-specific settings.  Change these. 
-$pageTitle 	= "Henshin";
-$pageKeywords	= "EMF, Henshin, model transformation, state space analysis";
-$pageAuthor	= "Christian Krause";
-
-# Load project description from a separate file:
-ob_start();
-include 'description.html';
-$description = ob_get_contents();
-ob_end_clean();
-
-# Load project news from a separate file:
-ob_start();
-include 'news.html';
-$news = ob_get_contents();
-ob_end_clean();
-
-# Load screenshots from a separate file:
-ob_start();
-include 'screenshots.html';
-$screenshots = ob_get_contents();
-ob_end_clean();
-
-# Add page-specific Nav bars here
-# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
-# $Nav->addNavSeparator("My Page Links", 	"downloads.php");
-# $Nav->addCustomNav("My Link", "mypage.php", "_self", 3);
-# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 3);
-
-# End: page-specific settings
-#
-		
-# Paste your HTML content between the EOHTML markers!	
-$html = <<<EOHTML
-
-<div id="maincontent">
-
-    <div id="midcolumn">
-	<h1>$pageTitle</h1>
-	<img style="float:right" src="henshin_small.png" alt="" style="border-width:0px"/>
-	
-	$description
-	
-	<div class="homeitem">
-	$news
-	</div>
-	
+<?php
+require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");
+require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 
+require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 
+
+$App = new App();
+$Nav = new Nav(); 
+$Menu = new Menu();
+
+include($App->getProjectCommon());
+
+#
+# Begin: page-specific settings.  Change these. 
+$pageTitle 	= "Henshin";
+$pageKeywords	= "EMF, Henshin, model transformation, state space analysis";
+$pageAuthor	= "Christian Krause";
+
+# Load project description from a separate file:
+ob_start();
+include 'description.html';
+$description = ob_get_contents();
+ob_end_clean();
+
+# Load project news from a separate file:
+ob_start();
+include 'news.html';
+$news = ob_get_contents();
+ob_end_clean();
+
+# Load screenshots from a separate file:
+ob_start();
+include 'screenshots.html';
+$screenshots = ob_get_contents();
+ob_end_clean();
+
+# Add page-specific Nav bars here
+# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
+# $Nav->addNavSeparator("My Page Links", 	"downloads.php");
+# $Nav->addCustomNav("My Link", "mypage.php", "_self", 3);
+# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 3);
+
+# End: page-specific settings
+#
+		
+# Paste your HTML content between the EOHTML markers!	
+$html = <<<EOHTML
+
+<script>
+if(/MSIE \d|Trident.*rv:/.test(navigator.userAgent))
+document.getElementById("novaContent").style.backgroundColor = '#FFFFFF';
+</script> 
+
+<div id="maincontent">
+
+    <div id="midcolumn">
+	<h1>$pageTitle</h1>
+	<img style="float:right" src="henshin_small.png" alt="" style="border-width:0px"/>
+	
+	$description
+	
+	<div class="homeitem">
+	$news
+	</div>
+	
 	$screenshots
-	
-	<!--
-		
-	<div class="homeitem">
-		<h3>Narrow column</h3>
-		<ul>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		</ul>
-	</div>
-		
-	<div class="homeitem">
-		<h3>Narrow column</h3>
-		<ul>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		</ul>
-	</div>
-	
-	<div class="homeitem3col">
-		<h3>This is a wide column</h3>
-		<ul>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
-		</ul>
-	</div>
-	
-	<hr class="clearer" />
-	<p>Some free text</p>
-	<ul class="midlist">
-	<li>list of items in free text</li>
-	<li>list of items in free text</li>
-	<li>list of items in free text</li>
-	</ul>
-	<ol>
-	<li>Ordered list</li>
-	<li>Ordered list</li>
-	<li>Ordered list</li>
-	</ol>
-		
-	-->
-		
-	</div>
-		
-	<div id="rightcolumn">
-	<div class="sideitem">
-		<div class="sideitem">
-		<h6>Incubation</h6>
-		<div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="egg-incubation.png" border="0" alt="Incubation" /></a></div>
-		</div>
-	</div>
-	
-</div>
-
-EOHTML;
-
-# Generate the web page
-$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
-
-?>
+	
+	<!--
+		
+	<div class="homeitem">
+		<h3>Narrow column</h3>
+		<ul>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		</ul>
+	</div>
+		
+	<div class="homeitem">
+		<h3>Narrow column</h3>
+		<ul>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		</ul>
+	</div>
+	
+	<div class="homeitem3col">
+		<h3>This is a wide column</h3>
+		<ul>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		<li><a href="#">Link</a>. Teaser text <a href="#">'Reference'</a><span class="dates">02/05/05</span></li>
+		</ul>
+	</div>
+	
+	<hr class="clearer" />
+	<p>Some free text</p>
+	<ul class="midlist">
+	<li>list of items in free text</li>
+	<li>list of items in free text</li>
+	<li>list of items in free text</li>
+	</ul>
+	<ol>
+	<li>Ordered list</li>
+	<li>Ordered list</li>
+	<li>Ordered list</li>
+	</ol>
+		
+	-->
+		
+	</div>
+		
+	<div id="rightcolumn">
+	<div class="sideitem">
+		<h6>Incubation</h6>
+		<div align="center"><a href="/projects/what-is-incubation.php"><img align="center" src="egg-incubation.png" border="0" width="180" alt="Incubation" /></a></div>
+	</div>
+	</div>
+
+
+</div>
+
+EOHTML;
+
+# Generate the web page
+$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
+
+?>
