diff --git a/Klausuren/Sd1/2018summer/Exam/pom.xml b/Klausuren/Sd1/2018summer/Exam/pom.xml
index 712141cd6f826ab5553b6ac7a7ab9b260b055a27..a84c1e6a1f2c7857e8e6ff68514a5a82e7e2c4f6 100644
--- a/Klausuren/Sd1/2018summer/Exam/pom.xml
+++ b/Klausuren/Sd1/2018summer/Exam/pom.xml
@@ -13,6 +13,14 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+    	<maven.compiler.target>17</maven.compiler.target>
+        <maven.compiler.source>17</maven.compiler.source>
+
+        <freedocs.url>https://freedocs.mi.hdm-stuttgart.de</freedocs.url>
+        <jdk.api_17.url>${freedocs.url}/doc/openjdk-17-doc/api/</jdk.api_17.url>
+        <mathjax.url>${freedocs.url}/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML</mathjax.url>
+        <libhighlight.url>${freedocs.url}/lib/highlight.js</libhighlight.url>
     </properties>
 
     <repositories>
@@ -23,50 +31,44 @@
     </repositories>
 
     <dependencies>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>4.13</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <version>2.16.0</version>
-        </dependency>
-
         <dependency>
             <groupId>de.hdm_stuttgart.mi.exam</groupId>
             <artifactId>unitmarking</artifactId>
-            <version>1.1</version>
+            <version>1.2</version>
         </dependency>
 
     </dependencies>
 
     <build>
         <plugins>
-
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.8.1</version>
-                <configuration>
-                    <source>11</source>
-                    <target>11</target>
-                </configuration>
+                <version>3.10.1</version>
             </plugin>
 
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <version>3.2.0</version>
+		        <artifactId>maven-javadoc-plugin</artifactId>
+		        <version>3.4.1</version>
                 <configuration>
-                    <doclint>none</doclint>
+                    <!-- Tweak: Get rid of Error message
+                      »fetching link: .../target/javadoc-bundle-options. Ignored it«
+                      corresponding to api_11 below -->
+                    <release>11</release>
+                    <doclint>all</doclint>
+                    <show>public</show>
+                    <docfilessubdirs>true</docfilessubdirs>
+                    <addStylesheets>
+                        <stylesheet>resources/jdocSupplement.css</stylesheet>
+                    </addStylesheets>
+
+                    <windowtitle>Exam documentation</windowtitle>
+
                     <javaApiLinks>
                         <property>
                             <name>api_11</name>
-                            <value>https://freedocs.mi.hdm-stuttgart.de/lib/openjdk-11-doc/api/</value>
+                            <value>${jdk.api_17.url}</value>
                         </property>
                     </javaApiLinks>
 
@@ -74,22 +76,21 @@
                         <additionalOption>-html5 --allow-script-in-comments</additionalOption>
                     </additionalOptions>
                     <nohelp>true</nohelp>
+
                     <header><![CDATA[
-            <script type="text/javascript"
-                src="https://freedocs.mi.hdm-stuttgart.de/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/mi/jdocSupplement.css">
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/styles/idea.css">
-            <script src="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/highlight.js"></script>
+            <script type="text/javascript" src="${mathjax.url}"></script>
+            <script type="text/javascript" src="{@docRoot}/resources/jdocSupplement.js"></script>
+            <link rel="stylesheet" href="${libhighlight.url}/styles/idea.css">
+            <script src="${libhighlight.url}/highlight.js"></script>
             <script type="text/javascript">hljs.initHighlightingOnLoad();</script>]]>
                     </header>
-                    <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
                 </configuration>
             </plugin>
 
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-assembly-plugin</artifactId>
-                <version>3.3.0</version>
-
+                <version>3.4.2</version>
                 <configuration>
                     <descriptors>
                         <descriptor>src/main/assembly/assembly.xml</descriptor>
@@ -105,7 +106,7 @@
                         <configuration>
                             <archive>
                                 <manifest>
-                                    <mainClass>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</mainClass>
+                                    <mainClass>de.hdm_stuttgart.mi.sd1.ShowReachedPoints</mainClass>
                                 </manifest>
                             </archive>
                         </configuration>
diff --git a/Klausuren/Sd1/2018summer/Solve/pom.xml b/Klausuren/Sd1/2018summer/Solve/pom.xml
index e87780f55ec253c1af774f69b75bf169a19dc2b8..e925e1c2260117db267b1fa4a057ec9df4b12df7 100644
--- a/Klausuren/Sd1/2018summer/Solve/pom.xml
+++ b/Klausuren/Sd1/2018summer/Solve/pom.xml
@@ -13,6 +13,14 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+    	<maven.compiler.target>17</maven.compiler.target>
+        <maven.compiler.source>17</maven.compiler.source>
+
+        <freedocs.url>https://freedocs.mi.hdm-stuttgart.de</freedocs.url>
+        <jdk.api_17.url>${freedocs.url}/doc/openjdk-17-doc/api/</jdk.api_17.url>
+        <mathjax.url>${freedocs.url}/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML</mathjax.url>
+        <libhighlight.url>${freedocs.url}/lib/highlight.js</libhighlight.url>
     </properties>
 
     <repositories>
@@ -23,50 +31,44 @@
     </repositories>
 
     <dependencies>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>4.13</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <version>2.16.0</version>
-        </dependency>
-
         <dependency>
             <groupId>de.hdm_stuttgart.mi.exam</groupId>
             <artifactId>unitmarking</artifactId>
-            <version>1.1</version>
+            <version>1.2</version>
         </dependency>
 
     </dependencies>
 
     <build>
         <plugins>
-
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.8.1</version>
-                <configuration>
-                    <source>11</source>
-                    <target>11</target>
-                </configuration>
+                <version>3.10.1</version>
             </plugin>
 
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <version>3.2.0</version>
+		        <artifactId>maven-javadoc-plugin</artifactId>
+		        <version>3.4.1</version>
                 <configuration>
-                    <doclint>none</doclint>
+                    <!-- Tweak: Get rid of Error message
+                      »fetching link: .../target/javadoc-bundle-options. Ignored it«
+                      corresponding to api_11 below -->
+                    <release>11</release>
+                    <doclint>all</doclint>
+                    <show>public</show>
+                    <docfilessubdirs>true</docfilessubdirs>
+                    <addStylesheets>
+                        <stylesheet>resources/jdocSupplement.css</stylesheet>
+                    </addStylesheets>
+
+                    <windowtitle>Exam documentation</windowtitle>
+
                     <javaApiLinks>
                         <property>
                             <name>api_11</name>
-                            <value>https://freedocs.mi.hdm-stuttgart.de/lib/openjdk-11-doc/api/</value>
+                            <value>${jdk.api_17.url}</value>
                         </property>
                     </javaApiLinks>
 
@@ -74,22 +76,21 @@
                         <additionalOption>-html5 --allow-script-in-comments</additionalOption>
                     </additionalOptions>
                     <nohelp>true</nohelp>
+
                     <header><![CDATA[
-            <script type="text/javascript"
-                src="https://freedocs.mi.hdm-stuttgart.de/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/mi/jdocSupplement.css">
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/styles/idea.css">
-            <script src="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/highlight.js"></script>
+            <script type="text/javascript" src="${mathjax.url}"></script>
+            <script type="text/javascript" src="{@docRoot}/resources/jdocSupplement.js"></script>
+            <link rel="stylesheet" href="${libhighlight.url}/styles/idea.css">
+            <script src="${libhighlight.url}/highlight.js"></script>
             <script type="text/javascript">hljs.initHighlightingOnLoad();</script>]]>
                     </header>
-                    <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
                 </configuration>
             </plugin>
 
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-assembly-plugin</artifactId>
-                <version>3.3.0</version>
-
+                <version>3.4.2</version>
                 <configuration>
                     <descriptors>
                         <descriptor>src/main/assembly/assembly.xml</descriptor>
@@ -105,7 +106,7 @@
                         <configuration>
                             <archive>
                                 <manifest>
-                                    <mainClass>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</mainClass>
+                                    <mainClass>de.hdm_stuttgart.mi.sd1.ShowReachedPoints</mainClass>
                                 </manifest>
                             </archive>
                         </configuration>
diff --git a/Klausuren/Sd1/2018winter/Exam/pom.xml b/Klausuren/Sd1/2018winter/Exam/pom.xml
index 1e097f797728e5ce2f3ea9c9c81a7a81b653f4e4..f081e36943e1748d6afd395eee731a58876258ed 100644
--- a/Klausuren/Sd1/2018winter/Exam/pom.xml
+++ b/Klausuren/Sd1/2018winter/Exam/pom.xml
@@ -13,6 +13,14 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+    	<maven.compiler.target>17</maven.compiler.target>
+        <maven.compiler.source>17</maven.compiler.source>
+
+        <freedocs.url>https://freedocs.mi.hdm-stuttgart.de</freedocs.url>
+        <jdk.api_17.url>${freedocs.url}/doc/openjdk-17-doc/api/</jdk.api_17.url>
+        <mathjax.url>${freedocs.url}/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML</mathjax.url>
+        <libhighlight.url>${freedocs.url}/lib/highlight.js</libhighlight.url>
     </properties>
 
     <repositories>
@@ -23,50 +31,44 @@
     </repositories>
 
     <dependencies>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>4.13</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <version>2.16.0</version>
-        </dependency>
-
         <dependency>
             <groupId>de.hdm_stuttgart.mi.exam</groupId>
             <artifactId>unitmarking</artifactId>
-            <version>1.1</version>
+            <version>1.2</version>
         </dependency>
 
     </dependencies>
 
     <build>
         <plugins>
-
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.8.1</version>
-                <configuration>
-                    <source>11</source>
-                    <target>11</target>
-                </configuration>
+                <version>3.10.1</version>
             </plugin>
 
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <version>3.2.0</version>
+		        <artifactId>maven-javadoc-plugin</artifactId>
+		        <version>3.4.1</version>
                 <configuration>
-                    <doclint>none</doclint>
+                    <!-- Tweak: Get rid of Error message
+                      »fetching link: .../target/javadoc-bundle-options. Ignored it«
+                      corresponding to api_11 below -->
+                    <release>11</release>
+                    <doclint>all</doclint>
+                    <show>public</show>
+                    <docfilessubdirs>true</docfilessubdirs>
+                    <addStylesheets>
+                        <stylesheet>resources/jdocSupplement.css</stylesheet>
+                    </addStylesheets>
+
+                    <windowtitle>Exam documentation</windowtitle>
+
                     <javaApiLinks>
                         <property>
                             <name>api_11</name>
-                            <value>https://freedocs.mi.hdm-stuttgart.de/lib/openjdk-11-doc/api/</value>
+                            <value>${jdk.api_17.url}</value>
                         </property>
                     </javaApiLinks>
 
@@ -74,22 +76,21 @@
                         <additionalOption>-html5 --allow-script-in-comments</additionalOption>
                     </additionalOptions>
                     <nohelp>true</nohelp>
+
                     <header><![CDATA[
-            <script type="text/javascript"
-                src="https://freedocs.mi.hdm-stuttgart.de/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/mi/jdocSupplement.css">
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/styles/idea.css">
-            <script src="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/highlight.js"></script>
+            <script type="text/javascript" src="${mathjax.url}"></script>
+            <script type="text/javascript" src="{@docRoot}/resources/jdocSupplement.js"></script>
+            <link rel="stylesheet" href="${libhighlight.url}/styles/idea.css">
+            <script src="${libhighlight.url}/highlight.js"></script>
             <script type="text/javascript">hljs.initHighlightingOnLoad();</script>]]>
                     </header>
-                    <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
                 </configuration>
             </plugin>
 
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-assembly-plugin</artifactId>
-                <version>3.3.0</version>
-
+                <version>3.4.2</version>
                 <configuration>
                     <descriptors>
                         <descriptor>src/main/assembly/assembly.xml</descriptor>
@@ -105,7 +106,7 @@
                         <configuration>
                             <archive>
                                 <manifest>
-                                    <mainClass>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</mainClass>
+                                    <mainClass>de.hdm_stuttgart.mi.sd1.ShowReachedPoints</mainClass>
                                 </manifest>
                             </archive>
                         </configuration>
diff --git a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
index b3ff12e509280434b96bdb010817daa5c12d6089..58c6bf471e0ee077b1e037ff478cf6f8f9230390 100644
--- a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
+++ b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
@@ -62,28 +62,29 @@ public class _1_Helper {
   }
 
   /**
-   * <p>Ersetze jedes Leerzeichen <code>' '</code> zur besseren Erkennung durch ein '_'. Beispiel:</p>
+   * <p>Ersetze jedes Leerzeichen <code>' '</code> zur besseren Erkennung durch ein <code>'_'</code>:</p>
    *
-   *<table class="goikTableDefaults">
-   *  <tr>
-   *    <th>Code</th>
-   *    <th>Ergebnis</th>
-   *  </tr>
-   *  <tr>
-   *    <td style="vertical-align:top">
-   *      <pre><code class="java">{@code System.out.println(
-   *      Helper.markiereLeerzeichen(
-   *            "This is  important! "));}</code></pre>
-   *     </td>
-   *     <td style="vertical-align:top">
-   *       <pre>This<span style="color:red;">_</span>is<span
-   *          style="color:red;">__</span>important!<span style="color:red;">_</span></pre>
-   *     </td>
+   * <table class="goikTableDefaults">
+   *   <caption>Leerzeichen zu Unterstrichen</caption>
+   *   <tr>
+   *      <th>Code</th>
+   *      <th>Ergebnis</th>
    *   </tr>
+   *   <tr>
+   *      <td style="vertical-align:top">
+   *        <pre><code class="java"> System.out.println(
+   *           Helper.markiereLeerzeichen(
+   *            "This is  important! "));</code></pre>
+   *       </td>
+   *       <td style="vertical-align:top">
+   *         <pre>This<span style="color:red;">_</span>is<span
+   *            style="color:red;">__</span>important!<span style="color:red;">_</span></pre>
+   *       </td>
+   *    </tr>
    * </table>
    *
    * <section class="implementationHints">
-   *   <h3>Hinweis:</h3>
+   *   <h4>Hinweis:</h4>
    *   <p>{@link String#replace(char, char)}.</p>
    * </section>
    *
diff --git a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
index 0129edafe38865c8aec29db894ad12ce1f12f931..a7d0d426de7c5f9e66a2ea49780506bee3169fbb 100644
--- a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
+++ b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
@@ -6,12 +6,13 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  * <p>Längen- oder Breitenangaben können als (Grad, Winkelminuten, Winkelsekunden) dargestellt werden. Dabei gilt:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Angaben in Grad, Minute und Sekunde</caption>
  *     <tr>
  *         <td style="width: 35em">
  *           <ul>
  *             <li>360° Grad entsprechen einem Vollkreis.</li>
  *             <li>60 Winkelminuten ergeben 1 Grad: 60´ == 1°.</li>
- *             <li>60 Winkelsekunden ergeben eine Winkelminute: 60´´ = 1´.</li>
+ *             <li>60 Winkelsekunden ergeben eine Winkelminute: 60" = 1´.</li>
  *           </ul>
  *         </td>
  *         <td style="width: 30em"><b>Beispiel:</b> Die geographische Breitenangabe von Stuttgart lautet
@@ -20,8 +21,6 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  *     </tr>
  * </table>
  *
- * <p></p>
- *
  * <p>Alternativ gibt es auch eine <em>dezimale</em> Graddarstellung: Diese geht ebenfalls von einem Vollkreis zu 360°
  * aus. Allerdings werden die Minuten- und Sekundenanteile als Dezimalbruch angegeben. Die geographische Breite
  * (<b style="color: red;">48°</b>, <b style="color: green;">46′</b>, <b style="color: blue;">56″</b>) beispielsweise
@@ -35,7 +34,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  *          stuttgartBreite2 = new Geo(48.782222); // Dezimalangabe: Identische Breite bis auf Rundungsfehler</pre>
  *
  * <section class="implementationHints">
- *     <h3>Hinweis:</h3>
+ *     <h2>Hinweis:</h2>
  *
  *     <p>Verwenden Sie als Interndarstellung die Angabe in (Grad, Minuten, Sekunden). Sie müssen dann
  *     für den Konstruktor aus einer dezimalen <code>double</code> Gradangabe im ersten Schritt Werte wie 48.782222 in
@@ -56,6 +55,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  * <p>Instanzen von {@link Geo} werden im Standard wie folgt ausgegeben:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Koordinatendarstellung als (gg°, mm', ss")</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -69,10 +69,11 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  *     </tr>
  * </table>
  *
- * <p>Das Format der Ausgabe kann zur Laufzeit global für alle Instanzen gewechselt werden. Dabei werden für die
- * Dezimaldarstellung genau sechs Nachkommastellen ausgegeben:</p>
+ * <p>Das Format der Ausgabe kann zur Laufzeit global für alle Instanzen zwischen (gg°, mm', ss") und Dezimal
+ *    gewechselt werden. Für die Dezimaldarstellung werden sechs Nachkommastellen ausgegeben:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Wechsel der Darstellung</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -98,6 +99,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  * <p>Instanzen von Geo sollen auf Wertgleichheit geprüft werden können:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Wertgleichheit von {@link Geo} Instanzen</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -122,6 +124,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  * <p>Winkelangaben sollen aufsteigend sortierbar sein:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Sortierung von {@link Geo} instanzen</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -138,8 +141,8 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  *
  * Arrays.sort(breitenAngaben);
  *
- * System.out.println("Breitengrade Stuttgart, Beirut und Atlanta"
- *     + "\naufsteigend sortiert:");
+ * System.out.println("Breitengrade Stuttgart, Beirut und Atlanta\n"
+ *     + "aufsteigend sortiert:");
  *
  * for (final Geo g: breitenAngaben) {
  *   System.out.println(g);
@@ -166,6 +169,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  * time Fehler:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Immutable instance attributes</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Fehlermeldung Compiler</th>
diff --git a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
index 7659baf4617f10fa1a1e3116e31c2c73d2b93fa0..cca4617752f974f3de4c049e7f1a616d30a22cbe 100644
--- a/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
+++ b/Klausuren/Sd1/2018winter/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
@@ -1,10 +1,5 @@
 package de.hdm_stuttgart.mi.sd1.aufgabe2;
 
-
-import de.hdm_stuttgart.mi.sd1.aufgabe2.Geo;
-
-import java.util.Arrays;
-
 /**
  * Diese Klasse dient lediglich als Beispiel zur Verwendung von {@link Geo}.
  *
@@ -13,6 +8,10 @@ import java.util.Arrays;
  */
 public class GeoUsageSample {
 
+  /**
+   * Demo of {@link Geo} usage.
+   * @param args Unused.
+   */
   public static void main(String[] args) {
 
     // TODO: Einkommentieren, sobald de.hdm_stuttgart.mi.sd1.aufgabe2.Geo  implementiert ist.
diff --git a/Klausuren/Sd1/2018winter/Solve/Readme.md b/Klausuren/Sd1/2018winter/Solve/Readme.md
index 487839fab4f47665ec1258c228da54d4370e46cd..2491ba2c5c1e97327699bcf70cfd7dfde6753d56 100644
--- a/Klausuren/Sd1/2018winter/Solve/Readme.md
+++ b/Klausuren/Sd1/2018winter/Solve/Readme.md
@@ -5,3 +5,7 @@ mvn compile test-compile
 mvn -Dmaven.test.skip=true package
 java -jar target/sd1_2018winter_solve-0.9-fat-tests.jar
 ```
+
+See [generatated API docs]().
+
+
diff --git a/Klausuren/Sd1/2018winter/Solve/pom.xml b/Klausuren/Sd1/2018winter/Solve/pom.xml
index df7c7bdd7a6102ed13a1c21df548925362bdd515..25ecf28bbb15bc2a337de0866671cd44dea94875 100644
--- a/Klausuren/Sd1/2018winter/Solve/pom.xml
+++ b/Klausuren/Sd1/2018winter/Solve/pom.xml
@@ -13,6 +13,14 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+    	<maven.compiler.target>17</maven.compiler.target>
+        <maven.compiler.source>17</maven.compiler.source>
+
+        <freedocs.url>https://freedocs.mi.hdm-stuttgart.de</freedocs.url>
+        <jdk.api_17.url>${freedocs.url}/doc/openjdk-17-doc/api/</jdk.api_17.url>
+        <mathjax.url>${freedocs.url}/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML</mathjax.url>
+        <libhighlight.url>${freedocs.url}/lib/highlight.js</libhighlight.url>
     </properties>
 
     <repositories>
@@ -23,50 +31,44 @@
     </repositories>
 
     <dependencies>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <version>4.13</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <version>2.16.0</version>
-        </dependency>
-
         <dependency>
             <groupId>de.hdm_stuttgart.mi.exam</groupId>
             <artifactId>unitmarking</artifactId>
-            <version>1.1</version>
+            <version>1.2</version>
         </dependency>
 
     </dependencies>
 
     <build>
         <plugins>
-
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.8.1</version>
-                <configuration>
-                    <source>11</source>
-                    <target>11</target>
-                </configuration>
+                <version>3.10.1</version>
             </plugin>
 
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <version>3.2.0</version>
+		        <artifactId>maven-javadoc-plugin</artifactId>
+		        <version>3.4.1</version>
                 <configuration>
-                    <doclint>none</doclint>
+                    <!-- Tweak: Get rid of Error message
+                      »fetching link: .../target/javadoc-bundle-options. Ignored it«
+                      corresponding to api_11 below -->
+                    <release>11</release>
+                    <doclint>all</doclint>
+                    <show>public</show>
+                    <docfilessubdirs>true</docfilessubdirs>
+                    <addStylesheets>
+                        <stylesheet>resources/jdocSupplement.css</stylesheet>
+                    </addStylesheets>
+
+                    <windowtitle>Exam documentation</windowtitle>
+
                     <javaApiLinks>
                         <property>
                             <name>api_11</name>
-                            <value>https://freedocs.mi.hdm-stuttgart.de/lib/openjdk-11-doc/api/</value>
+                            <value>${jdk.api_17.url}</value>
                         </property>
                     </javaApiLinks>
 
@@ -74,22 +76,21 @@
                         <additionalOption>-html5 --allow-script-in-comments</additionalOption>
                     </additionalOptions>
                     <nohelp>true</nohelp>
+
                     <header><![CDATA[
-            <script type="text/javascript"
-                src="https://freedocs.mi.hdm-stuttgart.de/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/mi/jdocSupplement.css">
-            <link rel="stylesheet" href="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/styles/idea.css">
-            <script src="https://freedocs.mi.hdm-stuttgart.de/lib/highlight.js/highlight.js"></script>
+            <script type="text/javascript" src="${mathjax.url}"></script>
+            <script type="text/javascript" src="{@docRoot}/resources/jdocSupplement.js"></script>
+            <link rel="stylesheet" href="${libhighlight.url}/styles/idea.css">
+            <script src="${libhighlight.url}/highlight.js"></script>
             <script type="text/javascript">hljs.initHighlightingOnLoad();</script>]]>
                     </header>
-                    <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
                 </configuration>
             </plugin>
 
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-assembly-plugin</artifactId>
-                <version>3.3.0</version>
-
+                <version>3.4.2</version>
                 <configuration>
                     <descriptors>
                         <descriptor>src/main/assembly/assembly.xml</descriptor>
@@ -105,7 +106,7 @@
                         <configuration>
                             <archive>
                                 <manifest>
-                                    <mainClass>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</mainClass>
+                                    <mainClass>de.hdm_stuttgart.mi.sd1.ShowReachedPoints</mainClass>
                                 </manifest>
                             </archive>
                         </configuration>
diff --git a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
index 2b58204f28bdfc66235dca204caa82c35ef439c2..2636da43579669761adf69cfe98a8b9090877055 100644
--- a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
+++ b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_Helper.java
@@ -67,28 +67,29 @@ public class _1_Helper {
   }
 
   /**
-   * <p>Ersetze jedes Leerzeichen <code>' '</code> zur besseren Erkennung durch ein '_'. Beispiel:</p>
+   * <p>Ersetze jedes Leerzeichen <code>' '</code> zur besseren Erkennung durch ein <code>'_'</code>:</p>
    *
-   *<table class="goikTableDefaults">
-   *  <tr>
-   *    <th>Code</th>
-   *    <th>Ergebnis</th>
-   *  </tr>
-   *  <tr>
-   *    <td style="vertical-align:top">
-   *      <pre><code class="java">{@code System.out.println(
-   *      Helper.markiereLeerzeichen(
-   *            "This is  important! "));}</code></pre>
-   *     </td>
-   *     <td style="vertical-align:top">
-   *       <pre>This<span style="color:red;">_</span>is<span
-   *          style="color:red;">__</span>important!<span style="color:red;">_</span></pre>
-   *     </td>
+   * <table class="goikTableDefaults">
+   *   <caption>Leerzeichen zu Unterstrichen</caption>
+   *   <tr>
+   *      <th>Code</th>
+   *      <th>Ergebnis</th>
    *   </tr>
+   *   <tr>
+   *      <td style="vertical-align:top">
+   *        <pre><code class="java"> System.out.println(
+   *           Helper.markiereLeerzeichen(
+   *            "This is  important! "));</code></pre>
+   *       </td>
+   *       <td style="vertical-align:top">
+   *         <pre>This<span style="color:red;">_</span>is<span
+   *            style="color:red;">__</span>important!<span style="color:red;">_</span></pre>
+   *       </td>
+   *    </tr>
    * </table>
    *
    * <section class="implementationHints">
-   *   <h3>Hinweis:</h3>
+   *   <h4>Hinweis:</h4>
    *   <p>{@link String#replace(char, char)}.</p>
    * </section>
    *
diff --git a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
index 224010bc613801713b6f5227f0b1d37b83018cdf..d1541fde0fea3f0cbf8059f77278683d9d52e1e7 100644
--- a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
+++ b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Geo.java
@@ -8,12 +8,13 @@ import java.text.DecimalFormat;
  * <p>Längen- oder Breitenangaben können als (Grad, Winkelminuten, Winkelsekunden) dargestellt werden. Dabei gilt:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Angaben in Grad, Minute und Sekunde</caption>
  *     <tr>
  *         <td style="width: 35em">
  *           <ul>
  *             <li>360° Grad entsprechen einem Vollkreis.</li>
  *             <li>60 Winkelminuten ergeben 1 Grad: 60´ == 1°.</li>
- *             <li>60 Winkelsekunden ergeben eine Winkelminute: 60´´ = 1´.</li>
+ *             <li>60 Winkelsekunden ergeben eine Winkelminute: 60" = 1´.</li>
  *           </ul>
  *         </td>
  *         <td style="width: 30em"><b>Beispiel:</b> Die geographische Breitenangabe von Stuttgart lautet
@@ -22,8 +23,6 @@ import java.text.DecimalFormat;
  *     </tr>
  * </table>
  *
- * <p></p>
- *
  * <p>Alternativ gibt es auch eine <em>dezimale</em> Graddarstellung: Diese geht ebenfalls von einem Vollkreis zu 360°
  * aus. Allerdings werden die Minuten- und Sekundenanteile als Dezimalbruch angegeben. Die geographische Breite
  * (<b style="color: red;">48°</b>, <b style="color: green;">46′</b>, <b style="color: blue;">56″</b>) beispielsweise
@@ -49,6 +48,7 @@ import java.text.DecimalFormat;
  * <p>Instanzen von {@link Geo} werden im Standard wie folgt ausgegeben:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Koordinatendarstellung als (gg°, mm', ss")</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -62,10 +62,11 @@ import java.text.DecimalFormat;
  *     </tr>
  * </table>
  *
- * <p>Das Format der Ausgabe kann zur Laufzeit global für alle Instanzen gewechselt werden. Dabei werden für die
- * Dezimaldarstellung genau sechs Nachkommastellen ausgegeben:</p>
+ * <p>Das Format der Ausgabe kann zur Laufzeit global für alle Instanzen zwischen (gg°, mm', ss") und Dezimal
+ *    gewechselt werden. Für die Dezimaldarstellung werden sechs Nachkommastellen ausgegeben:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Wechsel der Darstellung</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -83,6 +84,7 @@ import java.text.DecimalFormat;
  * <p>Instanzen von Geo sollen auf Wertgleichheit geprüft werden können:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Wertgleichheit von {@link Geo} Instanzen</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -107,6 +109,7 @@ import java.text.DecimalFormat;
  * <p>Winkelangaben sollen aufsteigend sortierbar sein:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Sortierung von {@link Geo} instanzen</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Ausgabe</th>
@@ -123,8 +126,8 @@ import java.text.DecimalFormat;
  *
  * Arrays.sort(breitenAngaben);
  *
- * System.out.println("Breitengrade Stuttgart, Beirut und Atlanta"
- *     + "\naufsteigend sortiert:");
+ * System.out.println("Breitengrade Stuttgart, Beirut und Atlanta\n"
+ *     + "aufsteigend sortiert:");
  *
  * for (final Geo g: breitenAngaben) {
  *   System.out.println(g);
@@ -144,6 +147,7 @@ import java.text.DecimalFormat;
  * time Fehler:</p>
  *
  * <table class="goikTableDefaults">
+ *     <caption>Immutable instance attributes</caption>
  *     <tr>
  *         <th>Code</th>
  *         <th>Fehlermeldung Compiler</th>
@@ -225,6 +229,10 @@ public class Geo implements Comparable<Geo> {
     this.sekunden = (int) Math.round(sekunden);
   }
 
+  /**
+   * Get decimal representation
+   * @return The decimal longitude/latitude value.
+   */
   public double getDezimal() {
     return grad + (minuten + sekunden / 60.) / 60;
   }
diff --git a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
index 36bb140a8791ae6cf95edb088deb23fcd178f4e7..8f35c6ee3b4e8740ff71eb444e9e51aacd0488c3 100644
--- a/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
+++ b/Klausuren/Sd1/2018winter/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/GeoUsageSample.java
@@ -1,6 +1,5 @@
 package de.hdm_stuttgart.mi.sd1.aufgabe2;
 
-
 import java.util.Arrays;
 
 /**
@@ -11,6 +10,10 @@ import java.util.Arrays;
  */
 public class GeoUsageSample {
 
+  /**
+   * Demo of {@link Geo} usage.
+   * @param args Unused.
+   */
   public static void main(String[] args) {
 
     final Geo stuttgartBreite = new Geo(48, 46, 56);