changeset 9439:ce0a48b93f4b

bundu jUnit test first attempt
author gernotbelger
date Mon, 20 Aug 2018 16:57:25 +0200
parents d2f5375ede26
children e991c4cec0d0
files gwt-client/src/test/java/test/AbstractModuleRunner.java gwt-client/src/test/java/test/bundu/BunduBerechnungsartenTester.java gwt-client/src/test/java/test/bundu/BunduBezugswstRunner.java gwt-client/src/test/java/test/bundu/Segment.java gwt-client/src/test/java/test/uinfo/UinfoSalixHistoricalRunner.java gwt-client/src/test/java/test/uinfo/UinfoSalixRegionalRunner.java gwt-client/src/test/java/test/uinfo/UinfoSalixRunner.java gwt-client/src/test/java/test/uinfo/UinfoSalixSupraregionalRunner.java gwt-client/src/test/resources/bundu/bezugswst/bezugswst.csv
diffstat 9 files changed, 732 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/gwt-client/src/test/java/test/AbstractModuleRunner.java	Mon Aug 20 16:05:06 2018 +0200
+++ b/gwt-client/src/test/java/test/AbstractModuleRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -318,13 +318,15 @@
 
     protected final void makeKmRange(final double from, final double to, final String from_key, final String to_key)
             throws ConnectionException, ServerException {
-        final String fromStr = String.valueOf(from);
-        final String toStr = String.valueOf(to);
+        feedAndGo(makeFromToData(from_key, to_key), 0);
+    }
+
+    protected final Data[] makeFromToData(final String from_key, final String to_key) {
+        final String fromStr = String.valueOf(this.from);
+        final String toStr = String.valueOf(this.to);
         final Data dataFrom = new StringOptionsData(from_key, from_key, new DataItem[] { new DefaultDataItem(fromStr, fromStr, fromStr) });
         final Data dataTo = new StringOptionsData(to_key, to_key, new DataItem[] { new DefaultDataItem(toStr, toStr, toStr) });
-        final Data[] rangeFromToDetermined = new Data[] { dataFrom, dataTo };
-
-        feedAndGo(rangeFromToDetermined, 0);
+        return new Data[] { dataFrom, dataTo };
     }
 
     protected final void selectRiver() throws ConnectionException, ServerException {
@@ -354,9 +356,25 @@
         return rec1.getRecommendationPairString(rec2, getCollection(), this.serverUrl, this.locale);
     }
 
-    protected final void feedSimpleTextInput(final String key, final String value) throws ConnectionException, ServerException {
-        final Data data = new StringOptionsData(key, key, new DataItem[] { new DefaultDataItem(value, value, value) });
-        feedAndGo(new Data[] { data }, 0);
+    protected final void feedAndGoData(final Data[] data) throws ConnectionException, ServerException {
+        feedAndGo(data, 0);
+    }
+
+    protected final void feedAndGoSimpleTextInput(final String key, final String value) throws ConnectionException, ServerException {
+        feedAndGo(new Data[] { getSimpleTextInput(key, value) }, 0);
+    }
+
+    protected Data getSimpleTextInput(final String key, final String value) throws ConnectionException, ServerException {
+        return new StringOptionsData(key, key, new DataItem[] { new DefaultDataItem(value, value, value) });
+    }
+
+    protected final Data[] addItemToExistingData(final Data[] existing, final Data add) {
+        final Data[] data = new Data[existing.length + 1];
+        for (int i = 0; i < existing.length; i++) {
+            data[i] = existing[i];
+        }
+        data[existing.length] = add;
+        return data;
     }
 
 }
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gwt-client/src/test/java/test/bundu/BunduBerechnungsartenTester.java	Mon Aug 20 16:57:25 2018 +0200
@@ -0,0 +1,63 @@
+package test.bundu;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.dive4elements.river.client.shared.exceptions.ServerException;
+import org.junit.Test;
+
+import test.AbstractBerechnungsartenTester;
+import test.ICalcMode;
+import test.IFilenameMapper;
+
+//@Ignore
+public class BunduBerechnungsartenTester extends AbstractBerechnungsartenTester {
+
+    public static enum CalcMode implements ICalcMode {
+        bundu_bezugswst, //
+        // der Vollständigkeit halber
+        bundu_analysis, bundu_vollmer
+    };
+
+    public static enum FilenameMapper implements IFilenameMapper {
+        BEZUGSWST_FILE("/bundu/bezugswst/bezugswst.csv"); //
+        private final String filename;
+
+        FilenameMapper(final String filename) {
+            this.filename = filename;
+        }
+
+        @Override
+        public String getFilename() {
+            return this.filename;
+        }
+    }
+
+    // FixChoice
+    // "state.bundu.wst.fix.auto"
+    // state.bundu.wst.fix.manual;
+
+    // CalcChoice:
+    // state.bundu.wst.calc.manual
+    // state.bundu.wst.calc.auto
+
+    // SOUNDINGS: SIehe ParameterMatrixPanel.getData
+
+    @Test
+    public void testBezugswstAuto() throws ServerException, IOException {
+        final List<Segment> segments = new ArrayList<Segment>();
+        segments.add(new Segment("Köln", 670., 703.3, 1090.));
+        segments.add(new Segment("Düsseldorf", 703.3, 710., 1060.));
+
+        final int abflussklasseFrom = 0;
+        final int abflussklasseTo = 3; // TODO: Make map here
+
+        final int[] events = new int[] { 1465, 1466, 1452, 1453, 1472, 1473, 1478, 1479, 1604, 1605, 1317, 1318, 1353, 1354, 1596, 1597, 1323, 1324, 1345, 1346,
+                1330, 1331, 1458, 1459 }; // get ids by debugging FixCalculation line 73 (constructor)
+
+        new BunduBezugswstRunner(FilenameMapper.BEZUGSWST_FILE, 670., 710., 100, River.Rhein, 2015, "state.bundu.wst.fix.auto", abflussklasseFrom,
+                abflussklasseTo, events, 10, segments, "state.bundu.wst.calc.auto", false, "single-95")
+                        .runTest(overrideFileExport() != null ? overrideFileExport() : true);
+    }
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gwt-client/src/test/java/test/bundu/BunduBezugswstRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -0,0 +1,136 @@
+/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
+ * Software engineering by
+ *  Björnsen Beratende Ingenieure GmbH
+ *  Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
+ *
+ * This file is Free Software under the GNU AGPL (>=v3)
+ * and comes with ABSOLUTELY NO WARRANTY! Check out the
+ * documentation coming with Dive4Elements River for details.
+ */
+package test.bundu;
+
+import java.io.IOException;
+import java.util.List;
+
+import org.dive4elements.artifacts.httpclient.exceptions.ConnectionException;
+import org.dive4elements.river.client.shared.exceptions.ServerException;
+import org.dive4elements.river.client.shared.model.Data;
+import org.dive4elements.river.client.shared.model.DataItem;
+import org.dive4elements.river.client.shared.model.DefaultDataItem;
+import org.dive4elements.river.client.shared.model.IntDataItem;
+import org.dive4elements.river.client.shared.model.IntegerArrayData;
+import org.dive4elements.river.client.shared.model.StringOptionsData;
+
+import test.AbstractBerechnungsartenTester.River;
+import test.AbstractModuleRunner;
+import test.IFilenameMapper;
+
+/**
+ * @author Domenico Nardi Tironi
+ *
+ */
+class BunduBezugswstRunner extends AbstractModuleRunner {
+
+    private final String fixationChoice;
+    private final int bezugsjahr;
+    private final int years_length;
+
+    private final boolean fehlvolumina;
+    private final String sounding;
+
+    private final String calcChoice;
+    private final double step;
+    private final List<Segment> segments;
+    private final int qSectorStart;
+    private final int qSectorEnd;
+    private final int[] events;
+
+    public BunduBezugswstRunner(final IFilenameMapper file, final double from, final double to, final double step, final River river, final int bezugsjahr,
+            final String fixationChoice, final int gaugeRangeQsectorStart_q1, final int gaugeRangeQsectorEnd_q2, final int[] events, final int years_length,
+            final List<Segment> segments, final String calcChoice, final boolean fehlvolumina, final String sounding)
+            throws ConnectionException, ServerException {
+        super(AbstractModuleRunner.Infotype.bundu, test.bundu.BunduBerechnungsartenTester.CalcMode.bundu_bezugswst, file, from, to, river);
+        this.fixationChoice = fixationChoice;
+        this.qSectorStart = gaugeRangeQsectorStart_q1;
+        this.qSectorEnd = gaugeRangeQsectorEnd_q2;
+        this.bezugsjahr = bezugsjahr;
+        this.years_length = years_length;
+        this.fehlvolumina = fehlvolumina;
+        this.sounding = sounding;
+        this.calcChoice = calcChoice;
+        this.step = step;
+        this.segments = segments;
+        this.events = events;
+    }
+
+    @Override
+    public void runTest(final boolean exportToFile) throws ServerException, IOException {
+        /* Select River */
+        super.selectRiver();
+
+        /* Select ICalcMode */
+        super.selectCalcMode();
+
+        /* Select Range with step */
+        final Data[] temp = super.makeFromToData("ld_from", "ld_to");
+        final String stepStr = String.valueOf(this.step);
+        final Data[] data = super.addItemToExistingData(temp,
+                new StringOptionsData("ld_step", "ld_step", new DataItem[] { new DefaultDataItem(stepStr, stepStr, stepStr) }));
+
+        super.feedAndGo(data, 0);
+
+        /* bezugsjahr */
+        final String bezugsjahr = String.valueOf(this.bezugsjahr);
+        super.feedAndGoSimpleTextInput("singleyear", bezugsjahr);
+
+        /* fixierungsauswahl - auto oder manuell */
+        // AUTO: 0, 3
+        final Data q1 = super.getSimpleTextInput("q1", String.valueOf(this.qSectorStart));
+        final Data q2 = super.getSimpleTextInput("q2", String.valueOf(this.qSectorEnd));
+        final Data fixChoice = super.getSimpleTextInput("fix_choice", this.fixationChoice);
+
+        final IntDataItem[] arr = new IntDataItem[this.events.length];
+        for (int i = 0; i < this.events.length; i++) {
+            arr[i] = new IntDataItem("id", "id", this.events[i]);
+        }
+        final IntegerArrayData iad = new IntegerArrayData("events", "events", arr);
+
+        super.feedAndGo(new Data[] { q1, q2, iad, fixChoice }, 0);
+
+        // TODO: Automatische ereignisauswahl + Wahl der Abflussklassen im Hintergrund
+
+        /* Länge der Abflusszeitreihe */
+        super.feedAndGoSimpleTextInput("year_input_q_series", String.valueOf(this.years_length));
+
+        /* (W)Q-Input / UD Input */
+
+        final Data[] wqData = Segment.getDataforFeed("wq_values", this.segments);
+        final Data[] wqAndMode = super.addItemToExistingData(wqData,
+                new StringOptionsData("bundu.wst.mode", "bundu.wst.mode", new DataItem[] { new DefaultDataItem("Q", "Q", "Q") }));
+
+        super.feedAndGo(wqAndMode, //
+                0);// reachable state index
+
+        /* calc_choice */
+        final Data preprocessingData = super.getSimpleTextInput("preprocessing", "false");
+        final Data functionData = super.getSimpleTextInput("function", "log");
+        final Data calcChoice = super.getSimpleTextInput("calc_choice", this.calcChoice);
+        super.feedAndGoData(new Data[] { preprocessingData, functionData, calcChoice });
+
+        // TODO: automaitische Wahl der Berechnungsgrundlagen + Ausreißer (preprocessing)
+
+        /* missing_volume */
+        super.feedAndGoSimpleTextInput("missing_volume", String.valueOf(this.fehlvolumina));
+
+        // TODO: Strecke der FehlVolumina machen
+
+        /* Wahl der Peilungen */
+
+        super.feedAndGoSimpleTextInput("soundings", this.sounding);
+
+        describeCollection();
+
+        super.export(exportToFile);
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gwt-client/src/test/java/test/bundu/Segment.java	Mon Aug 20 16:57:25 2018 +0200
@@ -0,0 +1,73 @@
+/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
+ * Software engineering by
+ *  Björnsen Beratende Ingenieure GmbH
+ *  Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
+ *
+ * This file is Free Software under the GNU AGPL (>=v3)
+ * and comes with ABSOLUTELY NO WARRANTY! Check out the
+ * documentation coming with Dive4Elements River for details.
+ */
+package test.bundu;
+
+import java.util.List;
+
+import org.dive4elements.river.client.shared.model.Data;
+import org.dive4elements.river.client.shared.model.DataItem;
+import org.dive4elements.river.client.shared.model.DefaultData;
+import org.dive4elements.river.client.shared.model.DefaultDataItem;
+
+/**
+ * @author Domenico Nardi Tironi
+ *
+ */
+public class Segment {
+
+    private final String gaugeName;
+    private final String fromKm;
+    private final String toKm;
+    private final String qValue;
+
+    private static final String SEPARATOR = ";";
+    private static final String GAUGE_SEPARATOR = ":";
+
+    public Segment(final String gaugeName, final double fromKm, final double toKm, final double qValue) {
+        this.gaugeName = gaugeName;
+        this.fromKm = String.valueOf(fromKm);
+        this.toKm = String.valueOf(toKm);
+        this.qValue = String.valueOf(qValue);
+    }
+
+    private static String getSegmentString(final List<Segment> segments) {
+
+        // 703.3;710.0;Düsseldorf;5930.0:670.0;703.3;Köln;5822.0 (PRoblem: diese sachen werden auf Server-Seite gemacht. Ich
+        // möchte ungern die pegelweise From-To-Ermittlung im Client nachbauen, daher verlange ich fertige Segments.
+        final StringBuilder builder = new StringBuilder();
+        for (int i = 0; i < segments.size(); i++) {
+            final Segment s = segments.get(i);
+            if (i > 0)
+                builder.append(GAUGE_SEPARATOR);
+            builder.append(s.fromKm).append(SEPARATOR).append(s.toKm).append(SEPARATOR).append(s.gaugeName).append(SEPARATOR).append(s.qValue);
+        }
+        return builder.toString();
+    }
+
+    public static Data[] getDataforFeed(final String dataName, final List<Segment> segments) {
+
+        final String wspl = getSegmentString(segments);
+
+        final DataItem wsplItem = new DefaultDataItem(dataName, dataName, wspl);
+
+        return new Data[] {
+
+                new DefaultData("wq_isq", null, null, new DataItem[] { new DefaultDataItem("wq_isq", "wq_isq", "true") }),
+                new DefaultData("wq_isfree", null, null, new DataItem[] { new DefaultDataItem("wq_isfree", "wq_isfree", "false") }),
+                new DefaultData("wq_isrange", null, null, new DataItem[] { new DefaultDataItem("wq_isrange", "wq_isrange", "false") }),
+                new DefaultData("wq_from", null, null, new DataItem[] { new DefaultDataItem("wq_from", "wq_from", "") }),
+                new DefaultData("wq_to", null, null, new DataItem[] { new DefaultDataItem("wq_to", "wq_to", "") }),
+                new DefaultData("wq_step", null, null, new DataItem[] { new DefaultDataItem("wq_step", "wq_step", "") }),
+
+                new DefaultData(dataName, null, null, new DataItem[] { wsplItem }) };
+
+    }
+
+}
--- a/gwt-client/src/test/java/test/uinfo/UinfoSalixHistoricalRunner.java	Mon Aug 20 16:05:06 2018 +0200
+++ b/gwt-client/src/test/java/test/uinfo/UinfoSalixHistoricalRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -35,9 +35,9 @@
 
     @Override
     protected void makeScenario() throws ConnectionException, ServerException {
-        super.feedSimpleTextInput("scenario_selection", this.getScenarioChoice());
+        super.feedAndGoSimpleTextInput("scenario_selection", this.getScenarioChoice());
 
-        super.feedSimpleTextInput("soundings", this.soundingName);
+        super.feedAndGoSimpleTextInput("soundings", this.soundingName);
 
         super.makeKmRange(this.fromPart, this.toPart, "ld_from_part", "ld_to_part");
 
--- a/gwt-client/src/test/java/test/uinfo/UinfoSalixRegionalRunner.java	Mon Aug 20 16:05:06 2018 +0200
+++ b/gwt-client/src/test/java/test/uinfo/UinfoSalixRegionalRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -35,11 +35,11 @@
 
     @Override
     protected void makeScenario() throws ConnectionException, ServerException {
-        super.feedSimpleTextInput("scenario_selection", this.getScenarioChoice());
+        super.feedAndGoSimpleTextInput("scenario_selection", this.getScenarioChoice());
 
         super.makeKmRange(this.fromPart, this.toPart, "ld_from_part", "ld_to_part");
 
-        super.feedSimpleTextInput("sedimentheight", this.dwspl);
+        super.feedAndGoSimpleTextInput("sedimentheight", this.dwspl);
 
     }
 
--- a/gwt-client/src/test/java/test/uinfo/UinfoSalixRunner.java	Mon Aug 20 16:05:06 2018 +0200
+++ b/gwt-client/src/test/java/test/uinfo/UinfoSalixRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -57,7 +57,7 @@
         final String key = "use_scenario";
         final String value = String.valueOf(this.isUseScenario);
 
-        super.feedSimpleTextInput(key, value);
+        super.feedAndGoSimpleTextInput(key, value);
 
         if (this.isUseScenario) {
             // TODO: make regional, supraregional, historical
--- a/gwt-client/src/test/java/test/uinfo/UinfoSalixSupraregionalRunner.java	Mon Aug 20 16:05:06 2018 +0200
+++ b/gwt-client/src/test/java/test/uinfo/UinfoSalixSupraregionalRunner.java	Mon Aug 20 16:57:25 2018 +0200
@@ -34,9 +34,9 @@
 
     @Override
     protected void makeScenario() throws ConnectionException, ServerException {
-        super.feedSimpleTextInput("scenario_selection", this.getScenarioChoice());
+        super.feedAndGoSimpleTextInput("scenario_selection", this.getScenarioChoice());
 
-        super.feedSimpleTextInput("supraregional_table", SalixZone.parseListToDataString(this.supraregionalTable));
+        super.feedAndGoSimpleTextInput("supraregional_table", SalixZone.parseListToDataString(this.supraregionalTable));
 
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gwt-client/src/test/resources/bundu/bezugswst/bezugswst.csv	Mon Aug 20 16:57:25 2018 +0200
@@ -0,0 +1,427 @@
+"##Ergebnisausgabe - Rhein - Bezugswasserstände"
+"# FLYS-Version: 3.3.0"
+"# Bearbeiter: belger"
+"# Datum der Erstellung: 20.08.18"
+"# Gewässer: Rhein"
+"# Höhensystem des Flusses: Wasssers[NN "
+"# Bereich (km): 670,000 - 710,000"
+""
+"Titel: Übersicht";;;;;
+"Fluss-km";"Bezugswasserstand [Wasssers[NN]";"Q [m³/s]";"Bezeichnung";"Bezugspegel";"Lage"
+""
+"##METADATEN WASSERSPIEGELLAGE"
+"# Bezeichnung der Wasserspiegellage: Q benutzerdefiniert (1060.0; 1090.0) "
+"# Bezugspegel: Köln"
+""
+"##METADATEN PEILUNG"
+"# Jahr der Peilung: 2010"
+"# Aufnahmeart: Querprofile"
+"# Auswerter: WSA Duisburg (Abel)"
+"# Lagesystem: LS unbekannt"
+"# Höhensystem: müNHN "
+"# ursprüngliches Höhensystem: müNHN"
+"# Ausgleichsfunktion: log"
+"# Ausreißertest: Ja"
+"# Zeitraum der Abflusszeitreihe: 1975 - 2014"
+""
+"670,000";"40,87";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,100";"40,85";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,200";"40,83";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,300";"40,81";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,400";"40,79";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,500";"40,77";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,600";"40,75";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,700";"40,73";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,800";"40,71";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"670,900";"40,69";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,000";"40,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,100";"40,64";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,200";"40,62";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,300";"40,59";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,400";"40,57";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,500";"40,53";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,600";"40,51";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,700";"40,48";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,800";"40,46";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"671,900";"40,44";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,000";"40,42";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,100";"40,40";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,200";"40,38";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,300";"40,35";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,400";"40,33";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,500";"40,31";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,600";"40,29";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,700";"40,26";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,800";"40,23";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"672,900";"40,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,000";"40,18";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,100";"40,15";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,200";"40,12";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,300";"40,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,400";"40,05";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,500";"40,03";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,600";"40,00";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,700";"39,98";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,800";"39,95";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"673,900";"39,92";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,000";"39,89";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,100";"39,87";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,200";"39,84";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,300";"39,81";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,400";"39,79";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,500";"39,77";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,600";"39,75";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,700";"39,73";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,800";"39,71";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"674,900";"39,68";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,000";"39,66";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,100";"39,64";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,200";"39,62";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,300";"39,59";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,400";"39,57";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,500";"39,55";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,600";"39,52";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,700";"39,50";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,800";"39,47";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"675,900";"39,45";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,000";"39,42";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,100";"39,40";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,200";"39,37";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,300";"39,35";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,400";"39,33";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,500";"39,31";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,600";"39,30";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,700";"39,28";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Fähre: Köln-Porz"
+"676,800";"39,27";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"676,900";"39,25";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,000";"39,22";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,100";"39,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,200";"39,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,300";"39,17";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,400";"39,15";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,500";"39,13";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,600";"39,11";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,700";"39,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,800";"39,07";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"677,900";"39,05";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,000";"39,02";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,100";"39,00";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,200";"38,97";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,300";"38,95";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,400";"38,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,500";"38,90";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,600";"38,88";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,700";"38,86";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,800";"38,83";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"678,900";"38,81";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,000";"38,79";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,100";"38,76";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,200";"38,74";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,300";"38,71";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,400";"38,69";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,500";"38,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,600";"38,65";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,700";"38,63";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,800";"38,61";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"679,900";"38,58";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,000";"38,55";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,100";"38,48";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,200";"38,48";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,300";"38,46";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,400";"38,43";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,500";"38,41";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,600";"38,39";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,700";"38,36";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,800";"38,34";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"680,900";"38,31";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,000";"38,28";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,100";"38,25";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,200";"38,22";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,300";"38,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Schwebstoffmessstelle: Porz"
+"681,400";"38,16";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,500";"38,13";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,600";"38,11";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,700";"38,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,800";"38,06";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"681,900";"38,03";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,000";"37,99";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,100";"37,96";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,200";"37,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,300";"37,90";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,400";"37,87";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,500";"37,84";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,600";"37,81";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,700";"37,78";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,800";"37,76";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"682,900";"37,73";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,000";"37,70";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,100";"37,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,200";"37,64";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,300";"37,61";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,400";"37,59";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,500";"37,56";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,600";"37,53";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,700";"37,50";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,800";"37,47";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"683,900";"37,44";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,000";"37,41";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,100";"37,38";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,200";"37,36";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,300";"37,33";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,400";"37,31";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,500";"37,28";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,600";"37,25";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,700";"37,26";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,800";"37,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"684,900";"37,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,000";"37,16";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,100";"37,14";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,200";"37,11";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,300";"37,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,400";"37,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,500";"37,07";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,600";"37,02";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,700";"37,00";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,800";"36,97";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"685,900";"36,95";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,000";"36,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,100";"36,91";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,200";"36,88";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,300";"36,86";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,400";"36,84";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,500";"36,82";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,600";"36,81";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,700";"36,79";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,800";"36,79";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"686,900";"36,77";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,000";"36,73";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,100";"36,71";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,200";"36,68";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,300";"36,69";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Hafen: Köln-Deutz -Schutzhafen"
+"687,400";"36,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,500";"36,66";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,600";"36,65";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,700";"36,63";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,800";"36,61";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"687,900";"36,60";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,000";"36,56";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Pegel: Köln"
+"688,100";"36,55";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,200";"36,53";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,300";"36,52";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,400";"36,51";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,500";"36,49";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,600";"36,47";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,700";"36,46";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,800";"36,46";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"688,900";"36,43";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,000";"36,44";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,100";"36,40";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,200";"36,40";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,300";"36,39";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,400";"36,37";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,500";"36,34";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,600";"36,33";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,700";"36,33";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,800";"36,31";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"689,900";"36,29";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,000";"36,28";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,100";"36,24";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,200";"36,23";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,300";"36,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,400";"36,20";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,500";"36,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,600";"36,17";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,700";"36,15";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,800";"36,14";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"690,900";"36,12";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,000";"36,10";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,100";"36,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,200";"36,07";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,300";"36,06";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,400";"36,04";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,500";"36,03";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Hafen: Köln-Mülheim -Schutzhafen"
+"691,600";"36,01";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,700";"35,99";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,800";"35,97";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"691,900";"35,95";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,000";"35,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,100";"35,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,200";"35,89";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,300";"35,90";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,400";"35,88";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,500";"35,84";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,600";"35,82";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,700";"35,80";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,800";"35,78";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"692,900";"35,76";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,000";"35,74";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,100";"35,72";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,200";"35,71";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,300";"35,69";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,400";"35,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,500";"35,65";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,600";"35,63";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,700";"35,61";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,800";"35,59";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"693,900";"35,56";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,000";"35,57";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,100";"35,52";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,200";"35,49";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,300";"35,49";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,400";"35,45";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,500";"35,43";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,600";"35,41";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,700";"35,39";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,800";"35,37";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"694,900";"35,36";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,000";"35,34";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,100";"35,32";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,200";"35,30";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,300";"35,27";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,400";"35,26";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,500";"35,25";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,600";"35,24";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,700";"35,23";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,800";"35,22";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"695,900";"35,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,000";"35,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,100";"35,18";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,200";"35,17";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,300";"35,16";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,400";"35,15";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,500";"35,13";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,600";"35,11";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,700";"35,10";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,800";"35,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"696,900";"35,07";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,000";"35,06";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,100";"35,05";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,200";"35,03";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,300";"35,01";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,400";"34,99";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,500";"34,97";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,600";"34,94";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,700";"34,92";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,800";"34,90";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"697,900";"34,87";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,000";"34,85";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,100";"34,82";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,200";"34,80";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,300";"34,78";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,400";"34,76";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,500";"34,74";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,600";"34,72";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,700";"34,70";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,800";"34,68";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"698,900";"34,67";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,000";"34,65";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,100";"34,64";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Hafen: Köln-Niehl II -Ölhafen"
+"699,200";"34,63";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,300";"34,62";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,400";"34,60";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,500";"34,59";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,600";"34,58";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,700";"34,56";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,800";"34,57";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"699,900";"34,54";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,000";"34,53";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,100";"34,52";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,200";"34,51";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,300";"34,50";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,400";"34,48";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,500";"34,47";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,600";"34,45";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,700";"34,43";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,800";"34,41";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"700,900";"34,39";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,000";"34,37";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,100";"34,36";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,200";"34,34";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,300";"34,32";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,400";"34,30";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,500";"34,28";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,600";"34,26";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,700";"34,24";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,800";"34,21";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"701,900";"34,19";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,000";"34,16";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,100";"34,14";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,200";"34,12";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,300";"34,10";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,400";"34,09";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,500";"34,07";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,600";"34,05";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,700";"34,02";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,800";"34,00";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"702,900";"33,98";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"703,000";"33,95";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"703,100";"33,93";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"703,200";"33,90";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";""
+"703,300";"33,87";"1.060";"Q benutzerdefiniert (1060.0; 1090.0)";"Köln";"Zufluss: Wupper"
+"703,400";"33,92";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"703,500";"33,80";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"703,600";"33,78";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";"Geschiebemessstelle: Rheindorf"
+"703,700";"33,76";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"703,800";"33,74";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"703,900";"33,72";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,000";"33,70";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,100";"33,69";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,200";"33,67";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,300";"33,66";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,400";"33,64";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,500";"33,62";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,600";"33,60";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,700";"33,57";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,800";"33,55";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"704,900";"33,53";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,000";"33,50";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,100";"33,48";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,200";"33,46";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,300";"33,44";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";"Fähre: Hitdorf - Köln-Langel -Fahrzeug"
+"705,400";"33,42";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,500";"33,39";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,600";"33,37";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,700";"33,35";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,800";"33,32";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"705,900";"33,29";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,000";"33,27";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,100";"33,25";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,200";"33,22";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,300";"33,19";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,400";"33,16";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,500";"33,14";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,600";"33,11";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,700";"33,09";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,800";"33,06";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"706,900";"33,03";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,000";"33,01";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";"Hafen: Hitdorf"
+"707,100";"32,99";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,200";"32,97";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,300";"32,95";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,400";"32,93";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,500";"32,91";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,600";"32,88";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,700";"32,86";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,800";"32,84";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"707,900";"32,82";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,000";"32,79";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,100";"32,77";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,200";"32,75";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,300";"32,72";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,400";"32,69";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,500";"32,66";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,600";"32,64";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,700";"32,61";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,800";"32,59";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"708,900";"32,56";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,000";"32,54";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,100";"32,51";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,200";"32,50";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,300";"32,48";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,400";"32,46";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,500";"32,44";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,600";"32,42";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,700";"32,41";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,800";"32,40";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""
+"709,900";"32,38";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";"Hafen: Worringen"
+"710,000";"32,37";"1.090";"Q benutzerdefiniert (1060.0; 1090.0)";"außerh. d. Bez.pegels";""

http://dive4elements.wald.intevation.org